From 2e75c21e4bc31fabd33a27c0084aba73dc2017dc Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 6 Mar 2012 18:55:16 -0500 Subject: [PATCH 001/416] first commit --- README | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README diff --git a/README b/README new file mode 100644 index 00000000000..e69de29bb2d From bd4bda95d0791bdb76b9cfc0d4597eac805c5a92 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 6 Mar 2012 18:58:23 -0500 Subject: [PATCH 002/416] Check in files. --- README | 1 + _config.yml | 2 + _layouts/default.html | 58 +++++++++++++ _layouts/post.html | 7 ++ css/screen.css | 197 ++++++++++++++++++++++++++++++++++++++++++ css/syntax.css | 61 +++++++++++++ index.html | 15 ++++ 7 files changed, 341 insertions(+) create mode 100644 _config.yml create mode 100644 _layouts/default.html create mode 100644 _layouts/post.html create mode 100644 css/screen.css create mode 100644 css/syntax.css create mode 100644 index.html diff --git a/README b/README index e69de29bb2d..71b96db787b 100644 --- a/README +++ b/README @@ -0,0 +1 @@ +Github pages documentation for the ansible project diff --git a/_config.yml b/_config.yml new file mode 100644 index 00000000000..6d67c09ede6 --- /dev/null +++ b/_config.yml @@ -0,0 +1,2 @@ +markdown: rdiscount +pygments: true diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 00000000000..ce6eff04aeb --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,58 @@ + + + + + {{ page.title }} + + + + + + + + + + + + + + + + + + +
+ + + {{ content }} + + +
+ +Fork me on GitHub + + + + + + + diff --git a/_layouts/post.html b/_layouts/post.html new file mode 100644 index 00000000000..155e67bd38f --- /dev/null +++ b/_layouts/post.html @@ -0,0 +1,7 @@ +--- +layout: default +--- +
+{{ content }} +
+ diff --git a/css/screen.css b/css/screen.css new file mode 100644 index 00000000000..4574ea79c5c --- /dev/null +++ b/css/screen.css @@ -0,0 +1,197 @@ +/*****************************************************************************/ +/* +/* Common +/* +/*****************************************************************************/ + +/* Global Reset */ + +* { + margin: 0; + padding: 0; +} + +html, body { + height: 100%; +} + +body { + background-color: white; + font: 13.34px helvetica, arial, clean, sans-serif; + *font-size: small; + text-align: center; +} + +h1, h2, h3, h4, h5, h6 { + font-size: 100%; +} + +h1 { + margin-bottom: 1em; +} + +p { + margin: 1em 0; +} + +a { + color: #00a; +} + +a:hover { + color: black; +} + +a:visited { + color: #a0a; +} + +table { + font-size: inherit; + font: 100%; +} + +/*****************************************************************************/ +/* +/* Home +/* +/*****************************************************************************/ + +ul.posts { + list-style-type: none; + margin-bottom: 2em; +} + + ul.posts li { + line-height: 1.75em; + } + + ul.posts span { + color: #aaa; + font-family: Monaco, "Courier New", monospace; + font-size: 80%; + } + +/*****************************************************************************/ +/* +/* Site +/* +/*****************************************************************************/ + +.site { + font-size: 110%; + text-align: justify; + width: 40em; + margin: 3em auto 2em auto; + line-height: 1.5em; +} + +.title { + color: #a00; + font-weight: bold; + margin-bottom: 2em; +} + + .site .title a { + color: #a00; + text-decoration: none; + } + + .site .title a:hover { + color: black; + } + + .site .title a.extra { + color: #aaa; + text-decoration: none; + margin-left: 1em; + } + + .site .title a.extra:hover { + color: black; + } + + .site .meta { + color: #aaa; + } + + .site .footer { + font-size: 80%; + color: #666; + border-top: 4px solid #eee; + margin-top: 2em; + overflow: hidden; + } + + .site .footer .contact { + float: left; + margin-right: 3em; + } + + .site .footer .contact a { + color: #8085C1; + } + + .site .footer .rss { + margin-top: 1.1em; + margin-right: -.2em; + float: right; + } + + .site .footer .rss img { + border: 0; + } + +/*****************************************************************************/ +/* +/* Posts +/* +/*****************************************************************************/ + +#post { + +} + + /* standard */ + + #post pre { + border: 1px solid #ddd; + background-color: #eef; + padding: 0 .4em; + } + + #post ul, + #post ol { + margin-left: 1.35em; + } + + #post code { + border: 1px solid #ddd; + background-color: #eef; + font-size: 85%; + padding: 0 .2em; + } + + #post pre code { + border: none; + } + + /* terminal */ + + #post pre.terminal { + border: 1px solid black; + background-color: #333; + color: white; + } + + #post pre.terminal code { + background-color: #333; + } + +#related { + margin-top: 2em; +} + + #related h2 { + margin-bottom: 1em; + } diff --git a/css/syntax.css b/css/syntax.css new file mode 100644 index 00000000000..e98afc152f9 --- /dev/null +++ b/css/syntax.css @@ -0,0 +1,61 @@ +.highlight { background: #ffffff; } +.highlight .c { color: #999988; font-style: italic } /* Comment */ +.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +.highlight .k { font-weight: bold } /* Keyword */ +.highlight .o { font-weight: bold } /* Operator */ +.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */ +.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ +.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ +.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #aa0000 } /* Generic.Error */ +.highlight .gh { color: #999999 } /* Generic.Heading */ +.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ +.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */ +.highlight .go { color: #888888 } /* Generic.Output */ +.highlight .gp { color: #555555 } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #aaaaaa } /* Generic.Subheading */ +.highlight .gt { color: #aa0000 } /* Generic.Traceback */ +.highlight .kc { font-weight: bold } /* Keyword.Constant */ +.highlight .kd { font-weight: bold } /* Keyword.Declaration */ +.highlight .kp { font-weight: bold } /* Keyword.Pseudo */ +.highlight .kr { font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */ +.highlight .m { color: #009999 } /* Literal.Number */ +.highlight .s { color: #d14 } /* Literal.String */ +.highlight .na { color: #008080 } /* Name.Attribute */ +.highlight .nb { color: #0086B3 } /* Name.Builtin */ +.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */ +.highlight .no { color: #008080 } /* Name.Constant */ +.highlight .ni { color: #800080 } /* Name.Entity */ +.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */ +.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */ +.highlight .nn { color: #555555 } /* Name.Namespace */ +.highlight .nt { color: #000080 } /* Name.Tag */ +.highlight .nv { color: #008080 } /* Name.Variable */ +.highlight .ow { font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mf { color: #009999 } /* Literal.Number.Float */ +.highlight .mh { color: #009999 } /* Literal.Number.Hex */ +.highlight .mi { color: #009999 } /* Literal.Number.Integer */ +.highlight .mo { color: #009999 } /* Literal.Number.Oct */ +.highlight .sb { color: #d14 } /* Literal.String.Backtick */ +.highlight .sc { color: #d14 } /* Literal.String.Char */ +.highlight .sd { color: #d14 } /* Literal.String.Doc */ +.highlight .s2 { color: #d14 } /* Literal.String.Double */ +.highlight .se { color: #d14 } /* Literal.String.Escape */ +.highlight .sh { color: #d14 } /* Literal.String.Heredoc */ +.highlight .si { color: #d14 } /* Literal.String.Interpol */ +.highlight .sx { color: #d14 } /* Literal.String.Other */ +.highlight .sr { color: #009926 } /* Literal.String.Regex */ +.highlight .s1 { color: #d14 } /* Literal.String.Single */ +.highlight .ss { color: #990073 } /* Literal.String.Symbol */ +.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #008080 } /* Name.Variable.Class */ +.highlight .vg { color: #008080 } /* Name.Variable.Global */ +.highlight .vi { color: #008080 } /* Name.Variable.Instance */ +.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */ + diff --git a/index.html b/index.html new file mode 100644 index 00000000000..02efe6d3f78 --- /dev/null +++ b/index.html @@ -0,0 +1,15 @@ +--- +layout: default +title: Ansible - Multi-node SSH Command & Control +--- + +
+ +

About Ansible

+ + +
From eadd5644b0e40137dd7e4b8726382695681117f3 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 6 Mar 2012 18:59:33 -0500 Subject: [PATCH 003/416] Fix project name from where I copied it from :) --- _layouts/default.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_layouts/default.html b/_layouts/default.html index ce6eff04aeb..da6c5140a9f 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -3,7 +3,7 @@ {{ page.title }} - + @@ -25,7 +25,7 @@ var WRInitTime=(new Date()).getTime();
{{ content }} From 7e0ff815b9ebcf3a2c931a30daf5cf8657c2416f Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 6 Mar 2012 19:00:52 -0500 Subject: [PATCH 004/416] Do I have to change something here to trigger a rebuild? --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 02efe6d3f78..39457113a1c 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ title: Ansible - Multi-node SSH Command & Control

About Ansible

From 5e453555e365014d3c6ed016aa0434399b80ec9f Mon Sep 17 00:00:00 2001 From: Tim Bielawa Date: Wed, 7 Mar 2012 11:35:18 -0500 Subject: [PATCH 005/416] Let me upgrade your docs --- .gitignore | 6 + .gitmodules | 3 + Makefile | 28 + _config.yml | 2 - _layouts/default.html | 58 - _layouts/post.html | 7 - ansible | 1 + build-site.py | 83 ++ conf.py | 200 ++++ html/.buildinfo | 4 + html/YAMLScripts.html | 188 ++++ html/_modules/index.html | 95 ++ html/_modules/taboot/output.html | 618 +++++++++++ html/_modules/taboot/runner.html | 369 +++++++ html/_modules/taboot/tasks.html | 263 +++++ html/_modules/taboot/tasks/command.html | 129 +++ html/_modules/taboot/tasks/mod_jk.html | 190 ++++ html/_modules/taboot/tasks/nagios.html | 284 +++++ html/_modules/taboot/tasks/poller.html | 149 +++ html/_modules/taboot/tasks/puppet.html | 196 ++++ html/_modules/taboot/tasks/rpm.html | 189 ++++ html/_modules/taboot/tasks/service.html | 149 +++ html/_modules/taboot/tasks/sleep.html | 181 ++++ html/_modules/taboot/tasks/yum.html | 166 +++ html/_sources/YAMLScripts.txt | 82 ++ html/_sources/api.txt | 55 + html/_sources/code.txt | 78 ++ html/_sources/communicate.txt | 55 + html/_sources/development.txt | 98 ++ html/_sources/examples.txt | 71 ++ html/_sources/gettingstarted.txt | 67 ++ html/_sources/index.txt | 89 ++ html/_sources/install.txt | 56 + html/_sources/man.txt | 16 + html/_sources/modules.txt | 55 + html/_sources/patterns.txt | 55 + html/_sources/playbooks.txt | 55 + html/_sources/tasks.txt | 16 + html/_static/basic.css | 528 +++++++++ html/_static/default.css | 256 +++++ html/_static/doctools.js | 247 +++++ html/_static/file.png | Bin 0 -> 392 bytes html/_static/jquery.js | 154 +++ html/_static/minus.png | Bin 0 -> 199 bytes html/_static/plus.png | Bin 0 -> 199 bytes html/_static/pygments.css | 62 ++ html/_static/searchtools.js | 518 +++++++++ html/_static/sidebar.js | 148 +++ html/_static/underscore.js | 16 + html/api.html | 158 +++ html/code.html | 853 +++++++++++++++ html/communicate.html | 158 +++ html/development.html | 216 ++++ html/examples.html | 185 ++++ html/genindex.html | 91 ++ html/gettingstarted.html | 177 +++ html/index.html | 204 ++++ html/install.html | 158 +++ html/man.html | 118 ++ html/man/ansible-modules.5.html | 81 ++ html/man/ansible-playbook.5.html | 36 + html/man/ansible.1.html | 30 + html/modules.html | 158 +++ html/objects.inv | Bin 0 -> 222 bytes html/patterns.html | 158 +++ html/playbooks.html | 158 +++ html/py-modindex.html | 169 +++ html/search.html | 97 ++ html/searchindex.js | 1 + html/tasks.html | 1304 +++++++++++++++++++++++ rst/YAMLScripts.rst | 82 ++ rst/api.rst | 55 + rst/communicate.rst | 55 + rst/examples.rst | 71 ++ rst/gettingstarted.rst | 67 ++ rst/index.rst | 89 ++ rst/man.rst | 16 + rst/modules.rst | 55 + rst/patterns.rst | 55 + rst/playbooks.rst | 55 + 80 files changed, 11378 insertions(+), 67 deletions(-) create mode 100644 .gitignore create mode 100644 .gitmodules create mode 100644 Makefile delete mode 100644 _config.yml delete mode 100644 _layouts/default.html delete mode 100644 _layouts/post.html create mode 160000 ansible create mode 100755 build-site.py create mode 100644 conf.py create mode 100644 html/.buildinfo create mode 100644 html/YAMLScripts.html create mode 100644 html/_modules/index.html create mode 100644 html/_modules/taboot/output.html create mode 100644 html/_modules/taboot/runner.html create mode 100644 html/_modules/taboot/tasks.html create mode 100644 html/_modules/taboot/tasks/command.html create mode 100644 html/_modules/taboot/tasks/mod_jk.html create mode 100644 html/_modules/taboot/tasks/nagios.html create mode 100644 html/_modules/taboot/tasks/poller.html create mode 100644 html/_modules/taboot/tasks/puppet.html create mode 100644 html/_modules/taboot/tasks/rpm.html create mode 100644 html/_modules/taboot/tasks/service.html create mode 100644 html/_modules/taboot/tasks/sleep.html create mode 100644 html/_modules/taboot/tasks/yum.html create mode 100644 html/_sources/YAMLScripts.txt create mode 100644 html/_sources/api.txt create mode 100644 html/_sources/code.txt create mode 100644 html/_sources/communicate.txt create mode 100644 html/_sources/development.txt create mode 100644 html/_sources/examples.txt create mode 100644 html/_sources/gettingstarted.txt create mode 100644 html/_sources/index.txt create mode 100644 html/_sources/install.txt create mode 100644 html/_sources/man.txt create mode 100644 html/_sources/modules.txt create mode 100644 html/_sources/patterns.txt create mode 100644 html/_sources/playbooks.txt create mode 100644 html/_sources/tasks.txt create mode 100644 html/_static/basic.css create mode 100644 html/_static/default.css create mode 100644 html/_static/doctools.js create mode 100644 html/_static/file.png create mode 100644 html/_static/jquery.js create mode 100644 html/_static/minus.png create mode 100644 html/_static/plus.png create mode 100644 html/_static/pygments.css create mode 100644 html/_static/searchtools.js create mode 100644 html/_static/sidebar.js create mode 100644 html/_static/underscore.js create mode 100644 html/api.html create mode 100644 html/code.html create mode 100644 html/communicate.html create mode 100644 html/development.html create mode 100644 html/examples.html create mode 100644 html/genindex.html create mode 100644 html/gettingstarted.html create mode 100644 html/index.html create mode 100644 html/install.html create mode 100644 html/man.html create mode 100644 html/man/ansible-modules.5.html create mode 100644 html/man/ansible-playbook.5.html create mode 100644 html/man/ansible.1.html create mode 100644 html/modules.html create mode 100644 html/objects.inv create mode 100644 html/patterns.html create mode 100644 html/playbooks.html create mode 100644 html/py-modindex.html create mode 100644 html/search.html create mode 100644 html/searchindex.js create mode 100644 html/tasks.html create mode 100644 rst/YAMLScripts.rst create mode 100644 rst/api.rst create mode 100644 rst/communicate.rst create mode 100644 rst/examples.rst create mode 100644 rst/gettingstarted.rst create mode 100644 rst/index.rst create mode 100644 rst/man.rst create mode 100644 rst/modules.rst create mode 100644 rst/patterns.rst create mode 100644 rst/playbooks.rst diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000000..d53b672c222 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +*.py[co] +build +# Emacs backup files... +*~ +.\#* +.doctrees diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000000..f3814032abf --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "ansible"] + path = ansible + url = git://github.com/ansible/ansible.git diff --git a/Makefile b/Makefile new file mode 100644 index 00000000000..6f59a6dde81 --- /dev/null +++ b/Makefile @@ -0,0 +1,28 @@ +#!/usr/bin/make +ASCII2HTMLMAN = a2x -D html/man/ -d manpage -f xhtml +SITELIB = $(shell python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()") + +all: clean docs + +docs: htmlman htmldocs + +htmlman: + mkdir -p html/man + $(ASCII2HTMLMAN) ansible/docs/man/man1/ansible.1.asciidoc + $(ASCII2HTMLMAN) ansible/docs/man/man5/ansible-modules.5.asciidoc + $(ASCII2HTMLMAN) ansible/docs/man/man5/ansible-playbook.5.asciidoc + +htmldocs: + ./build-site.py + +clean: + @echo "Cleaning up byte compiled python stuff" + find . -regex ".*\.py[co]$$" -delete + @echo "Cleaning up editor backup files" + find . -type f \( -name "*~" -or -name "#*" \) -delete + find . -type f \( -name "*.swp" \) -delete + +.PHONEY: docs manual clean +vpath %.asciidoc docs/man/man1 + + diff --git a/_config.yml b/_config.yml deleted file mode 100644 index 6d67c09ede6..00000000000 --- a/_config.yml +++ /dev/null @@ -1,2 +0,0 @@ -markdown: rdiscount -pygments: true diff --git a/_layouts/default.html b/_layouts/default.html deleted file mode 100644 index da6c5140a9f..00000000000 --- a/_layouts/default.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - {{ page.title }} - - - - - - - - - - - - - - - - - - -
- - - {{ content }} - - -
- -Fork me on GitHub - - - - - - - diff --git a/_layouts/post.html b/_layouts/post.html deleted file mode 100644 index 155e67bd38f..00000000000 --- a/_layouts/post.html +++ /dev/null @@ -1,7 +0,0 @@ ---- -layout: default ---- -
-{{ content }} -
- diff --git a/ansible b/ansible new file mode 160000 index 00000000000..8e20ed3714b --- /dev/null +++ b/ansible @@ -0,0 +1 @@ +Subproject commit 8e20ed3714b7a43279ecfd38a7812b28e1533f03 diff --git a/build-site.py b/build-site.py new file mode 100755 index 00000000000..25c5d22807e --- /dev/null +++ b/build-site.py @@ -0,0 +1,83 @@ +#!/usr/bin/env python +# (c) 2012, Michael DeHaan +# +# This file is part of the Ansible Documentation +# +# Ansible is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Ansible is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Ansible. If not, see . + +__docformat__ = 'restructuredtext' + +import os +import sys +from sphinx.application import Sphinx +from os import path + + +class SphinxBuilder(object): + """ + Creates HTML documentation using Sphinx. + """ + + def __init__(self): + """ + Run the DocCommand. + """ + print "Creating html documentation ..." + + try: + buildername = 'html' + + outdir = path.abspath(path.join('html')) + # Create the output directory if it doesn't exist + if not os.access(outdir, os.F_OK): + os.mkdir(outdir) + + doctreedir = os.path.join('./', '.doctrees') + + confdir = path.abspath('./') + srcdir = path.abspath('rst') + freshenv = False + + # Create the builder + app = Sphinx(srcdir, + confdir, + outdir, + doctreedir, + buildername, + {}, + sys.stdout, + sys.stderr, + freshenv) + + app.builder.build_all() + # We also have the HTML man pages to handle now as well + #if os.system("make htmlman"): + # print "There was an error while building the HTML man pages." + # print "Run 'make htmlman' to recreate the problem." + #print "Your docs are now in %s" % outdir + except ImportError, ie: + print >> sys.stderr, "You don't seem to have the following which" + print >> sys.stderr, "are required to make documentation:" + print >> sys.stderr, "\tsphinx.application.Sphinx" + print >> sys.stderr, "This is usually available from the python-sphinx package" + except Exception, ex: + print >> sys.stderr, "FAIL! exiting ... (%s)" % ex + + def build_docs(self): + self.app.builder.build_all() + + +if __name__ == '__main__': + docgen = SphinxBuilder() +# docgen.build_docs() diff --git a/conf.py b/conf.py new file mode 100644 index 00000000000..95a65dc7075 --- /dev/null +++ b/conf.py @@ -0,0 +1,200 @@ +# -*- coding: utf-8 -*- +# +# documentation build configuration file, created by +# sphinx-quickstart on Sat Sep 27 13:23:22 2008-2009. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# The contents of this file are pickled, so don't put values in the namespace +# that aren't pickleable (module imports are okay, they're removed +# automatically). +# +# All configuration values have a default value; values that are commented out +# serve to show the default value. + +import sys +import os + +# If your extensions are in another directory, add it here. If the directory +# is relative to the documentation root, use os.path.abspath to make it +# absolute, like shown here. +#sys.path.append(os.path.abspath('some/directory')) + +sys.path.insert(0, os.path.join('ansible', 'lib')) + +from ansible import __version__, __author__ + + +# General configuration +# --------------------- + +# Add any Sphinx extension module names here, as strings. +# They can be extensions +# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +extensions = ['sphinx.ext.autodoc'] + +# Later on, add 'sphinx.ext.viewcode' to the list if you want to have +# colorized code generated too for references. + + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['.templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# General substitutions. +project = 'Ansible' +copyright = "2012 Michael DeHaan" + +# The default replacements for |version| and |release|, also used in various +# other places throughout the built documents. +# +# The short X.Y version. +version = __version__ +# The full version, including alpha/beta/rc tags. +release = __version__ + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +today_fmt = '%B %d, %Y' + +# List of documents that shouldn't be included in the build. +#unused_docs = [] + +# List of directories, relative to source directories, that shouldn't be +# searched for source files. +#exclude_dirs = [] + +# A list of glob-style patterns that should be excluded when looking +# for source files. +#exclude_patterns = ['elements', 'tasks', 'tests.rst'] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + + +# Options for HTML output +# ----------------------- + +# The style sheet to use for HTML and HTML Help pages. A file of that name +# must exist either in Sphinx' static/ path, or in one of the custom paths +# given in html_static_path. +html_style = 'default.css' + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (within the static path) to place at the top of +# the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +#html_static_path = ['.static'] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_use_modindex = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, the reST sources are included in the HTML build as _sources/. +#html_copy_source = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = '' + +# Output file base name for HTML help builder. +htmlhelp_basename = 'Poseidodoc' + + +# Options for LaTeX output +# ------------------------ + +# The paper size ('letter' or 'a4'). +#latex_paper_size = 'letter' + +# The font size ('10pt', '11pt' or '12pt'). +#latex_font_size = '10pt' + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, document class +# [howto/manual]). +latex_documents = [ + ('index', 'ansible.tex', 'Ansible Documentation', + __author__, 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# Additional stuff for the LaTeX preamble. +#latex_preamble = '' + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_use_modindex = True + +autoclass_content = 'both' diff --git a/html/.buildinfo b/html/.buildinfo new file mode 100644 index 00000000000..0885fbe1fb7 --- /dev/null +++ b/html/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: +tags: diff --git a/html/YAMLScripts.html b/html/YAMLScripts.html new file mode 100644 index 00000000000..1d0df432806 --- /dev/null +++ b/html/YAMLScripts.html @@ -0,0 +1,188 @@ + + + + + + + + + YAML Scripts — Ansible v0.0.1 documentation + + + + + + + + + + + + + +
+
+
+
+ +
+

YAML Scripts

+

This page provides a basic overview of correct YAML syntax.

+
+

YAML Basics

+

For ansible, every YAML script must be a list at it’s root-most +element. Each item in the list is a dictionary. These dictionaries +represent all the options you can use to write a ansible script. In +addition, all YAML files (regardless of their association with +ansible or not) should start with ---.

+

In YAML a list can be represented in two ways. In one way all members +of a list are lines beginning at the same indentation level starting +with a - character:

+
---
+# A list of tasty fruits
+- Apple
+- Orange
+- Strawberry
+- Mango
+
+

In the second way a list is represented as comma separated elements +surrounded by square brackets. Newlines are permitted between +elements:

+
---
+# A list of tasty fruits
+[apple, orange, banana, mango]
+
+

A dictionary is represented in a simple key: and value form:

+
---
+# An employee record
+name: John Eckersberg
+job: Developer
+skill: Elite
+
+

Like lists, dictionaries can be represented in an abbreviated form:

+
---
+# An employee record
+{name: John Eckersberg, job: Developer, skill: Elite}
+
+

You can specify a boolean value (true/false) in several forms:

+
---
+knows_oop: True
+likes_emacs: TRUE
+uses_cvs: false
+
+

Finally, you can combine these data structures:

+
---
+# An employee record
+name: John Eckersberg
+job: Developer
+skill: Elite
+employed: True
+foods:
+    - Apple
+    - Orange
+    - Strawberry
+    - Mango
+languages:
+    ruby: Elite
+    python: Elite
+    dotnet: Lame
+
+

That’s all you really need to know about YAML to get started writing +Ansible scripts.

+
+

See also

+
+
YAMLLint
+
YAML Lint gets the lint out of your YAML
+
+
+
+
+ + +
+
+
+
+
+

Table Of Contents

+ + +

Previous topic

+

Getting Started

+

Next topic

+

Patterns

+

This Page

+ + + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/index.html b/html/_modules/index.html new file mode 100644 index 00000000000..b75db85e085 --- /dev/null +++ b/html/_modules/index.html @@ -0,0 +1,95 @@ + + + + + + + + + Overview: module code — Taboot v0.4.0 documentation + + + + + + + + + + + +
+ +
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/output.html b/html/_modules/taboot/output.html new file mode 100644 index 00000000000..01fd043c44e --- /dev/null +++ b/html/_modules/taboot/output.html @@ -0,0 +1,618 @@ + + + + + + + + + taboot.output — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.output

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009,2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks.puppet import PuppetTaskResult
+from taboot.tasks.rpm import RPMTaskResult
+import re
+
+
+class _FileLikeOutputObject(object):
+    """
+    A file-like parent class.
+    """
+
+    import exceptions
+    import time as _time
+    defaults = None
+    starttime = None
+
+    def __init__(self, *args, **kwargs):
+        """
+        Creates an instance of a file-like object.
+
+        :Parameters:
+           - `args`: all non-keyword arguments.
+           - `kwargs`: all keyword arguments.
+        """
+        import ConfigParser
+        import os.path
+
+        if _FileLikeOutputObject.defaults is None:
+            if os.path.expanduser("~/.taboot.conf"):
+                _FileLikeOutputObject.defaults = ConfigParser.ConfigParser()
+                _FileLikeOutputObject.defaults.read(
+                    os.path.expanduser("~/.taboot.conf"))
+
+        # Only set the start time once, not for each logger instance
+        if _FileLikeOutputObject.starttime is None:
+            import datetime
+            _FileLikeOutputObject.starttime = datetime.datetime.today()
+
+        self._pos = 0L
+        self._closed = False
+        self._setup(*args, **kwargs)
+
+    def _setup(self, *args, **kwargs):
+        """
+        Implementation specific setup.
+
+        :Parameters:
+           - `args`: all non-keyword arguments.
+           - `kwargs`: all keyword arguments.
+        """
+        pass
+
+    def flush(self):
+        """
+        We are not buffering so we always just return None.
+        """
+        return None
+
+    def read(self, *args, **kwargs):
+        """
+        We are an output only file-like object. Raise exception.
+
+        :Parameters:
+           - `args`: all non-keyword arguments.
+           - `kwargs`: all keyword arguments.
+        """
+        raise self.exceptions.NotImplementedError('Object for output only.')
+
+    def tell(self):
+        """
+        Returns the position of the file-like object.
+        """
+        return self._pos
+
+    def truncate(self, size):
+        """
+        We are an output only file-like object. Raise exception.
+
+        :Parameters:
+           - `size`: size to truncate to.
+        """
+        raise self.exceptions.NotImplementedError(
+            'This does not support truncate.')
+
+    def writelines(self, sequence):
+        """
+        Writes a sequence of lines.
+
+        :Parameters:
+           - `sequence`: iterable sequence of data to write.
+        """
+        for item in sequence:
+            self.write(item)
+
+    def write(self, item):
+        """
+        Writer wrapper (not rapper, beav). Simply calls _write which is
+        implementation specific and updates the position.
+
+        :Parameters:
+           - `item`: the item to write.
+        """
+        self._write(item)
+        self._pos += 1
+
+    def _write(self, item):
+        """
+        Implementation of writing data.
+
+        :Parameters:
+           - `item`: the item to write.
+        """
+        raise self.exceptions.NotImplementedError(
+            '_write must be overriden.')
+
+    def close(self):
+        """
+        Close wrapper (again, not rapper, beav). Simply calls _close  which
+        is implementation specific and updates the closed property.
+        """
+        self._close()
+        self._closed = True
+
+    def _close(self):
+        """
+        Implementation of closing the file-like object.
+        By default nothing occurs.
+        """
+        pass
+
+    # Read aliases
+    readline = read
+    readlines = read
+    xreadlines = read
+    seek = read
+
+    # Read-only Properties
+    closed = property(lambda self: self._closed)
+    timestamp = property(lambda self: self._time.strftime(
+            "%Y-%m-%d %H:%M:%S", self._time.localtime()))
+
+
+
[docs]class CLIOutput(_FileLikeOutputObject): + """ + Output a :class:`taboot.tasks.TaskResult` to the command line + with pretty formatting and colors. + """ + + def _setup(self, host, task): + """ + Implementation specific setup for outputting to the CLI. + + :Parameters: + - `host`: name of the host + - `task`: name of the task + """ + import Colors + import sys + self._c = Colors.Colors() + self._sys = sys + self._sys.stdout.write('%s:\n' % ( + self._c.format_string(host, 'blue'))) + self._sys.stdout.write('%s Starting Task[%s]\n' % ( + self.timestamp, self._c.format_string(task, 'white'))) + + def _write(self, result): + """ + Implementation of writing to the CLI. + + :Parameters: + - `result`: result object to inspect and write + """ + import types + + # Set output color + output_color = 'red' + if result.success: + output_color = 'green' + + self._sys.stdout.write("%s:\n" % ( + self._c.format_string(result.host, 'blue'))) + self._sys.stdout.write("%s Finished Task[%s]:\n" % ( + self.timestamp, self._c.format_string( + result.task, output_color))) + + if isinstance(result, PuppetTaskResult): + # If result is an instance of PuppetTaskResult, + # colorize the puppet output + lines = result.output.splitlines() + for line in lines: + if re.match('info:', line): + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'green')) + elif re.match('notice:', line): + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'blue')) + elif re.match('warning:', line): + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'yellow')) + elif re.match('err:', line): + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'red')) + else: + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'normal')) + elif isinstance(result, RPMTaskResult): + # If result is an instance of RPMTaskResult, + # colorize the rpm.PostManifest output + lines = result.output.splitlines() + for line in lines: + if line.startswith('-'): + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'red')) + elif line.startswith('+'): + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'green')) + else: + self._sys.stdout.write("%s\n" % self._c.format_string( + line.strip(), 'normal')) + else: + # Use standard pass/fall coloring for output + if isinstance(result.output, types.ListType): + for r in result.output: + self._sys.stdout.write("%s\n" % self._c.format_string( + r.strip(), output_color)) + else: + self._sys.stdout.write("%s\n" % self._c.format_string( + result.output.strip(), output_color)) + +
+
[docs]class LogOutput(_FileLikeOutputObject): + """ + Output a :class:`taboot.tasks.TaskResult` to a logfile. + """ + + def _setup(self, host, task, logfile='taboot.log'): + """ + Implementation specific setup for outputting to a log. + + :Parameters: + - `logfile`: name of the logfile to write to. + """ + self._logfile = logfile + if self._logfile in ('-', 'stdout', '1'): + import sys + self._log_fd = sys.stdout + else: + self._log_fd = open(logfile, 'a') + self._log_fd.write('%s:\n%s Starting Task[%s]\n\n' % ( + host, self.timestamp, task)) + + def _write(self, result): + """ + Implementation of writing to a log. + + :Parameters: + - `result`: result object to inspect and write + """ + import types + + if result.success: + success_str = 'OK' + else: + success_str = 'FAIL' + + self._log_fd.write("%s:\n%s Finished Task[%s]: %s\n" % ( + result.host, self.timestamp, result.task, success_str)) + + if isinstance(result.output, types.ListType): + for r in result.output: + self._log_fd.write("%s\n\n" % r.strip()) + else: + self._log_fd.write("%s\n\n" % result.output.strip()) + +
+
[docs]class EmailOutput(_FileLikeOutputObject): + """ + Output a :class:`taboot.tasks.TaskResult` to a logfile. + """ + + def _setup(self, to_addr, from_addr='taboot@redhat.com'): + """ + Implementation specific setup for outputting to a log. + + :Parameters: + - `to_addr`: who to send the email to. + - `from_addr`: who the email is from. + """ + try: + import cStringIO as StringIO + except ImportError, ie: + import StringIO + self._to_addr = to_addr + self._from_addr = from_addr + self._buffer = StringIO.StringIO() + + def _write(self, result): + """ + Implementation of writing out to an email. + + :Parameters: + - `result`: result object to inspect and write + """ + if result.success: + success_str = 'OK' + else: + success_str = 'FAIL' + + self._buffer.write("%s: %s" % (task_result.task, success_str)) + +
[docs] def flush(self): + """ + Flushing sends the email with the buffer. + """ + import smtplib + from email.mime.text import MIMEText + + self._buffer.flush() + msg = self.MIMEText(self._buffer.read()) + msg['Subject'] = task_result.host + msg['From'] = self._from_addr + msg['To'] = self._to_addr + + smtp = self.smtplib.SMTP() + smtp.connect() + smtp.sendmail(self._from_addr, [self._to_addr], msg.as_string()) + smtp.close() +
+ def __del__(self): + """ + If the buffer is not empty before destroying, flush. + """ + if self._buffer.pos < self._buffer.len: + self.flush() + +
+
[docs]class HTMLOutput(_FileLikeOutputObject): + """ + Output a :class:`taboot.tasks.TaskResult` to the command line + with pretty formatting and colors. + + .. document private functions + .. automethod:: _write + """ + + logfile_path = None + + def _expand_starttime(self, param): + """ + Expand any instances of "%s" in `param` + """ + if '%s' in param: + p = param % HTMLOutput.starttime + return p.replace(" ", "-") + else: + return param + + def _setup(self, host, task, logfile="taboot-%s.html", destdir="."): + """ + Implementation specific setup for outputting to an HTML file. + + :Parameters: + - `host`: name of the host + - `task`: name of the task + - `logfile`: name of the file to log to, '%s' is substituted + with a datestamp + - `destdir`: directory in which to save the log file to + """ + import Colors + import sys + import os.path + import os + + _default_logfile = "taboot-%s.html" + _default_destdir = "." + + # Pick if the parameter is changed + # Pick if above is false and logfile is set in defaults + # Else, use parameter + if not logfile == _default_logfile: + _logfile = logfile + elif HTMLOutput.defaults is not None and \ + HTMLOutput.defaults.has_option("HTMLOutput", "logfile"): + _logfile = HTMLOutput.defaults.get("HTMLOutput", "logfile") + else: + _logfile = logfile + + # Expand %s into a time stamp if necessary + _logfile = self._expand_starttime(_logfile) + + if not destdir == _default_destdir: + _destdir = destdir + elif HTMLOutput.defaults is not None and \ + HTMLOutput.defaults.has_option("HTMLOutput", "destdir"): + _destdir = HTMLOutput.defaults.get("HTMLOutput", "destdir") + else: + _destdir = destdir + + # Figured it all out, now we join them together! + self._logfile_path = os.path.join(_destdir, _logfile) + if not os.path.exists(_destdir): + os.makedirs(_destdir, 0755) + + self._c = Colors.HTMLColors() + self._log_fd = open(self._logfile_path, 'a') + + # Lets only print this when it is set or changed + if HTMLOutput.logfile_path is None or \ + not HTMLOutput.logfile_path == self._logfile_path: + sys.stderr.write("Logging HTML Output to %s\n" % \ + self._logfile_path) + HTMLOutput.logfile_path = self._logfile_path + sys.stderr.flush() + + # Log the start of this task + name = self._fmt_anchor(self._fmt_hostname(host)) + start_msg = """<p><tt>%s:</tt></p> +<p><tt>%s Starting Task[%s]\n</tt>""" % (name, self.timestamp, task) + self._log_fd.write(start_msg) + self._log_fd.flush() + + def _fmt_anchor(self, text): + """ + Format an #anchor and a clickable link to it + """ + h = hash(self.timestamp) + anchor_str = "<a name='%s' href='#%s'>%s</a>" % (h, h, text) + return anchor_str + + def _fmt_hostname(self, n): + """ + Standardize the hostname formatting + """ + return "<b>%s</b>" % self._c.format_string(n, 'blue') + +
[docs] def _write(self, result): + """ + Write a tasks `result` out to HTML. Handles enhanced stylizing + for task results that support such as: + + - :py:mod:`taboot.tasks.puppet.PuppetTaskResult` + - :py:mod:`taboot.tasks.rpm.RPMTaskResult` + """ + import types + import sys + import cgi + + name = self._fmt_hostname(result.host) + + # escape any html in result.output + result.output = cgi.escape(result.output) + + if result.success: + success_str = self._c.format_string('<b>OK</b>', 'green') + else: + success_str = self._c.format_string('<b>FAIL</b>', 'red') + + self._log_fd.write("<p><tt>%s:\n</tt></p>\n<p><tt>%s "\ + "Finished Task[%s]: %s</tt></p>\n" % + (name, self.timestamp, result.task, success_str)) + + if isinstance(result, PuppetTaskResult): + # If result is an instance of PuppetTaskResult, + # colorize the puppet output + lines = result.output.splitlines() + for line in lines: + if re.match('info:', line): + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'green')) + elif re.match('notice:', line): + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'blue')) + elif re.match('warning:', line): + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'yellow')) + elif re.match('err:', line): + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'red')) + else: + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'normal')) + self._log_fd.write("<br /><br />\n") + elif isinstance(result, RPMTaskResult): + # If result is an instance of RPMTaskResult, + # colorize the rpm.PostManifest output + lines = result.output.splitlines() + for line in lines: + if line.startswith('-'): + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'red')) + elif line.startswith('+'): + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'green')) + else: + self._log_fd.write("%s<br />\n" % + self._c.format_string(line.strip(), + 'normal')) + self._log_fd.write("<br /><br />\n") + else: + # Use standard pass/fall coloring for output + if isinstance(result.output, types.ListType): + for r in result.output: + self._log_fd.write("<pre>%s</pre>\n<br /><br />\n" % + r.strip()) + else: + self._log_fd.write("<pre>%s</pre>\n<br /><br />\n" % + result.output.strip()) + + self._log_fd.flush()
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/runner.html b/html/_modules/taboot/runner.html new file mode 100644 index 00000000000..1cf85daf48d --- /dev/null +++ b/html/_modules/taboot/runner.html @@ -0,0 +1,369 @@ + + + + + + + + + taboot.runner — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.runner

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009-2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+import threading
+from taboot.util import instantiator
+from log import *
+
+
+
[docs]class Runner(object): + """ + The Runner, responsible for running a taboot job. + """ + + import threading + import taboot.output + + def __init__(self, script, config, expand_globs=True): + """ + :Parameters: + - `script`: an instance of tabootScript + + - `expand_globs`: whether to expand the globs or just leave + them as is. + """ + self._config = config + self._hosts = script.getHosts() + self._tasks = script.getTaskTypes() + self._output = script.getOutputTypes() + self._task_q = [] + self._fail_event = self.threading.Event() + + if expand_globs: + self._hosts = self._expand_globs() + log_debug("Will operate on %s host(s).", len(self._hosts)) + + # Prefight threading + self._preflight_tasks = script.getPreflightTypes() + self._preflight_semaphore = self.threading.Semaphore( + len(self._hosts)) + self._preflight_tasks_q = [] + + # Main task-body threading + if script.getConcurrency() == "all": + self._concurrency = len(self._hosts) + else: + self._concurrency = int(script.getConcurrency()) + log_debug("Setting task-body concurrency to %s.", + self._concurrency) + self._semaphore = self.threading.Semaphore(self._concurrency) + + def _run_preflight(self): + """ + Run the jobs in a prefilght section. + """ + import signal + + rdy_msg = "\nPre-Flight complete, press enter to continue: " + + for host in self._hosts: + t = TaskRunner(host, self._preflight_tasks, + self._preflight_semaphore, + self._output, self._fail_event) + t.start() + self._preflight_tasks_q.append(t) + + signal.signal(signal.SIGINT, self.__sighandler) + + for task in self._task_q: + while task.isAlive(): + task.join(0.1) + + while len(self.threading.enumerate()) > 1: + # Even though all the threads may have been joined we + # should still wait for them to terminate. If we don't + # wait for that we will likely see the 'continue?' prompt + # before the preflight output gets a chance to print. + pass + + if not self._config["onlypreflight"]: + ready = raw_input(rdy_msg) + + if self._fail_event.isSet(): + return False + return True + + def _run_tasks(self): + """ + Run a task body. + """ + import signal + + for host in self._hosts: + t = TaskRunner(host, self._tasks, self._semaphore, self._output, + self._fail_event) + t.start() + self._task_q.append(t) + + signal.signal(signal.SIGINT, self.__sighandler) + + for task in self._task_q: + while task.isAlive(): + task.join(0.1) + + if self._fail_event.isSet(): + return False + return True + +
[docs] def run(self): + """ + Run the preflight/tasks-body + """ + + if len(self._preflight_tasks) > 0: + if not self._run_preflight(): + return False + + if self._config["onlypreflight"]: + return True + else: + return self._run_tasks() +
+ def _expand_globs(self): + """ + Returns the hosts that expand out from globs. + + This is kind of a dirty hack around how Func returns minions + in an arbitrary order. + """ + + import func.overlord.client as fc + + if not self._hosts: + return [] + if isinstance(self._hosts, basestring): + glob = self._hosts + c = fc.Client(glob) + return c.list_minions() + else: + # Iterate over each given item, expand it, and then push + # it onto our list. But only if it doesn't exist already! + found_hosts = [] + for h in self._hosts: + c = fc.Client(h) + new_hosts = filter(lambda h: h not in found_hosts, + c.list_minions()) + found_hosts.extend(new_hosts) + # for found_host in c.list_minions(): + # h = filter + # if not found_host in found_hosts: + # found_hosts.append(found_host) + return found_hosts + + def __sighandler(self, signal, frame): + """ + If we get SIGINT on the CLI, we need to quit all the threads + in our process group + """ + import os + import signal + + os.killpg(os.getpgid(0), signal.SIGQUIT) + +
+
[docs]class TaskRunner(threading.Thread): + """ + TaskRunner is responsible for executing a set of tasks for a + single host in it's own thread. + """ + + from taboot.tasks import TaskResult as _TaskResult + + def __init__(self, host, tasks, semaphore, output, fail_event): + """ + :Parameters: + - `host`: The host to operate on. + - `tasks`: A list of tasks to perform (see :class:`Runner`) + - `semaphore`: The :class:`Runner` semaphore to acquire before + executing + - `output`: A list of outputters to use. (see :class:`Runner`) + - `fail_event`: The :class:`Runner` failure event to check before + executing. If this event is set when the TaskRunner acquires the + semaphore, then the TaskRunner is effectively a no-op. + """ + + threading.Thread.__init__(self) + self._host = host + self._tasks = tasks + self._semaphore = semaphore + self._output = output + self._fail_event = fail_event + self._state = {} + + def __getitem__(self, key): + return self._state[key] + + def __setitem__(self, key, value): + self._state[key] = value + +
[docs] def run(self): + """ + Run the task(s) for the given host. If the fail_event passed + from the invoking :class:`Runner` is set, do nothing. + """ + + self._semaphore.acquire() + + if self._fail_event.isSet(): + # some other host has bombed + self._semaphore.release() + return + + try: + host_success = True + for task in self._tasks: + result = self.run_task(task) + if not result.success and not result.ignore_errors: + host_success = False + break + except: + self._bail_failure() + raise + + if not host_success: + self._bail_failure() + else: + self._semaphore.release() + return host_success +
+ def _bail_failure(self): + """ + Die nicely :) + """ + + self._fail_event.set() + self._semaphore.release() + +
[docs] def run_task(self, task): + """ + Run a single task. Sets task.host and then invokes the run + method for the task. + + :Parameters: + - `task`: The task to run + """ + + ignore_errors = False + if 'ignore_errors' in task: + if task['ignore_errors'] in ('True', 'true', 1): + ignore_errors = True + + task = instantiator(task, 'taboot.tasks', host=self._host) + + outputters = [] + for o in self._output: + instance = instantiator(o, 'taboot.output', + host=self._host, + task=task) + outputters.append(instance) + + try: + result = task.run(self) + except Exception, e: + result = self._TaskResult(task, output=repr(e)) + + for o in outputters: + o.write(result) + + result.ignore_errors = ignore_errors + return result
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks.html b/html/_modules/taboot/tasks.html new file mode 100644 index 00000000000..0f45d649c39 --- /dev/null +++ b/html/_modules/taboot/tasks.html @@ -0,0 +1,263 @@ + + + + + + + + + taboot.tasks — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009-2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+
[docs]class BaseTask(object): + """ + Base Task. All tasks should inherit from this. It does the + pretty string representation of a task and allows setting of the + host attribute. + """ + + def __init__(self, *args, **kwargs): + self._name = str(type(self)) + next = self._name.index("'") + 1 + self._name = self._name[next:self._name.rindex("'")] + self._args = args + self.host = kwargs['host'] + self.concurrentFriendly = True + + def __repr__(self): + return "%s%s" % (self._name, self._args) + + def _sethost(self, host): + self._host = host + + def _gethost(self): + if hasattr(self, '_host'): + return self._host + else: + return None + + host = property(_gethost, _sethost) + +
+
[docs]class FuncTask(BaseTask): + """ + A Func-based task. All tasks that utilize Func should inherit + from this. + """ + + import func.jobthing + from taboot.errors import FuncException as _FuncException + + def _func_run(self, func_command, *args): + """ + Execute a command via Func. + + :Paramaters: + - `func_command` String representing func command to run + (e.g. 'command.run') + - `*args` Argument(s) to be used when invoking the func command + """ + + import time + import func.overlord.client + try: + client = func.overlord.client.Client(self._host, async=True) + job_id = reduce(lambda x, y: getattr(x, y), + func_command.split('.'), + client)(*args) + # poll until the job completes + (status, result) = (None, None) + while status != self.func.jobthing.JOB_ID_FINISHED: + (status, result) = client.job_status(job_id) + time.sleep(1) + result = result[self._host] + if result[0] == 'REMOTE_ERROR': + raise self._FuncException(result[1:]) + return (True, result) + except Exception, ex: + return (False, repr(ex)) + +
[docs] def run(self, runner): + """ + Run the FuncTask. + + :Parameters: + - `runner` A :class:`taboot.runner.TaskRunner` instance + """ + + if not hasattr(self, '_command'): + raise Exception("You MUST set self._command when instantiating " + + "a subclass of FuncTask!") + + result = self._func_run(self._command, *(self._args)) + + if result[0]: + # command executed successfully as far as "func success" + return self._process_result(result[1]) + else: + return TaskResult(self, success=False, output=result[1]) + +
+
[docs]class FuncErrorTask(FuncTask): + """ + Explicitly cause a func remote error by calling a bad command. + Used to verify func exception handling works as expected + """ + + def __init__(self, *args, **kwargs): + super(FuncErrorTask, self).__init__(*args, **kwargs) + self._command = 'thiscommand.DoesntExist' + +
+
[docs]class TaskResult(object): + """ + An encapsulation of the results of a task. This is passed to one + or more instances of output classes (derived from BaseOutput) in + order to display to the user. + """ + + def __init__(self, task, success=False, output='', ignore_errors=False): + """ + :Parameters: + - `task`: The task object represented by this result + - `success`: Whether the task completed successfully or not + - `output`: Any text output produced by the task + """ + + if hasattr(task, 'host'): + self._host = task.host + self._task = repr(task) + self._taskObj = task + self._success = success + self._output = output + self._ignore_errors = ignore_errors + + def _gettask(self): + return self._task + + def _gettaskObj(self): + return self._taskObj + + def _settask(self, t): + self._task = repr(t) + + def _getsuccess(self): + return self._success + + def _setsuccess(self, success): + self._success = success + + def _getoutput(self): + return self._output + + def _setoutput(self, output): + self._output = output + + def _getignore_errors(self): + return self._ignore_errors + + def _setignore_errors(self, ignore_errors): + self._ignore_errors = ignore_errors + + def _gethost(self): + return self._host + + task = property(_gettask, _settask) + success = property(_getsuccess, _setsuccess) + output = property(_getoutput, _setoutput) + ignore_errors = property(_getignore_errors, _setignore_errors) + host = property(_gethost) + taskObj = property(_gettaskObj)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/command.html b/html/_modules/taboot/tasks/command.html new file mode 100644 index 00000000000..6e045578b1f --- /dev/null +++ b/html/_modules/taboot/tasks/command.html @@ -0,0 +1,129 @@ + + + + + + + + + taboot.tasks.command — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.command

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009,2010, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import FuncTask, TaskResult
+
+
+
[docs]class Run(FuncTask): + """ + Run arbitrary commands via Func. The arguments passed to __init__ + are used to execute func.overlord.Client.command.run(args). + + :Parameters: + - `command`: Command to run on the remote host + """ + + def __init__(self, command, **kwargs): + super(Run, self).__init__(command, **kwargs) + self._command = 'command.run' + + def _process_result(self, result): + t = TaskResult(self) + if result[0] == 0: + t.success = True + else: + t.success = False + t.output = result[1] + return t
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/mod_jk.html b/html/_modules/taboot/tasks/mod_jk.html new file mode 100644 index 00000000000..b94031b0100 --- /dev/null +++ b/html/_modules/taboot/tasks/mod_jk.html @@ -0,0 +1,190 @@ + + + + + + + + + taboot.tasks.mod_jk — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.mod_jk

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009-2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import BaseTask, FuncTask, TaskResult
+
+JK_ENABLE = 0
+JK_DISABLE = 1
+JK_STOP = 2
+
+
+class ToggleHost(FuncTask):
+    def __init__(self, action, proxyhost, **kwargs):
+        super(ToggleHost, self).__init__(proxyhost, **kwargs)
+        self._action = action
+        if action == JK_ENABLE:
+            self._command = 'taboot.modjk.enable_host'
+        elif action == JK_DISABLE:
+            self._command = 'taboot.modjk.disable_host'
+        elif action == JK_STOP:
+            self._command = 'taboot.modjk.stop_host'
+        else:
+            raise Exception("Undefined toggle action")
+
+    def _process_result(self, result):
+        t = TaskResult(self)
+        if len(result) > 0:
+            t.success = True
+            if self._action == JK_ENABLE:
+                verb = 'Enabled'
+            elif self._action == JK_DISABLE:
+                verb = 'Disabled'
+            elif self._action == JK_STOP:
+                verb = 'Stopped'
+
+            t.output = "%s AJP on the following balancer/worker " \
+                "pairs:\n" % verb
+            for balancer, worker in result:
+                t.output += "%s:  %s\n" % (balancer, worker)
+        else:
+            t.success = False
+            t.output = "Failed to find worker host"
+        return t
+
+
+class JKBaseTask(BaseTask):
+    def __init__(self, proxies, action, **kwargs):
+        super(JKBaseTask, self).__init__(**kwargs)
+        from sys import modules
+        self.proxies = proxies
+        self.jkaction = getattr(modules[self.__module__], "JK_%s" %
+                                action.upper())
+
+    def run(self, runner):
+        output = ""
+        success = True
+        for proxy in self.proxies:
+            toggler = ToggleHost(self.jkaction, self._host, host=proxy)
+            result = toggler.run(runner)
+            output += "%s:\n" % proxy
+            output += "%s\n" % result.output
+            if result.success == False:
+                success = False
+                break
+        return TaskResult(self, success=success, output=output)
+
+
+
[docs]class OutOfRotation(JKBaseTask): + """ + Remove an AJP node from rotation on a proxy via modjkapi access on + the proxy with func. + + :Parameters: + - `proxies`: A list of URLs to AJP jkmanage interfaces + """ + def __init__(self, proxies, action="stop", **kwargs): + super(OutOfRotation, self).__init__(proxies, action, **kwargs) + +
+
[docs]class InRotation(JKBaseTask): + """ + Put an AJP node in rotation on a proxy via modjkapi access on + the proxy with func. + + :Parameters: + - `proxies`: A list of URLs to AJP jkmanage interfaces + """ + def __init__(self, proxies, action="enable", **kwargs): + super(InRotation, self).__init__(proxies, action, **kwargs)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/nagios.html b/html/_modules/taboot/tasks/nagios.html new file mode 100644 index 00000000000..e21129d18e9 --- /dev/null +++ b/html/_modules/taboot/tasks/nagios.html @@ -0,0 +1,284 @@ + + + + + + + + + taboot.tasks.nagios — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.nagios

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009-2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import BaseTask, TaskResult, FuncTask
+import taboot.errors
+import sys
+
+
+
[docs]class NagiosBase(FuncTask): + """ + All subsequent Nagios tasks are subclasses of this. + + Code note: Because a `FuncTask` expects to make connections to + `self.host` we need to switch `nagios_url` with `self.host` and + pass the original `self.host` as an argument. + + .. versionchanged:: 0.2.14 + + The previous version specified the `nagios_url` parameter as a + URL. To facilitate transitions we automatically correct URLs + into hostnames. + + Previously the `service` key was defined as a scalar, like + "HTTP" or "JBOSS". This version accepts that key as a scalar OR + as a list and "does the right thing" in each case. + """ + + def _fix_nagios_url(self, nagios_url): + """ + For backwards compatability we accept a Nagios URL that + identifies an HTTP resource. + + This method will take a string like http://foo.com/nagios/cmd.cgi + and return just the hostname component ("foo.com"). + """ + import re + return re.sub(r'(https?://)([^/]+)(.*)', r'\2', nagios_url) + + def _process_result(self, result): + t = TaskResult(self) + + if result.startswith("Fail: "): + t.success = False + else: + t.sucess = True + t.success = True + t.output = result + return t + +
+
[docs]class DisableAlerts(NagiosBase): + """ + Disable alerts for a host on a nagios instance + """ + + def __init__(self, nagios_url, **kwargs): + """ + :Parameters: + - `nagios_url`: Hostname of the Nagios server. + """ + target_host = kwargs['host'] + kwargs['host'] = self._fix_nagios_url(nagios_url) + super(DisableAlerts, self).__init__(target_host, **kwargs) + self._command = 'nagios.disable_host_notifications' + +
+
[docs]class EnableAlerts(NagiosBase): + """ + Enable alerts for a host on a nagios instance + """ + + def __init__(self, nagios_url, **kwargs): + """ + :Parameters: + - `nagios_url`: Hostname of the Nagios server. + """ + target_host = kwargs['host'] + kwargs['host'] = self._fix_nagios_url(nagios_url) + super(EnableAlerts, self).__init__(target_host, **kwargs) + self._command = 'nagios.enable_host_notifications' + +
+
[docs]class ScheduleDowntime(NagiosBase): + """ + Schedule downtime for services on a host in Nagios + """ + + def __init__(self, nagios_url, service='HOST', minutes=30, **kwargs): + """ + :Parameters: + - `nagios_url`: Hostname of the Nagios server. + - `service`: Service or list of services to schedule down for. + - `minutes`: The number of minutes to schedule downtime + for. Default is 30. + """ + import types + target_host = kwargs['host'] + kwargs['host'] = self._fix_nagios_url(nagios_url) + + if isinstance(service, types.StringTypes): + service = [service] + + if not isinstance(minutes, types.IntType): + if isinstance(minutes, types.FloatType): + minutes = int(minutes) + else: + raise TypeError("Invalid data given for minutes.", + "Expecting int type.", + "Got '%s'." % minutes) + + super(ScheduleDowntime, self).__init__(target_host, service, + minutes, **kwargs) + + if service == 'HOST': + self._command = "nagios.schedule_host_downtime" + else: + self._command = 'nagios.schedule_svc_downtime' + + def _process_result(self, result): + t = TaskResult(self) + t.success = True + for r in result: + if r.startswith("Fail: "): + t.success = t.success & False + else: + t.sucess = t.success & True + t.output = result + return t + +
+
[docs]class SilenceHost(NagiosBase): + """ + Silence all notifications for a given host + """ + + def __init__(self, nagios_url, **kwargs): + """ + :Parameters: + - `nagios_url`: Hostname of the Nagios server. + """ + target_host = kwargs['host'] + kwargs['host'] = self._fix_nagios_url(nagios_url) + super(SilenceHost, self).__init__(target_host, **kwargs) + self._command = 'nagios.silence_host' + + def _process_result(self, result): + t = TaskResult(self) + t.success = True + for r in result: + if r.startswith("Fail: "): + t.success = t.success & False + else: + t.sucess = t.success & True + t.output = result + return t + +
+
[docs]class UnsilenceHost(NagiosBase): + """ + Unsilence all notifications for a given host + """ + + def __init__(self, nagios_url, **kwargs): + """ + :Parameters: + - `nagios_url`: Hostname of the Nagios server. + """ + target_host = kwargs['host'] + kwargs['host'] = self._fix_nagios_url(nagios_url) + super(UnsilenceHost, self).__init__(target_host, **kwargs) + self._command = 'nagios.unsilence_host' + + def _process_result(self, result): + t = TaskResult(self) + t.success = True + for r in result: + if r.startswith("Fail: "): + t.success = t.success & False + else: + t.sucess = t.success & True + t.output = result + return t
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/poller.html b/html/_modules/taboot/tasks/poller.html new file mode 100644 index 00000000000..6dc8165cb7c --- /dev/null +++ b/html/_modules/taboot/tasks/poller.html @@ -0,0 +1,149 @@ + + + + + + + + + taboot.tasks.poller — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.poller

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import BaseTask
+from taboot.tasks import TaskResult
+import time
+
+
+
[docs]class PollTask(BaseTask): + """ + PollTask. A task that will poll a particular task until the task + succeeds or until max_attempts is reached. + + :Parameters: + - `task` The task to poll. + - `sleep_interval` The number of seconds to wait before trying + the task again. + - `max_attempts` The maximum number of attempts that the task + should be run. + - `fail_task` The task to run when max_attempts has been exhausted. + If no fail_task is provided, then a simple TaskResult + indicating failure is returned. + """ + + def __init__(self, task, sleep_interval=5, max_attempts=6, + fail_task=None, **kwargs): + super(PollTask, self).__init__(**kwargs) + self._task = task + self._sleep_interval = sleep_interval + self._max_attempts = max_attempts + self._fail_task = fail_task + + def run(self, runner): + for x in range(self._max_attempts): + result = runner.run_task(self._task) + if result.success: + return result + time.sleep(self._sleep_interval) + + # exhausted max_attempts + if self._fail_task != None: + return runner.run_task(self._fail_task) + else: + # return a "failed" TaskResult, stop executing further tasks + return TaskResult(self, success=False, + output="Max attempts of %s reached running %s" % + (self._max_attempts, repr(self._task)))
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/puppet.html b/html/_modules/taboot/tasks/puppet.html new file mode 100644 index 00000000000..ffb49ee3ec2 --- /dev/null +++ b/html/_modules/taboot/tasks/puppet.html @@ -0,0 +1,196 @@ + + + + + + + + + taboot.tasks.puppet — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.puppet

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009-2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import command, TaskResult
+import puppet
+
+
+
[docs]class PuppetBase(command.Run): + """ + Base class for puppet commands + """ + + def __init__(self, pcmd, **kwargs): + super(PuppetBase, self).__init__(pcmd, **kwargs) + +
+
[docs]class Run(PuppetBase): + """ + Run 'puppetd --test || true' + + :Optional Parameters: + - `server`: Puppetmaster to run against + - `noop`: If this should be a noop run (Boolean) + - `safe`: Abort if puppet errors (Boolean) + + See also: :py:meth:`taboot.tasks.Puppet.SafeRun` + """ + + def __init__(self, server="", noop=False, safe=False, **kwargs): + pcmd = "puppetd --test --color=false" + if server != "": + pcmd += " --server=%s" % server + if noop == True: + pcmd += " --noop" + if safe == False: + # If safe is False, ignore the return code of the puppet run + pcmd += " || true" + super(Run, self).__init__(pcmd, **kwargs) + + def run(self, runner): + result = super(Run, self).run(runner) + return PuppetTaskResult(result.taskObj, result.success, + result.output, result.ignore_errors) + +
+
[docs]class SafeRun(puppet.Run): + """ + Run 'puppetd --test'. + + How is this different from Run? Simple, it will abort everything + if puppet returns with a non-zero exit status. + """ + + def __init__(self, server="", **kwargs): + super(SafeRun, self).__init__(server, safe=True, **kwargs) + +
+
[docs]class Enable(PuppetBase): + """ + Run 'puppetd --enable'. + """ + + def __init__(self, **kwargs): + super(Enable, self).__init__('puppetd --enable', **kwargs) + +
+
[docs]class Disable(PuppetBase): + """ + Run 'puppetd --disable'. + """ + + def __init__(self, **kwargs): + super(Disable, self).__init__('puppetd --disable', **kwargs) + +
+
[docs]class DeleteLockfile(PuppetBase): + """ + Remove the puppet lock file. + """ + + def __init__(self, **kwargs): + PUPPET_LOCKFILE = "/var/lib/puppet/state/puppetdlock" + super(DeleteLockfile, self).__init__("rm -f %s" % PUPPET_LOCKFILE, + **kwargs) + +
+
[docs]class PuppetTaskResult(TaskResult): + """ + Wrapper around TaskResult to be able to differentiate in output class + """ + + def __init__(self, task, success=False, output='', ignore_errors=False): + super(PuppetTaskResult, self).__init__(task, success, output, + ignore_errors)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/rpm.html b/html/_modules/taboot/tasks/rpm.html new file mode 100644 index 00000000000..69b629eaafb --- /dev/null +++ b/html/_modules/taboot/tasks/rpm.html @@ -0,0 +1,189 @@ + + + + + + + + + taboot.tasks.rpm — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.rpm

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009,2010, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import command, TaskResult
+
+
+
[docs]class RPMBase(command.Run): + """ + Base class for rpm commands + """ + + def __init__(self, pcmd, **kwargs): + super(RPMBase, self).__init__(pcmd, **kwargs) + +
+
[docs]class PreManifest(command.Run): + """ + Gather list of installed RPMs. A later invocation of :class:`PostManifest` + is then used to output the RPMs changed during intermediate tasks. + """ + + def __init__(self, **kwargs): + super(PreManifest, self).__init__('rpm -qa | sort', **kwargs) + +
[docs] def run(self, runner): + """ + Override the default :class:`command.Run` to strip the output + from the result because we're really not interested in the + contents of the pre-manifest; we just want to collect it to + compare later on with PostManifest. + """ + + result = super(PreManifest, self).run(runner) + runner['rpm.PreManifest'] = result.output + result.output = '' + return result + +
+
[docs]class PostManifest(command.Run): + """ + Gather list of installed RPMs and compare against a previously + taken :class:`PreManifest` + """ + + from difflib import Differ as _Differ + + def __init__(self, **kwargs): + super(PostManifest, self).__init__('rpm -qa | sort', **kwargs) + +
[docs] def run(self, runner): + """ + The runner that gets passed in contains state that can be + access via dict-like access. PreManifest uses this to write + to the rpm.Premanifest field. So we'll check to make sure the + pre-manifest is there by looking for that state. + """ + try: + pre_manifest = runner['rpm.PreManifest'] + except: + return TaskResult(self, success=False, + output="You must use PreManifest before PostManifest") + + # ok, so now we have something to compare against so we get + # new state... + result = super(command.Run, self).run(runner) + + old_list = pre_manifest.splitlines(1) + new_list = result.output.splitlines(1) + + differ = self._Differ() + diff_output = list(differ.compare(old_list, new_list)) + diff_output = [line for line in diff_output if line[0] in ('+', '-')] + + result.output = ''.join(diff_output) + + return RPMTaskResult(result.taskObj, result.success, + result.output, result.ignore_errors) + +
+
[docs]class RPMTaskResult(TaskResult): + """ + Wrapper around TaskResult to be able to differentiate in output class + """ + + def __init__(self, task, success=False, output='', ignore_errors=False): + super(RPMTaskResult, self).__init__(task, success, output, + ignore_errors)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/service.html b/html/_modules/taboot/tasks/service.html new file mode 100644 index 00000000000..98e238d47d9 --- /dev/null +++ b/html/_modules/taboot/tasks/service.html @@ -0,0 +1,149 @@ + + + + + + + + + taboot.tasks.service — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.service

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009,2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import command
+
+
+
[docs]class ServiceBase(command.Run): + """ + Base Class for system service tasks + """ + pass + +
+
[docs]class Start(ServiceBase): + """ + Start a service. + + Arguments: + - ``service`` - The service to start. + """ + + def __init__(self, service, **kwargs): + super(Start, self).__init__('service %s start' % service, **kwargs) + +
+
[docs]class Stop(ServiceBase): + """ + Stop a service. + + Arguments: + - ``service`` - The service to stop. + """ + + def __init__(self, service, **kwargs): + super(Stop, self).__init__('service %s stop' % service, **kwargs) + +
+
[docs]class Restart(ServiceBase): + """ + Restart a service. + + Arguments: + - ``service`` - The service to restart. + """ + + def __init__(self, service, **kwargs): + super(Restart, self).__init__('service %s restart' % service, **kwargs)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/sleep.html b/html/_modules/taboot/tasks/sleep.html new file mode 100644 index 00000000000..a6274052935 --- /dev/null +++ b/html/_modules/taboot/tasks/sleep.html @@ -0,0 +1,181 @@ + + + + + + + + + taboot.tasks.sleep — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.sleep

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2011, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import BaseTask, TaskResult
+from termios import tcflush, TCIFLUSH
+import sys
+
+
+
[docs]class SleepBase(BaseTask): + """ + Base class for task-queue pausing classes. + """ + + def __init__(self, **kwargs): + super(SleepBase, self).__init__(**kwargs) + +
+
[docs]class Seconds(SleepBase): + """ + Halt task processing on a node for a certain number of seconds. + + :Parameters: + - `seconds`: Number of seconds to halt execution for. + """ + + def __init__(self, seconds=60, **kwargs): + super(Seconds, self).__init__(**kwargs) + self._seconds = seconds + + def run(self, runner): + import time + time.sleep(self._seconds) + return TaskResult(self, success=True, + output="Paused for %s seconds" % + self._seconds) + +
+
[docs]class Minutes(SleepBase): + """ + Halt task processing on a node for a certain number of minutes. + + :Parameters: + - `minutes`: Number of minutes to halt execution for. + """ + + def __init__(self, minutes=1, **kwargs): + super(Minutes, self).__init__(**kwargs) + self._minutes = minutes + self._seconds = minutes * 60 + + def run(self, runner): + import time + time.sleep(self._seconds) + return TaskResult(self, success=True, + output="Paused for %s minutes" % + self._minutes) + +
+
[docs]class WaitOnInput(SleepBase): + """ + Halt task processing on a node until the user presses enter. + + :Parameters: + - `message`: The message to prompt on the CLI. + """ + + def __init__(self, message="Press enter to continue\n", **kwargs): + super(WaitOnInput, self).__init__(**kwargs) + self._message = message + self.concurrentFriendly = False + + def run(self, runner): + import time + start = time.time() + tcflush(sys.stdin, TCIFLUSH) + raw_input(self._message) + return TaskResult(self, success=True, + output="Paused for %s seconds" % + (time.time() - start))
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_modules/taboot/tasks/yum.html b/html/_modules/taboot/tasks/yum.html new file mode 100644 index 00000000000..49945efa7a1 --- /dev/null +++ b/html/_modules/taboot/tasks/yum.html @@ -0,0 +1,166 @@ + + + + + + + + + taboot.tasks.yum — Taboot v0.4.0 documentation + + + + + + + + + + + + +
+
+
+
+ +

Source code for taboot.tasks.yum

+# -*- coding: utf-8 -*-
+# Taboot - Client utility for performing deployments with Func.
+# Copyright © 2009, Red Hat, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from taboot.tasks import command, BaseTask
+
+
+
[docs]class YumBase(BaseTask): + """ + Base class for all Yum-related tasks. + """ + + def __init__(self, packages): + if isinstance(packages, list): + self._packages = packages + self._packages_str = ' '.join(packages) + else: + self._packages = [packages] + self._packages_str = packages + +
+
[docs]class Install(YumBase, command.Run): + """ + Install one or more packages. + """ + + def __init__(self, packages, **kwargs): + """ + :Parameters: + - `packages`: A list of packages to install + """ + YumBase.__init__(self, packages) + command.Run.__init__(self, 'yum install -y %s' % self._packages_str, + **kwargs) + +
+
[docs]class Update(YumBase, command.Run): + """ + Update one or more packages. + """ + + def __init__(self, packages=[], **kwargs): + """ + :Parameters: + - `packages`: A list of packages to update. If `packages` is empty, + update all packages on the system. + """ + YumBase.__init__(self, packages) + command.Run.__init__(self, 'yum update -y %s' % self._packages_str, + **kwargs) + +
+
[docs]class Remove(YumBase, command.Run): + """ + Remove one or more packages. + """ + + def __init__(self, packages, **kwargs): + """ + :Parameters: + - `packages`: A list of packages to remove. + """ + YumBase.__init__(self, packages) + command.Run.__init__(self, 'yum remove -y %s' % self._packages_str, + **kwargs)
+
+ +
+
+
+
+
+ + +
+
+
+
+ + + + \ No newline at end of file diff --git a/html/_sources/YAMLScripts.txt b/html/_sources/YAMLScripts.txt new file mode 100644 index 00000000000..de59528b785 --- /dev/null +++ b/html/_sources/YAMLScripts.txt @@ -0,0 +1,82 @@ +YAML Scripts +============ + +This page provides a basic overview of correct YAML syntax. + + +YAML Basics +----------- + +For `ansible`, every YAML script must be a list at it's root-most +element. Each item in the list is a dictionary. These dictionaries +represent all the options you can use to write a `ansible` script. In +addition, all YAML files (regardless of their association with +`ansible` or not) should start with ``---``. + +In YAML a list can be represented in two ways. In one way all members +of a list are lines beginning at the same indentation level starting +with a ``-`` character:: + + --- + # A list of tasty fruits + - Apple + - Orange + - Strawberry + - Mango + +In the second way a list is represented as comma separated elements +surrounded by square brackets. Newlines are permitted between +elements:: + + --- + # A list of tasty fruits + [apple, orange, banana, mango] + +A dictionary is represented in a simple ``key:`` and ``value`` form:: + + --- + # An employee record + name: John Eckersberg + job: Developer + skill: Elite + +Like lists, dictionaries can be represented in an abbreviated form:: + + --- + # An employee record + {name: John Eckersberg, job: Developer, skill: Elite} + +.. _truthiness: + +You can specify a boolean value (true/false) in several forms:: + + --- + knows_oop: True + likes_emacs: TRUE + uses_cvs: false + +Finally, you can combine these data structures:: + + --- + # An employee record + name: John Eckersberg + job: Developer + skill: Elite + employed: True + foods: + - Apple + - Orange + - Strawberry + - Mango + languages: + ruby: Elite + python: Elite + dotnet: Lame + +That's all you really need to know about YAML to get started writing +`Ansible` scripts. + +.. seealso:: + + `YAMLLint `_ + YAML Lint gets the lint out of your YAML diff --git a/html/_sources/api.txt b/html/_sources/api.txt new file mode 100644 index 00000000000..1cc8454a67d --- /dev/null +++ b/html/_sources/api.txt @@ -0,0 +1,55 @@ +API +=== + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/code.txt b/html/_sources/code.txt new file mode 100644 index 00000000000..4a12e449d60 --- /dev/null +++ b/html/_sources/code.txt @@ -0,0 +1,78 @@ +Code +==== + +Taboot +------ +.. automodule:: taboot + :members: + :undoc-members: + +Taboot runner +------------- +.. automodule:: taboot.runner + :members: + :undoc-members: + +.. _taboot.tasks: + +Taboot tasks +------------ +.. automodule:: taboot.tasks + :members: + +AJP Tasks +^^^^^^^^^ +.. automodule:: taboot.tasks.mod_jk + :members: + +Command tasks +^^^^^^^^^^^^^ +.. automodule:: taboot.tasks.command + :members: + +Misc tasks +^^^^^^^^^^ +.. automodule:: taboot.tasks.misc + :members: + +Nagios tasks +^^^^^^^^^^^^ +.. automodule:: taboot.tasks.nagios + :members: + +Polling tasks +^^^^^^^^^^^^^ +.. automodule:: taboot.tasks.poller + :members: + +Puppet tasks +^^^^^^^^^^^^ +.. automodule:: taboot.tasks.puppet + :members: + +RPM tasks +^^^^^^^^^ +.. automodule:: taboot.tasks.rpm + :members: + +Service tasks +^^^^^^^^^^^^^ +.. automodule:: taboot.tasks.service + :members: + +Sleep tasks +^^^^^^^^^^^ +.. automodule:: taboot.tasks.sleep + :members: + +Yum tasks +^^^^^^^^^ +.. automodule:: taboot.tasks.yum + :members: + +Taboot output +------------- +.. automodule:: taboot.output + :members: + :undoc-members: + diff --git a/html/_sources/communicate.txt b/html/_sources/communicate.txt new file mode 100644 index 00000000000..8e4d12a3b0b --- /dev/null +++ b/html/_sources/communicate.txt @@ -0,0 +1,55 @@ +Communicate +=========== + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/development.txt b/html/_sources/development.txt new file mode 100644 index 00000000000..cb74b86da44 --- /dev/null +++ b/html/_sources/development.txt @@ -0,0 +1,98 @@ +Development +=========== + +Tools +----- + +Taboot uses what is becoming a pretty standard and a quite simple +toolset. + + +Required Tools +`````````````` + #. `python `_ - The python programming language + #. `distutils `_ - Python building and packaging library + #. `git `_ - Source code management + #. `Func `_ - The Fedora Unified Network Controller + #. `an `_ `editor `_ or `ide `_ `that `_ doesn't suck + + + +Optional Tools +`````````````` +These should be available via your package manager: + + #. `rpm-build `_ - Should be packaged in your RPM distribution + #. `pep8 `_ - Check your patches for pep8 compliance with ``make pep8`` + + +Source +------ +You can clone the repo via :program:`git` through the following command::: + + $ git clone git://git.fedorahosted.org/Taboot.git + + +:pep:`0008` should be followed. This outlines the highlights that we +require above and beyond. Your code must follow this (or note why it +can't) before patches will be accepted. + + * global variables should be in ALLCAPPS + * attributes should be all lowercase + * classes should be ``CamelCased``, filenames should be ``lowercase``. + * functions and methods should be lowercase with spaces replaced with _'s:: + + def a_test_method(self): + pass + + * classes should subclass ``object`` unless it subclasses a different object:: + + class Person(object): + pass + + class Steve(Person): + pass + + * 4 spaces per indent level + * max length is 79 chars. + * single quotes preferred over double quotes. + * avoid ``from x import *`` imports unless a must use + * modules, functions, classes, and methods all must have docstrings - doc strings should be descriptive of what objects, functions, and methods do + * document any potentially confusing sections of code + * functions and methods should be broken down in such a way as to be easily understood and self contained + * use descriptive variable names, only use things like x, y, etc.. when doing integer loops and even then see if you can use more descriptive names + +.. note:: + The ``Makefile`` included in the root of the source distribution + includes a target called ``pep8``. Run ``make pep8`` to + automatically scan the ``taboot/`` subdirectory for violations. + + + +Git +--- + +The best way to develop on Taboot is to branch feature sets. For +instance, if you were to add xml deserialization you would want to +branch locally and work on that branch.:: + + $ git branch + * master + $ git status + # On branch master + nothing to commit (working directory clean) + $ git branch xmldeserialization + $ git checkout xmldeserialization + +Now we pretend you are all finished and have done at least one commit to the xmldeserialization branch.:: + + + $ git-format-patch master + 0001-created-initial-classes.patch + 0002-added-in-documentation.patch + $ + + +You now have patch sets which you can send in for perusal and +acceptance. Open a new ticket in our issue tracker or attach them to +an existing ticket. diff --git a/html/_sources/examples.txt b/html/_sources/examples.txt new file mode 100644 index 00000000000..44194c9ff0b --- /dev/null +++ b/html/_sources/examples.txt @@ -0,0 +1,71 @@ +Examples +======== + +Examples 1 +`````````` + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + + +Examples 2 +`````````` + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Examples 3 +`````````` + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +Examples 3 +`````````` + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Examples 4 +`````````` + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/gettingstarted.txt b/html/_sources/gettingstarted.txt new file mode 100644 index 00000000000..247faf96c03 --- /dev/null +++ b/html/_sources/gettingstarted.txt @@ -0,0 +1,67 @@ +Getting Started +=============== + +How to ansible + + +.. seealso:: + + :doc:`YAMLScripts` + Complete documentation of the YAML syntax `ansible` understands. + + +What you need +------------- + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/index.txt b/html/_sources/index.txt new file mode 100644 index 00000000000..30d8bb14e2c --- /dev/null +++ b/html/_sources/index.txt @@ -0,0 +1,89 @@ +.. Director documentation master file, created by sphinx-quickstart on Sat Sep 27 13:23:22 2008. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Ansible +======= + +Ansible is a extra-simple tool/API for doing 'parallel remote things' +over SSH -- whether executing commands, running "modules", or +executing larger 'playbooks' that can serve as a configuration +management or deployment system. + +While `Func installation `_ which I +co-wrote, aspired to avoid using SSH and have it's own daemon +infrastructure, Ansible aspires to be quite different and more +minimal, but still able to grow more modularly over time. This is +based on talking to a lot of users of various tools and wishing to +eliminate problems with connectivity and long running daemons, or not +picking tool X because they preferred to code in Y. Further, playbooks +take things a whole step further, building the config and deployment +system I always wanted to build. + +Why use Ansible versus something else? (Fabric, Capistrano, +mCollective, Func, SaltStack, etc?) It will have far less code, it +will be more correct, and it will be the easiest thing to hack on and +use you'll ever see -- regardless of your favorite language of choice. +Want to only code plugins in bash or clojure? Ansible doesn't care. +The docs will fit on one page and the source will be blindingly +obvious. + + +Design Principles +````````````````` + +* Dead simple setup +* Super fast & parallel by default +* No server or client daemons; use existing SSHd +* No additional software required on client boxes +* Modules can be written in ANY language +* Awesome API for creating very powerful distributed scripts +* Be usable as non-root +* Create the easiest config management system to use, ever. + + +Requirements +```````````` + +Requirements are extremely minimal. + +If you are running python 2.6 on the **overlord** machine, you will +need: + +* paramiko +* python-jinja2 +* PyYAML (if using playbooks) + +If you are running less than Python 2.6, you will also need + +* the Python 2.4 or 2.5 backport of the multiprocessing module +* simplejson + +On the managed nodes, to use templating, you will need: + +* python-jinja2 (you can install this with ansible) + + + +Contents: + +.. toctree:: + :maxdepth: 3 + + gettingstarted + YAMLScripts + patterns + modules + playbooks + api + communicate + examples + man + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` + diff --git a/html/_sources/install.txt b/html/_sources/install.txt new file mode 100644 index 00000000000..6fa077a5490 --- /dev/null +++ b/html/_sources/install.txt @@ -0,0 +1,56 @@ +Install +======= + + +From Yum +-------- + +Taboot is in the Fedora package repositories. Installing it should be as simple as:: + + sudo yum install python-taboot + + +From Source +----------- + +You'll need these dependencies to build/install: + + #. `python `_ - The python programming language along with python-setuptools + #. `distutils `_ - Python building and packaging library + +Building documentation requires some more deps. These are **required** +if you're building RPMs, and optional if you're installing manually: + + #. python-sphinx + #. asciidoc + #. libxslt + + +Building RPMs from source +````````````````````````` + +This is the recommended installation method if you're pulling Taboot +from source:: + + make rpm + sudo yum localinstall /path/to/rpm + + +Installing From source +`````````````````````` + +I **don't** recommend this. But if you're dead set on installing +directly from source you still can. This calls the python +``distutils`` installer directly:: + + sudo make install + +If you wish to build and install the optional documentation you'll +need some additional packages so it can be built fully. Install the +documentation with this command:: + + sudo make installdocs + +Uninstall everything with:: + + sudo make uninstall diff --git a/html/_sources/man.txt b/html/_sources/man.txt new file mode 100644 index 00000000000..6c6497fc930 --- /dev/null +++ b/html/_sources/man.txt @@ -0,0 +1,16 @@ +.. _man: + +Man Pages +========= + +Ansile ships with a handfull of manpages to help you on your journey. + +taboot(1) +--------- + +`View taboot.1 `_ + +taboot-tasks(5) +--------------- + +`View taboot-tasks.5 `_ diff --git a/html/_sources/modules.txt b/html/_sources/modules.txt new file mode 100644 index 00000000000..b303ee6ccb2 --- /dev/null +++ b/html/_sources/modules.txt @@ -0,0 +1,55 @@ +Modules +======= + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/patterns.txt b/html/_sources/patterns.txt new file mode 100644 index 00000000000..d0ae6b5d37d --- /dev/null +++ b/html/_sources/patterns.txt @@ -0,0 +1,55 @@ +Patterns +======== + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/playbooks.txt b/html/_sources/playbooks.txt new file mode 100644 index 00000000000..677403b5bc6 --- /dev/null +++ b/html/_sources/playbooks.txt @@ -0,0 +1,55 @@ +Playbooks +========= + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim +placerat nibh, non feugiat risus varius vitae. Donec eu libero +lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in +magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, +dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus +mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae +luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis +ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, +rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies +tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis +egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna +sem. Donec arcu felis, faucibus et malesuada non, blandit vitae +metus. Fusce nec sapien dolor. + +Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, +pretium quis sapien. Duis felis metus, sodales sit amet gravida in, +pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin +eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, +suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada +molestie, nisi nunc placerat libero, vel vulputate elit tellus et +augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat +egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan +lorem eget leo dictum viverra. + +Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean +ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar +quam. Suspendisse nec massa vel augue laoreet ultricies in convallis +dolor. Mauris sodales porta enim, non ultricies dolor luctus +in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, +erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra +arcu sem a ante. Praesent nec metus vestibulum augue eleifend +suscipit. In feugiat, sem nec dignissim consequat, velit tortor +scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh +turpis. Proin ac nisi ligula, a pretium augue. + +In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed +ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, +eget lobortis mi magna sed metus. Cras justo est, tempus quis +adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et +luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae +nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc +sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet +lacus. Maecenas interdum viverra laoreet. Quisque elementum +sollicitudin ullamcorper. + +Pellentesque mauris sem, malesuada at lobortis in, porta eget +urna. Duis aliquet quam eget risus elementum quis auctor ligula +gravida. Phasellus et ullamcorper libero. Nam elementum ultricies +tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat +tristique lobortis. Suspendisse est enim, tristique eu convallis id, +rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin +hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/tasks.txt b/html/_sources/tasks.txt new file mode 100644 index 00000000000..bf644a9174f --- /dev/null +++ b/html/_sources/tasks.txt @@ -0,0 +1,16 @@ +.. _tasks: + +Tasks +----- + +All the built-in tasks are documented here. + +.. include:: tasks/command.rst +.. include:: tasks/service.rst +.. include:: tasks/puppet.rst +.. include:: tasks/nagios.rst +.. include:: tasks/sleep.rst +.. include:: tasks/yum.rst +.. include:: tasks/rpm.rst +.. include:: tasks/mod_jk.rst +.. include:: tasks/misc.rst diff --git a/html/_static/basic.css b/html/_static/basic.css new file mode 100644 index 00000000000..32630d54c9f --- /dev/null +++ b/html/_static/basic.css @@ -0,0 +1,528 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 230px; + margin-left: -100%; + font-size: 90%; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +img { + border: 0; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li div.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable dl, table.indextable dd { + margin-top: 0; + margin-bottom: 0; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- general body styles --------------------------------------------------- */ + +a.headerlink { + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.field-list ul { + padding-left: 1em; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + clear: both; + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px 7px 0 7px; + background-color: #ffe; + width: 40%; + float: right; +} + +p.sidebar-title { + font-weight: bold; +} + +/* -- topics ---------------------------------------------------------------- */ + +div.topic { + border: 1px solid #ccc; + padding: 7px 7px 0 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +div.admonition dl { + margin-bottom: 0; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + border: 0; + border-collapse: collapse; +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +table.field-list td, table.field-list th { + border: 0 !important; +} + +table.footnote td, table.footnote th { + border: 0 !important; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +dl { + margin-bottom: 15px; +} + +dd p { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dt:target, .highlighted { + background-color: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.refcount { + color: #060; +} + +.optional { + font-size: 1.3em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +td.linenos pre { + padding: 5px 0px; + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + margin-left: 0.5em; +} + +table.highlighttable td { + padding: 0 0.5em 0 0.5em; +} + +tt.descname { + background-color: transparent; + font-weight: bold; + font-size: 1.2em; +} + +tt.descclassname { + background-color: transparent; +} + +tt.xref, a tt { + background-color: transparent; + font-weight: bold; +} + +h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} diff --git a/html/_static/default.css b/html/_static/default.css new file mode 100644 index 00000000000..21f3f5098d7 --- /dev/null +++ b/html/_static/default.css @@ -0,0 +1,256 @@ +/* + * default.css_t + * ~~~~~~~~~~~~~ + * + * Sphinx stylesheet -- default theme. + * + * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: sans-serif; + font-size: 100%; + background-color: #11303d; + color: #000; + margin: 0; + padding: 0; +} + +div.document { + background-color: #1c4e63; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 0 0 0 230px; +} + +div.body { + background-color: #ffffff; + color: #000000; + padding: 0 20px 30px 20px; +} + +div.footer { + color: #ffffff; + width: 100%; + padding: 9px 0 9px 0; + text-align: center; + font-size: 75%; +} + +div.footer a { + color: #ffffff; + text-decoration: underline; +} + +div.related { + background-color: #133f52; + line-height: 30px; + color: #ffffff; +} + +div.related a { + color: #ffffff; +} + +div.sphinxsidebar { +} + +div.sphinxsidebar h3 { + font-family: 'Trebuchet MS', sans-serif; + color: #ffffff; + font-size: 1.4em; + font-weight: normal; + margin: 0; + padding: 0; +} + +div.sphinxsidebar h3 a { + color: #ffffff; +} + +div.sphinxsidebar h4 { + font-family: 'Trebuchet MS', sans-serif; + color: #ffffff; + font-size: 1.3em; + font-weight: normal; + margin: 5px 0 0 0; + padding: 0; +} + +div.sphinxsidebar p { + color: #ffffff; +} + +div.sphinxsidebar p.topless { + margin: 5px 10px 10px 10px; +} + +div.sphinxsidebar ul { + margin: 10px; + padding: 0; + color: #ffffff; +} + +div.sphinxsidebar a { + color: #98dbcc; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + + + +/* -- hyperlink styles ------------------------------------------------------ */ + +a { + color: #355f7c; + text-decoration: none; +} + +a:visited { + color: #355f7c; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + + + +/* -- body styles ----------------------------------------------------------- */ + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: 'Trebuchet MS', sans-serif; + background-color: #f2f2f2; + font-weight: normal; + color: #20435c; + border-bottom: 1px solid #ccc; + margin: 20px -20px 10px -20px; + padding: 3px 0 3px 10px; +} + +div.body h1 { margin-top: 0; font-size: 200%; } +div.body h2 { font-size: 160%; } +div.body h3 { font-size: 140%; } +div.body h4 { font-size: 120%; } +div.body h5 { font-size: 110%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: #c60f0f; + font-size: 0.8em; + padding: 0 4px 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + background-color: #c60f0f; + color: white; +} + +div.body p, div.body dd, div.body li { + text-align: justify; + line-height: 130%; +} + +div.admonition p.admonition-title + p { + display: inline; +} + +div.admonition p { + margin-bottom: 5px; +} + +div.admonition pre { + margin-bottom: 5px; +} + +div.admonition ul, div.admonition ol { + margin-bottom: 5px; +} + +div.note { + background-color: #eee; + border: 1px solid #ccc; +} + +div.seealso { + background-color: #ffc; + border: 1px solid #ff6; +} + +div.topic { + background-color: #eee; +} + +div.warning { + background-color: #ffe4e4; + border: 1px solid #f66; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre { + padding: 5px; + background-color: #eeffcc; + color: #333333; + line-height: 120%; + border: 1px solid #ac9; + border-left: none; + border-right: none; +} + +tt { + background-color: #ecf0f3; + padding: 0 1px 0 1px; + font-size: 0.95em; +} + +th { + background-color: #ede; +} + +.warning tt { + background: #efc2c2; +} + +.note tt { + background: #d6d6d6; +} + +.viewcode-back { + font-family: sans-serif; +} + +div.viewcode-block:target { + background-color: #f4debf; + border-top: 1px solid #ac9; + border-bottom: 1px solid #ac9; +} \ No newline at end of file diff --git a/html/_static/doctools.js b/html/_static/doctools.js new file mode 100644 index 00000000000..8b9bd2c0e9c --- /dev/null +++ b/html/_static/doctools.js @@ -0,0 +1,247 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Sphinx JavaScript utilties for all documentation. + * + * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/** + * select a different prefix for underscore + */ +$u = _.noConflict(); + +/** + * make the code below compatible with browsers without + * an installed firebug like debugger +if (!window.console || !console.firebug) { + var names = ["log", "debug", "info", "warn", "error", "assert", "dir", + "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", + "profile", "profileEnd"]; + window.console = {}; + for (var i = 0; i < names.length; ++i) + window.console[names[i]] = function() {}; +} + */ + +/** + * small helper function to urldecode strings + */ +jQuery.urldecode = function(x) { + return decodeURIComponent(x).replace(/\+/g, ' '); +} + +/** + * small helper function to urlencode strings + */ +jQuery.urlencode = encodeURIComponent; + +/** + * This function returns the parsed url parameters of the + * current request. Multiple values per key are supported, + * it will always return arrays of strings for the value parts. + */ +jQuery.getQueryParameters = function(s) { + if (typeof s == 'undefined') + s = document.location.search; + var parts = s.substr(s.indexOf('?') + 1).split('&'); + var result = {}; + for (var i = 0; i < parts.length; i++) { + var tmp = parts[i].split('=', 2); + var key = jQuery.urldecode(tmp[0]); + var value = jQuery.urldecode(tmp[1]); + if (key in result) + result[key].push(value); + else + result[key] = [value]; + } + return result; +}; + +/** + * small function to check if an array contains + * a given item. + */ +jQuery.contains = function(arr, item) { + for (var i = 0; i < arr.length; i++) { + if (arr[i] == item) + return true; + } + return false; +}; + +/** + * highlight a given string on a jquery object by wrapping it in + * span elements with the given class name. + */ +jQuery.fn.highlightText = function(text, className) { + function highlight(node) { + if (node.nodeType == 3) { + var val = node.nodeValue; + var pos = val.toLowerCase().indexOf(text); + if (pos >= 0 && !jQuery(node.parentNode).hasClass(className)) { + var span = document.createElement("span"); + span.className = className; + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + node.parentNode.insertBefore(span, node.parentNode.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling)); + node.nodeValue = val.substr(0, pos); + } + } + else if (!jQuery(node).is("button, select, textarea")) { + jQuery.each(node.childNodes, function() { + highlight(this); + }); + } + } + return this.each(function() { + highlight(this); + }); +}; + +/** + * Small JavaScript module for the documentation. + */ +var Documentation = { + + init : function() { + this.fixFirefoxAnchorBug(); + this.highlightSearchWords(); + this.initIndexTable(); + }, + + /** + * i18n support + */ + TRANSLATIONS : {}, + PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; }, + LOCALE : 'unknown', + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext : function(string) { + var translated = Documentation.TRANSLATIONS[string]; + if (typeof translated == 'undefined') + return string; + return (typeof translated == 'string') ? translated : translated[0]; + }, + + ngettext : function(singular, plural, n) { + var translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated == 'undefined') + return (n == 1) ? singular : plural; + return translated[Documentation.PLURALEXPR(n)]; + }, + + addTranslations : function(catalog) { + for (var key in catalog.messages) + this.TRANSLATIONS[key] = catalog.messages[key]; + this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); + this.LOCALE = catalog.locale; + }, + + /** + * add context elements like header anchor links + */ + addContextElements : function() { + $('div[id] > :header:first').each(function() { + $('\u00B6'). + attr('href', '#' + this.id). + attr('title', _('Permalink to this headline')). + appendTo(this); + }); + $('dt[id]').each(function() { + $('\u00B6'). + attr('href', '#' + this.id). + attr('title', _('Permalink to this definition')). + appendTo(this); + }); + }, + + /** + * workaround a firefox stupidity + */ + fixFirefoxAnchorBug : function() { + if (document.location.hash && $.browser.mozilla) + window.setTimeout(function() { + document.location.href += ''; + }, 10); + }, + + /** + * highlight the search words provided in the url in the text + */ + highlightSearchWords : function() { + var params = $.getQueryParameters(); + var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; + if (terms.length) { + var body = $('div.body'); + window.setTimeout(function() { + $.each(terms, function() { + body.highlightText(this.toLowerCase(), 'highlighted'); + }); + }, 10); + $('') + .appendTo($('.sidebar .this-page-menu')); + } + }, + + /** + * init the domain index toggle buttons + */ + initIndexTable : function() { + var togglers = $('img.toggler').click(function() { + var src = $(this).attr('src'); + var idnum = $(this).attr('id').substr(7); + $('tr.cg-' + idnum).toggle(); + if (src.substr(-9) == 'minus.png') + $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); + else + $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); + }).css('display', ''); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { + togglers.click(); + } + }, + + /** + * helper function to hide the search marks again + */ + hideSearchWords : function() { + $('.sidebar .this-page-menu li.highlight-link').fadeOut(300); + $('span.highlighted').removeClass('highlighted'); + }, + + /** + * make the url absolute + */ + makeURL : function(relativeURL) { + return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; + }, + + /** + * get the current relative url + */ + getCurrentURL : function() { + var path = document.location.pathname; + var parts = path.split(/\//); + $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { + if (this == '..') + parts.pop(); + }); + var url = parts.join('/'); + return path.substring(url.lastIndexOf('/') + 1, path.length - 1); + } +}; + +// quick alias for translations +_ = Documentation.gettext; + +$(document).ready(function() { + Documentation.init(); +}); diff --git a/html/_static/file.png b/html/_static/file.png new file mode 100644 index 0000000000000000000000000000000000000000..d18082e397e7e54f20721af768c4c2983258f1b4 GIT binary patch literal 392 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP$HyOL$D9)yc9|lc|nKf<9@eUiWd>3GuTC!a5vdfWYEazjncPj5ZQX%+1 zt8B*4=d)!cdDz4wr^#OMYfqGz$1LDFF>|#>*O?AGil(WEs?wLLy{Gj2J_@opDm%`dlax3yA*@*N$G&*ukFv>P8+2CBWO(qz zD0k1@kN>hhb1_6`&wrCswzINE(evt-5C1B^STi2@PmdKI;Vst0PQB6!2kdN literal 0 HcmV?d00001 diff --git a/html/_static/jquery.js b/html/_static/jquery.js new file mode 100644 index 00000000000..7c243080233 --- /dev/null +++ b/html/_static/jquery.js @@ -0,0 +1,154 @@ +/*! + * jQuery JavaScript Library v1.4.2 + * http://jquery.com/ + * + * Copyright 2010, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2010, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Sat Feb 13 22:33:48 2010 -0500 + */ +(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/, +Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&& +(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this, +a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b=== +"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this, +function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b
a"; +var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected, +parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent= +false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n= +s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true, +applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando]; +else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this, +a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b=== +w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i, +cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected= +c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed"); +a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g, +function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split("."); +k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a), +C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B=0){a.type= +e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&& +f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive; +if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data", +e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a, +"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a, +d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, +e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift(); +t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D|| +g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()}, +CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m, +g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)}, +text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}}, +setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return hl[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h= +h[3];l=0;for(m=h.length;l=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m=== +"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g, +h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&& +q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML=""; +if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="

";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}(); +(function(){var g=s.createElement("div");g.innerHTML="
";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}: +function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f0)for(var j=d;j0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j= +{},i;if(f&&a.length){e=0;for(var o=a.length;e-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a=== +"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode", +d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")? +a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType=== +1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/"},F={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div
","
"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d= +c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this}, +wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})}, +prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b, +this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild); +return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja, +""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]); +return this}else{e=0;for(var j=d.length;e0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["", +""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]===""&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e= +c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]? +c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja= +function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter= +Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a, +"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f= +a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b= +a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=//gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!== +"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("
").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this}, +serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), +function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href, +global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&& +e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)? +"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache=== +false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B= +false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since", +c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E|| +d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x); +g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status=== +1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b=== +"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional; +if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration=== +"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]|| +c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start; +this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now= +this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem, +e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b
"; +a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b); +c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a, +d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top- +f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset": +"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in +e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window); diff --git a/html/_static/minus.png b/html/_static/minus.png new file mode 100644 index 0000000000000000000000000000000000000000..da1c5620d10c047525a467a425abe9ff5269cfc2 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s1SHkYJtzcHoCO|{#XvD(5N2eUHAey{$X?>< z>&kweokM_|(Po{+Q=kw>iEBiObAE1aYF-J$w=>iB1I2R$WLpMkF=>bh=@O1TaS?83{1OVknK< z>&kweokM`jkU7Va11Q8%;u=xnoS&PUnpeW`?aZ|OK(QcC7sn8Z%gHvy&v=;Q4jejg zV8NnAO`-4Z@2~&zopr02WF_WB>pF literal 0 HcmV?d00001 diff --git a/html/_static/pygments.css b/html/_static/pygments.css new file mode 100644 index 00000000000..1a14f2ae1ab --- /dev/null +++ b/html/_static/pygments.css @@ -0,0 +1,62 @@ +.highlight .hll { background-color: #ffffcc } +.highlight { background: #eeffcc; } +.highlight .c { color: #408090; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #007020; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #007020 } /* Comment.Preproc */ +.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #303030 } /* Generic.Output */ +.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0040D0 } /* Generic.Traceback */ +.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #007020 } /* Keyword.Pseudo */ +.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #902000 } /* Keyword.Type */ +.highlight .m { color: #208050 } /* Literal.Number */ +.highlight .s { color: #4070a0 } /* Literal.String */ +.highlight .na { color: #4070a0 } /* Name.Attribute */ +.highlight .nb { color: #007020 } /* Name.Builtin */ +.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ +.highlight .no { color: #60add5 } /* Name.Constant */ +.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #007020 } /* Name.Exception */ +.highlight .nf { color: #06287e } /* Name.Function */ +.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ +.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #bb60d5 } /* Name.Variable */ +.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mf { color: #208050 } /* Literal.Number.Float */ +.highlight .mh { color: #208050 } /* Literal.Number.Hex */ +.highlight .mi { color: #208050 } /* Literal.Number.Integer */ +.highlight .mo { color: #208050 } /* Literal.Number.Oct */ +.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 } /* Literal.String.Char */ +.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ +.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 } /* Literal.String.Other */ +.highlight .sr { color: #235388 } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ +.highlight .ss { color: #517918 } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ +.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/html/_static/searchtools.js b/html/_static/searchtools.js new file mode 100644 index 00000000000..dae92b5e5a6 --- /dev/null +++ b/html/_static/searchtools.js @@ -0,0 +1,518 @@ +/* + * searchtools.js + * ~~~~~~~~~~~~~~ + * + * Sphinx JavaScript utilties for the full-text search. + * + * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/** + * helper function to return a node containing the + * search summary for a given text. keywords is a list + * of stemmed words, hlwords is the list of normal, unstemmed + * words. the first one is used to find the occurance, the + * latter for highlighting it. + */ + +jQuery.makeSearchSummary = function(text, keywords, hlwords) { + var textLower = text.toLowerCase(); + var start = 0; + $.each(keywords, function() { + var i = textLower.indexOf(this.toLowerCase()); + if (i > -1) + start = i; + }); + start = Math.max(start - 120, 0); + var excerpt = ((start > 0) ? '...' : '') + + $.trim(text.substr(start, 240)) + + ((start + 240 - text.length) ? '...' : ''); + var rv = $('
').text(excerpt); + $.each(hlwords, function() { + rv = rv.highlightText(this, 'highlighted'); + }); + return rv; +} + +/** + * Porter Stemmer + */ +var PorterStemmer = function() { + + var step2list = { + ational: 'ate', + tional: 'tion', + enci: 'ence', + anci: 'ance', + izer: 'ize', + bli: 'ble', + alli: 'al', + entli: 'ent', + eli: 'e', + ousli: 'ous', + ization: 'ize', + ation: 'ate', + ator: 'ate', + alism: 'al', + iveness: 'ive', + fulness: 'ful', + ousness: 'ous', + aliti: 'al', + iviti: 'ive', + biliti: 'ble', + logi: 'log' + }; + + var step3list = { + icate: 'ic', + ative: '', + alize: 'al', + iciti: 'ic', + ical: 'ic', + ful: '', + ness: '' + }; + + var c = "[^aeiou]"; // consonant + var v = "[aeiouy]"; // vowel + var C = c + "[^aeiouy]*"; // consonant sequence + var V = v + "[aeiou]*"; // vowel sequence + + var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 + var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 + var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 + var s_v = "^(" + C + ")?" + v; // vowel in stem + + this.stemWord = function (w) { + var stem; + var suffix; + var firstch; + var origword = w; + + if (w.length < 3) + return w; + + var re; + var re2; + var re3; + var re4; + + firstch = w.substr(0,1); + if (firstch == "y") + w = firstch.toUpperCase() + w.substr(1); + + // Step 1a + re = /^(.+?)(ss|i)es$/; + re2 = /^(.+?)([^s])s$/; + + if (re.test(w)) + w = w.replace(re,"$1$2"); + else if (re2.test(w)) + w = w.replace(re2,"$1$2"); + + // Step 1b + re = /^(.+?)eed$/; + re2 = /^(.+?)(ed|ing)$/; + if (re.test(w)) { + var fp = re.exec(w); + re = new RegExp(mgr0); + if (re.test(fp[1])) { + re = /.$/; + w = w.replace(re,""); + } + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1]; + re2 = new RegExp(s_v); + if (re2.test(stem)) { + w = stem; + re2 = /(at|bl|iz)$/; + re3 = new RegExp("([^aeiouylsz])\\1$"); + re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re2.test(w)) + w = w + "e"; + else if (re3.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + else if (re4.test(w)) + w = w + "e"; + } + } + + // Step 1c + re = /^(.+?)y$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(s_v); + if (re.test(stem)) + w = stem + "i"; + } + + // Step 2 + re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step2list[suffix]; + } + + // Step 3 + re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step3list[suffix]; + } + + // Step 4 + re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; + re2 = /^(.+?)(s|t)(ion)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + if (re.test(stem)) + w = stem; + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1] + fp[2]; + re2 = new RegExp(mgr1); + if (re2.test(stem)) + w = stem; + } + + // Step 5 + re = /^(.+?)e$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + re2 = new RegExp(meq1); + re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) + w = stem; + } + re = /ll$/; + re2 = new RegExp(mgr1); + if (re.test(w) && re2.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + + // and turn initial Y back to y + if (firstch == "y") + w = firstch.toLowerCase() + w.substr(1); + return w; + } +} + + +/** + * Search Module + */ +var Search = { + + _index : null, + _queued_query : null, + _pulse_status : -1, + + init : function() { + var params = $.getQueryParameters(); + if (params.q) { + var query = params.q[0]; + $('input[name="q"]')[0].value = query; + this.performSearch(query); + } + }, + + loadIndex : function(url) { + $.ajax({type: "GET", url: url, data: null, success: null, + dataType: "script", cache: true}); + }, + + setIndex : function(index) { + var q; + this._index = index; + if ((q = this._queued_query) !== null) { + this._queued_query = null; + Search.query(q); + } + }, + + hasIndex : function() { + return this._index !== null; + }, + + deferQuery : function(query) { + this._queued_query = query; + }, + + stopPulse : function() { + this._pulse_status = 0; + }, + + startPulse : function() { + if (this._pulse_status >= 0) + return; + function pulse() { + Search._pulse_status = (Search._pulse_status + 1) % 4; + var dotString = ''; + for (var i = 0; i < Search._pulse_status; i++) + dotString += '.'; + Search.dots.text(dotString); + if (Search._pulse_status > -1) + window.setTimeout(pulse, 500); + }; + pulse(); + }, + + /** + * perform a search for something + */ + performSearch : function(query) { + // create the required interface elements + this.out = $('#search-results'); + this.title = $('

' + _('Searching') + '

').appendTo(this.out); + this.dots = $('').appendTo(this.title); + this.status = $('

').appendTo(this.out); + this.output = $(' @@ -107,8 +107,8 @@ hendrerit mi tincidunt dui fermentum placerat.

Previous topic

-

Playbooks

+

Examples

Next topic

Communicate

@@ -144,7 +144,7 @@ hendrerit mi tincidunt dui fermentum placerat.

next |
  • - previous |
  • Ansible v0.0.1 documentation »
  • diff --git a/html/code.html b/html/code.html deleted file mode 100644 index 52ca929f611..00000000000 --- a/html/code.html +++ /dev/null @@ -1,853 +0,0 @@ - - - - - - - - - Code — Taboot v0.4.0 documentation - - - - - - - - - - - -
    -
    -
    -
    - -
    -

    Code

    -
    -

    Taboot

    -

    The Taboot task library.

    -

    Taboot was created as a framework to do code deployments which -require a repetitive set of tasks to be run in a certain order against -certain groups of hosts.

    -
    -
    -

    Taboot runner

    -
    -
    -class taboot.runner.Runner(script, config, expand_globs=True)[source]
    -

    The Runner, responsible for running a taboot job.

    - --- - - - -
    Parameters :
      -
    • script: an instance of tabootScript
    • -
    • expand_globs: whether to expand the globs or just leave -them as is.
    • -
    -
    -
    -
    -run()[source]
    -

    Run the preflight/tasks-body

    -
    - -
    - -
    -
    -class taboot.runner.TaskRunner(host, tasks, semaphore, output, fail_event)[source]
    -

    TaskRunner is responsible for executing a set of tasks for a -single host in it’s own thread.

    - --- - - - -
    Parameters :
      -
    • host: The host to operate on.
    • -
    • tasks: A list of tasks to perform (see Runner)
    • -
    • semaphore: The Runner semaphore to acquire before -executing
    • -
    • output: A list of outputters to use. (see Runner)
    • -
    • fail_event: The Runner failure event to check before -executing. If this event is set when the TaskRunner acquires the -semaphore, then the TaskRunner is effectively a no-op.
    • -
    -
    -
    -
    -run()[source]
    -

    Run the task(s) for the given host. If the fail_event passed -from the invoking Runner is set, do nothing.

    -
    - -
    -
    -run_task(task)[source]
    -

    Run a single task. Sets task.host and then invokes the run -method for the task.

    - --- - - - -
    Parameters :
      -
    • task: The task to run
    • -
    -
    -
    - -
    - -
    -
    -

    Taboot tasks

    -
    -
    -class taboot.tasks.BaseTask(*args, **kwargs)[source]
    -

    Base Task. All tasks should inherit from this. It does the -pretty string representation of a task and allows setting of the -host attribute.

    -
    - -
    -
    -class taboot.tasks.FuncErrorTask(*args, **kwargs)[source]
    -

    Explicitly cause a func remote error by calling a bad command. -Used to verify func exception handling works as expected

    -
    - -
    -
    -class taboot.tasks.FuncTask(*args, **kwargs)[source]
    -

    A Func-based task. All tasks that utilize Func should inherit -from this.

    -
    -
    -run(runner)[source]
    -

    Run the FuncTask.

    - --- - - - -
    Parameters : -
    -
    - -
    - -
    -
    -class taboot.tasks.TaskResult(task, success=False, output='', ignore_errors=False)[source]
    -

    An encapsulation of the results of a task. This is passed to one -or more instances of output classes (derived from BaseOutput) in -order to display to the user.

    - --- - - - -
    Parameters :
      -
    • task: The task object represented by this result
    • -
    • success: Whether the task completed successfully or not
    • -
    • output: Any text output produced by the task
    • -
    -
    -
    - -
    -

    AJP Tasks

    -
    -
    -class taboot.tasks.mod_jk.InRotation(proxies, action='enable', **kwargs)[source]
    -

    Put an AJP node in rotation on a proxy via modjkapi access on -the proxy with func.

    - --- - - - -
    Parameters :
      -
    • proxies: A list of URLs to AJP jkmanage interfaces
    • -
    -
    -
    - -
    -
    -class taboot.tasks.mod_jk.OutOfRotation(proxies, action='stop', **kwargs)[source]
    -

    Remove an AJP node from rotation on a proxy via modjkapi access on -the proxy with func.

    - --- - - - -
    Parameters :
      -
    • proxies: A list of URLs to AJP jkmanage interfaces
    • -
    -
    -
    - -
    -
    -

    Command tasks

    -
    -
    -class taboot.tasks.command.Run(command, **kwargs)[source]
    -

    Run arbitrary commands via Func. The arguments passed to __init__ -are used to execute func.overlord.Client.command.run(args).

    - --- - - - -
    Parameters :
      -
    • command: Command to run on the remote host
    • -
    -
    -
    - -
    -
    -

    Misc tasks

    -
    -
    -

    Nagios tasks

    -
    -
    -class taboot.tasks.nagios.DisableAlerts(nagios_url, **kwargs)[source]
    -

    Disable alerts for a host on a nagios instance

    - --- - - - -
    Parameters :
      -
    • nagios_url: Hostname of the Nagios server.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.nagios.EnableAlerts(nagios_url, **kwargs)[source]
    -

    Enable alerts for a host on a nagios instance

    - --- - - - -
    Parameters :
      -
    • nagios_url: Hostname of the Nagios server.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.nagios.NagiosBase(*args, **kwargs)[source]
    -

    All subsequent Nagios tasks are subclasses of this.

    -

    Code note: Because a FuncTask expects to make connections to -self.host we need to switch nagios_url with self.host and -pass the original self.host as an argument.

    -

    -Changed in version 0.2.14.

    -
    - -
    -
    -class taboot.tasks.nagios.ScheduleDowntime(nagios_url, service='HOST', minutes=30, **kwargs)[source]
    -

    Schedule downtime for services on a host in Nagios

    - --- - - - -
    Parameters :
      -
    • nagios_url: Hostname of the Nagios server.
    • -
    • service: Service or list of services to schedule down for.
    • -
    • minutes: The number of minutes to schedule downtime -for. Default is 30.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.nagios.SilenceHost(nagios_url, **kwargs)[source]
    -

    Silence all notifications for a given host

    - --- - - - -
    Parameters :
      -
    • nagios_url: Hostname of the Nagios server.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.nagios.UnsilenceHost(nagios_url, **kwargs)[source]
    -

    Unsilence all notifications for a given host

    - --- - - - -
    Parameters :
      -
    • nagios_url: Hostname of the Nagios server.
    • -
    -
    -
    - -
    -
    -

    Polling tasks

    -
    -
    -class taboot.tasks.poller.PollTask(task, sleep_interval=5, max_attempts=6, fail_task=None, **kwargs)[source]
    -

    PollTask. A task that will poll a particular task until the task -succeeds or until max_attempts is reached.

    - --- - - - -
    Parameters :
      -
    • task The task to poll.

      -
    • -
    • -
      sleep_interval The number of seconds to wait before trying
      -

      the task again.

      -
      -
      -
    • -
    • -
      max_attempts The maximum number of attempts that the task
      -

      should be run.

      -
      -
      -
    • -
    • -
      fail_task The task to run when max_attempts has been exhausted.
      -

      If no fail_task is provided, then a simple TaskResult -indicating failure is returned.

      -
      -
      -
    • -
    -
    -
    - -
    -
    -

    Puppet tasks

    -
    -
    -class taboot.tasks.puppet.DeleteLockfile(**kwargs)[source]
    -

    Remove the puppet lock file.

    -
    - -
    -
    -class taboot.tasks.puppet.Disable(**kwargs)[source]
    -

    Run ‘puppetd –disable’.

    -
    - -
    -
    -class taboot.tasks.puppet.Enable(**kwargs)[source]
    -

    Run ‘puppetd –enable’.

    -
    - -
    -
    -class taboot.tasks.puppet.PuppetBase(pcmd, **kwargs)[source]
    -

    Base class for puppet commands

    -
    - -
    -
    -class taboot.tasks.puppet.PuppetTaskResult(task, success=False, output='', ignore_errors=False)[source]
    -

    Wrapper around TaskResult to be able to differentiate in output class

    -
    - -
    -
    -class taboot.tasks.puppet.Run(server='', noop=False, safe=False, **kwargs)[source]
    -

    Run ‘puppetd –test || true’

    - --- - - - - -
    Optional Parameters:
     
      -
    • server: Puppetmaster to run against
    • -
    • noop: If this should be a noop run (Boolean)
    • -
    • safe: Abort if puppet errors (Boolean)
    • -
    -
    -

    See also: taboot.tasks.Puppet.SafeRun()

    -
    - -
    -
    -class taboot.tasks.puppet.SafeRun(server='', **kwargs)[source]
    -

    Run ‘puppetd –test’.

    -

    How is this different from Run? Simple, it will abort everything -if puppet returns with a non-zero exit status.

    -
    - -
    -
    -

    RPM tasks

    -
    -
    -class taboot.tasks.rpm.PostManifest(**kwargs)[source]
    -

    Gather list of installed RPMs and compare against a previously -taken PreManifest

    -
    -
    -run(runner)[source]
    -

    The runner that gets passed in contains state that can be -access via dict-like access. PreManifest uses this to write -to the rpm.Premanifest field. So we’ll check to make sure the -pre-manifest is there by looking for that state.

    -
    - -
    - -
    -
    -class taboot.tasks.rpm.PreManifest(**kwargs)[source]
    -

    Gather list of installed RPMs. A later invocation of PostManifest -is then used to output the RPMs changed during intermediate tasks.

    -
    -
    -run(runner)[source]
    -

    Override the default command.Run to strip the output -from the result because we’re really not interested in the -contents of the pre-manifest; we just want to collect it to -compare later on with PostManifest.

    -
    - -
    - -
    -
    -class taboot.tasks.rpm.RPMBase(pcmd, **kwargs)[source]
    -

    Base class for rpm commands

    -
    - -
    -
    -class taboot.tasks.rpm.RPMTaskResult(task, success=False, output='', ignore_errors=False)[source]
    -

    Wrapper around TaskResult to be able to differentiate in output class

    -
    - -
    -
    -

    Service tasks

    -
    -
    -class taboot.tasks.service.Restart(service, **kwargs)[source]
    -

    Restart a service.

    -
    -
    Arguments:
    -
      -
    • service - The service to restart.
    • -
    -
    -
    -
    - -
    -
    -class taboot.tasks.service.ServiceBase(command, **kwargs)[source]
    -

    Base Class for system service tasks

    -
    - -
    -
    -class taboot.tasks.service.Start(service, **kwargs)[source]
    -

    Start a service.

    -
    -
    Arguments:
    -
      -
    • service - The service to start.
    • -
    -
    -
    -
    - -
    -
    -class taboot.tasks.service.Stop(service, **kwargs)[source]
    -

    Stop a service.

    -
    -
    Arguments:
    -
      -
    • service - The service to stop.
    • -
    -
    -
    -
    - -
    -
    -

    Sleep tasks

    -
    -
    -class taboot.tasks.sleep.Minutes(minutes=1, **kwargs)[source]
    -

    Halt task processing on a node for a certain number of minutes.

    - --- - - - -
    Parameters :
      -
    • minutes: Number of minutes to halt execution for.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.sleep.Seconds(seconds=60, **kwargs)[source]
    -

    Halt task processing on a node for a certain number of seconds.

    - --- - - - -
    Parameters :
      -
    • seconds: Number of seconds to halt execution for.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.sleep.SleepBase(**kwargs)[source]
    -

    Base class for task-queue pausing classes.

    -
    - -
    -
    -class taboot.tasks.sleep.WaitOnInput(message='Press enter to continuen', **kwargs)[source]
    -

    Halt task processing on a node until the user presses enter.

    - --- - - - -
    Parameters :
      -
    • message: The message to prompt on the CLI.
    • -
    -
    -
    - -
    -
    -

    Yum tasks

    -
    -
    -class taboot.tasks.yum.Install(packages, **kwargs)[source]
    -

    Install one or more packages.

    - --- - - - -
    Parameters :
      -
    • packages: A list of packages to install
    • -
    -
    -
    - -
    -
    -class taboot.tasks.yum.Remove(packages, **kwargs)[source]
    -

    Remove one or more packages.

    - --- - - - -
    Parameters :
      -
    • packages: A list of packages to remove.
    • -
    -
    -
    - -
    -
    -class taboot.tasks.yum.Update(packages=[], **kwargs)[source]
    -

    Update one or more packages.

    - --- - - - -
    Parameters :
      -
    • -
      packages: A list of packages to update. If packages is empty,
      -

      update all packages on the system.

      -
      -
      -
    • -
    -
    -
    - -
    -
    -class taboot.tasks.yum.YumBase(packages)[source]
    -

    Base class for all Yum-related tasks.

    -
    - -
    -
    -
    -

    Taboot output

    -
    -
    -class taboot.output.CLIOutput(*args, **kwargs)[source]
    -

    Output a taboot.tasks.TaskResult to the command line -with pretty formatting and colors.

    -

    Creates an instance of a file-like object.

    - --- - - - -
    Parameters :
      -
    • args: all non-keyword arguments.
    • -
    • kwargs: all keyword arguments.
    • -
    -
    -
    - -
    -
    -class taboot.output.EmailOutput(*args, **kwargs)[source]
    -

    Output a taboot.tasks.TaskResult to a logfile.

    -

    Creates an instance of a file-like object.

    - --- - - - -
    Parameters :
      -
    • args: all non-keyword arguments.
    • -
    • kwargs: all keyword arguments.
    • -
    -
    -
    -
    -flush()[source]
    -

    Flushing sends the email with the buffer.

    -
    - -
    - -
    -
    -class taboot.output.HTMLOutput(*args, **kwargs)[source]
    -

    Output a taboot.tasks.TaskResult to the command line -with pretty formatting and colors.

    -
    -
    -_write(result)[source]
    -

    Write a tasks result out to HTML. Handles enhanced stylizing -for task results that support such as:

    - -
    - -

    Creates an instance of a file-like object.

    - --- - - - -
    Parameters :
      -
    • args: all non-keyword arguments.
    • -
    • kwargs: all keyword arguments.
    • -
    -
    -
    - -
    -
    -class taboot.output.LogOutput(*args, **kwargs)[source]
    -

    Output a taboot.tasks.TaskResult to a logfile.

    -

    Creates an instance of a file-like object.

    - --- - - - -
    Parameters :
      -
    • args: all non-keyword arguments.
    • -
    • kwargs: all keyword arguments.
    • -
    -
    -
    - -
    -
    - - -
    -
    -
    -
    -
    -

    Table Of Contents

    - - -

    This Page

    - - - -
    -
    -
    -
    - - - - \ No newline at end of file diff --git a/html/communicate.html b/html/communicate.html index 0053860a4ac..c6260025219 100644 --- a/html/communicate.html +++ b/html/communicate.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • API

    Next topic

    -

    Examples

    +

    Man Pages

    This Page

    • index
    • - next |
    • - - - - - - Development — Taboot v0.4.0 documentation - - - - - - - - - - - -
      -
      -
      -
      - -
      -

      Development

      -
      -

      Tools

      -

      Taboot uses what is becoming a pretty standard and a quite simple -toolset.

      -
      -

      Required Tools

      -
      -
        -
      1. python - The python programming language
      2. -
      3. distutils - Python building and packaging library
      4. -
      5. git - Source code management
      6. -
      7. Func - The Fedora Unified Network Controller
      8. -
      9. an editor or ide that doesn’t suck
      10. -
      -
      -
      -
      -

      Optional Tools

      -

      These should be available via your package manager:

      -
      -
        -
      1. rpm-build - Should be packaged in your RPM distribution
      2. -
      3. pep8 - Check your patches for pep8 compliance with make pep8
      4. -
      -
      -
      -
      -
      -

      Source

      -

      You can clone the repo via git through the following command::

      -
      $ git clone git://git.fedorahosted.org/Taboot.git
      -
      -

      PEP 0008 should be followed. This outlines the highlights that we -require above and beyond. Your code must follow this (or note why it -can’t) before patches will be accepted.

      -
      -
        -
      • global variables should be in ALLCAPPS

        -
      • -
      • attributes should be all lowercase

        -
      • -
      • classes should be CamelCased, filenames should be lowercase.

        -
      • -
      • functions and methods should be lowercase with spaces replaced with _’s:

        -
        def a_test_method(self):
        -    pass
        -
        -
        -
      • -
      • classes should subclass object unless it subclasses a different object:

        -
        class Person(object):
        -    pass
        -
        -class Steve(Person):
        -    pass
        -
        -
        -
      • -
      • 4 spaces per indent level

        -
      • -
      • max length is 79 chars.

        -
      • -
      • single quotes preferred over double quotes.

        -
      • -
      • avoid from x import * imports unless a must use

        -
      • -
      • modules, functions, classes, and methods all must have docstrings - doc strings should be descriptive of what objects, functions, and methods do

        -
      • -
      • document any potentially confusing sections of code

        -
      • -
      • functions and methods should be broken down in such a way as to be easily understood and self contained

        -
      • -
      • use descriptive variable names, only use things like x, y, etc.. when doing integer loops and even then see if you can use more descriptive names

        -
      • -
      -
      -
      -

      Note

      -

      The Makefile included in the root of the source distribution -includes a target called pep8. Run make pep8 to -automatically scan the taboot/ subdirectory for violations.

      -
      -
      -
      -

      Git

      -

      The best way to develop on Taboot is to branch feature sets. For -instance, if you were to add xml deserialization you would want to -branch locally and work on that branch.:

      -
        $  git branch
      -* master
      -  $ git status
      -  # On branch master
      -  nothing to commit (working directory clean)
      -  $ git branch xmldeserialization
      -  $ git checkout xmldeserialization
      -
      -

      Now we pretend you are all finished and have done at least one commit to the xmldeserialization branch.:

      -
      $ git-format-patch master
      -0001-created-initial-classes.patch
      -0002-added-in-documentation.patch
      -$
      -
      -

      You now have patch sets which you can send in for perusal and -acceptance. Open a new ticket in our issue tracker or attach them to -an existing ticket.

      -
      -
      - - -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      This Page

      - - - -
      -
      -
      -
      - - - - \ No newline at end of file diff --git a/html/examples.html b/html/examples.html index 9dd6600cf4b..2fef4f34bba 100644 --- a/html/examples.html +++ b/html/examples.html @@ -23,8 +23,8 @@ - - + +
    • - next |
    • - previous |
    • Ansible v0.0.1 documentation »
    @@ -134,11 +134,11 @@ hendrerit mi tincidunt dui fermentum placerat.

    Previous topic

    -

    Communicate

    +

    Playbooks

    Next topic

    -

    Man Pages

    +

    API

    This Page

    diff --git a/html/index.html b/html/index.html index b7d139efe6b..8976409f57e 100644 --- a/html/index.html +++ b/html/index.html @@ -85,20 +85,52 @@ obvious.

    If you are running python 2.6 on the overlord machine, you will need:

      -
    • paramiko
    • -
    • python-jinja2
    • -
    • PyYAML (if using playbooks)
    • +
    • paramiko
    • +
    • PyYAML
    • +
    • Asciidoc (for building documentation)
    -

    If you are running less than Python 2.6, you will also need

    +

    If you are running less than Python 2.6, you will also need:

      -
    • the Python 2.4 or 2.5 backport of the multiprocessing module
    • -
    • simplejson
    • +
    • The Python 2.4 or 2.5 backport of the multiprocessing module +* Installation and Testing Instructions
    • +
    • simplejson

    On the managed nodes, to use templating, you will need:

      -
    • python-jinja2 (you can install this with ansible)
    • +
    • python-jinja2 (you can install this with ansible)
    -

    Contents:

    +
  • +
    +

    Getting Ansible

    +

    Tagged releases are available as tar.gz files from the Ansible github +project page:

    + +

    You can also clone the git repository yourself and install Ansible in +one of two ways:

    +
    +

    Python Distutils

    +

    You can install Ansible using Python Distutils:

    +
    $ git clone git://github.com/ansible/ansible.git
    +$ cd ./ansible
    +$ sudo make install
    +
    +
    +
    +

    Via RPM

    +

    In the future, pre-built RPMs may be available. Until that time you +can use the make rpm command:

    +
    $ git clone git://github.com/ansible/ansible.git
    +$ cd ./ansible
    +$ make rpm
    +$ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm
    +
    +
    +
    +
    + -
    -
    -

    Indices and tables

    +
    +

    Communicate or Get Involved

    @@ -150,12 +185,18 @@ need:

    • Ansible

      Next topic

      diff --git a/html/install.html b/html/install.html deleted file mode 100644 index 7519c4e86c9..00000000000 --- a/html/install.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - - Install — Taboot v0.4.0 documentation - - - - - - - - - - - -
      -
      -
      -
      - -
      -

      Install

      -
      -

      From Yum

      -

      Taboot is in the Fedora package repositories. Installing it should be as simple as:

      -
      sudo yum install python-taboot
      -
      -
      -
      -

      From Source

      -

      You’ll need these dependencies to build/install:

      -
      -
        -
      1. python - The python programming language along with python-setuptools
      2. -
      3. distutils - Python building and packaging library
      4. -
      -
      -

      Building documentation requires some more deps. These are required -if you’re building RPMs, and optional if you’re installing manually:

      -
      -
        -
      1. python-sphinx
      2. -
      3. asciidoc
      4. -
      5. libxslt
      6. -
      -
      -
      -

      Building RPMs from source

      -

      This is the recommended installation method if you’re pulling Taboot -from source:

      -
      make rpm
      -sudo yum localinstall /path/to/rpm
      -
      -
      -
      -

      Installing From source

      -

      I don’t recommend this. But if you’re dead set on installing -directly from source you still can. This calls the python -distutils installer directly:

      -
      sudo make install
      -
      -

      If you wish to build and install the optional documentation you’ll -need some additional packages so it can be built fully. Install the -documentation with this command:

      -
      sudo make installdocs
      -
      -

      Uninstall everything with:

      -
      sudo make uninstall
      -
      -
      -
      -
      - - -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      This Page

      - - - -
      -
      -
      -
      - - - - \ No newline at end of file diff --git a/html/man.html b/html/man.html index 8e16d106e58..a4aab93a8c4 100644 --- a/html/man.html +++ b/html/man.html @@ -23,7 +23,7 @@ - +
    • - previous |
    • Ansible v0.0.1 documentation »
    @@ -47,13 +47,23 @@

    Man Pages

    Ansile ships with a handfull of manpages to help you on your journey.

    -
    -

    taboot(1)

    -

    View taboot.1

    +
    +

    ansible(1)

    + +
    +
    +

    ansible-modules(5)

    +
    -
    -

    taboot-tasks(5)

    -

    View taboot-tasks.5

    +
    +

    ansible-playbook(5)

    +
    @@ -66,15 +76,16 @@

    Table Of Contents

    Previous topic

    -

    Examples

    +

    Communicate

    This Page

    diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index 83438af1ade..61276a5bc6f 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index 37dfc3c59fc..1f100d55067 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index 36ae3f75139..73067689459 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/playbooks.html b/html/playbooks.html index ca883f51c1e..be57c481344 100644 --- a/html/playbooks.html +++ b/html/playbooks.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
    • - next |
    • Modules

      Next topic

      -

      API

      +

      Examples

      This Page

      • index
      • - next |
      • - - - - - - Python Module Index — Taboot v0.4.0 documentation - - - - - - - - - - - - - - -
        -
        -
        -
        - - -

        Python Module Index

        - -
        - t -
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
         
        - t
        - taboot -
            - taboot.output -
            - taboot.runner -
            - taboot.tasks -
            - taboot.tasks.command -
            - taboot.tasks.mod_jk -
            - taboot.tasks.nagios -
            - taboot.tasks.poller -
            - taboot.tasks.puppet -
            - taboot.tasks.rpm -
            - taboot.tasks.service -
            - taboot.tasks.sleep -
            - taboot.tasks.yum -
        - - -
        -
        -
        -
        -
        - - -
        -
        -
        -
        - - - - \ No newline at end of file diff --git a/html/searchindex.js b/html/searchindex.js index 870a6686bd7..dadd4bb1622 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{represent:[],all:5,code:1,func:1,mcollect:1,global:[],steve:[],signific:[],rhoncu:[0,2,3,4,6,7,8],sleep:[],lacu:[0,2,3,4,6,7,8],abil:[],follow:[],nunc:[0,2,3,4,6,7,8],depend:[],yumbas:[],puppetmaster01:[],intermedi:[],specif:[],send:[],easiest:1,program:[],present:[],text:[],downtim:[],vel:[0,2,3,4,6,7,8],blindingli:1,"case":[],sourc:1,everi:5,string:[],puppettaskresult:[],fals:5,mod_jk:[],util:[],consequat:[0,2,3,4,6,7,8],continuen:[],failur:[],veri:1,fail_task:[],ticket:[],risu:[0,2,3,4,6,7,8],luctu:[0,2,3,4,6,7,8],level:5,list:5,scalar:[],"try":[],item:5,concurr:[],form:5,verif:[],dotnet:5,saltstack:1,setup:1,ornar:[0,2,3,4,6,7,8],x86_64:[],outlin:[],minion:[],sync:[],second:5,design:1,pass:[],eleifend:[0,2,3,4,6,7,8],further:1,even:[],index:1,what:[0,1],diam:[0,2,3,4,6,7,8],compar:[],section:[],abl:1,nec:[0,2,3,4,6,7,8],uniform:[],access:[],delet:[],abbrevi:5,version:[],"new":[],ever:1,method:[],suscipit:[0,2,3,4,6,7,8],deriv:[],absolut:[],eckersberg:5,gener:[],max_attempt:[],sleepbas:[],here:[],leo:[0,2,3,4,6,7,8],bodi:[],shouldn:[],let:[],path:[],along:[],becom:[],valu:5,wait:[],scelerisqu:[0,2,3,4,6,7,8],great:[],premanifest:[],my_email:[],silencehost:[],larger:1,host:[],later:[],queue:[],unsil:[],a_test_method:[],permit:5,action:[],nulla:[0,2,3,4,6,7,8],chang:[],iaculi:[0,2,3,4,6,7,8],via:[],regardless:[5,1],dictionari:5,extra:1,modul:[1,2],prefer:1,releas:[],"boolean":5,instal:1,should:5,kei:5,httpd:[],from:[],describ:[],would:[],commun:[1,3],doubl:[],regist:[],two:5,next:[],connector:[],modjkapi:[],call:[],recommend:[],taken:[],dict:[],sagitti:[0,2,3,4,6,7,8],type:[],until:[],more:1,sort:[],wrapper:[],sleep_interv:[],nequ:[0,2,3,4,6,7,8],relat:[],emailoutput:[],about:5,outputt:[],enhanc:[],accept:[],proceed:[],particular:[],indent:5,compani:[],cach:[],must:5,none:[],dep:[],habitass:[0,2,3,4,6,7,8],phasellu:[0,2,3,4,6,7,8],work:[],can:[5,1],nagio:[],root:[5,1],def:[],control:[],prompt:[],encapsul:[],yamllint:5,ultric:[0,2,3,4,6,7,8],process:[],lock:[],sudo:[],indic:1,knows_oop:5,abort:[],want:1,nullam:[0,2,3,4,6,7,8],alwai:1,differenti:[],multipl:[],newlin:5,puru:[0,2,3,4,6,7,8],lame:5,capistrano:1,anoth:[],write:5,how:0,etiam:[0,2,3,4,6,7,8],sever:5,baseoutput:[],subdirectori:[],verifi:[],simpl:[5,1],updat:[],arcu:[0,2,3,4,6,7,8],max:[],clone:[],invok:[],usabl:1,befor:[],catalog:[],lot:1,puppetd:[],date:[],end:[],suck:[],data:5,parallel:1,man:[1,9],bibendum:[0,2,3,4,6,7,8],attempt:[],sit:[0,2,3,4,6,7,8],favorit:1,turpi:[0,2,3,4,6,7,8],element:5,caus:[],"switch":[],mango:5,combin:5,allow:[],enter:[],callabl:[],order:[],talk:1,dignissim:[0,2,3,4,6,7,8],oper:[],velit:[0,2,3,4,6,7,8],rotat:[],semaphor:[],over:1,orang:5,becaus:1,elit:[0,2,3,4,5,6,7,8],saferun:[],comma:5,lockfil:[],datestamp:[],vita:[0,2,3,4,6,7,8],still:1,paramet:[],shorter:[],overlord:1,group:[],cli:[],fit:1,nagios_url:[],taboot:[1,9],puppetmast:[],yaml:[5,0,1],restart:[],distutil:[],sapien:[0,2,3,4,6,7,8],might:[],non:[0,1,2,3,4,6,7,8],"return":[],greater:[],thei:1,food:5,safe:[],nibh:[0,2,3,4,6,7,8],initi:[],egesta:[0,2,3,4,6,7,8],framework:[],jinja2:1,facilit:[],"_write":[],now:[],logoutput:[],ipsum:[0,2,3,4,6,7,8],hhmmss:[],subdomain:[],name:5,config:1,viverra:[0,2,3,4,6,7,8],revers:[],authent:[],porta:[0,2,3,4,6,7,8],separ:5,easili:[],exampl:[1,8],each:5,puppet:[],notif:[],metu:[0,2,3,4,6,7,8],clioutput:[],replac:[],auctor:[0,2,3,4,6,7,8],enim:[0,2,3,4,6,7,8],continu:[],realli:5,backport:1,expect:[],our:[],happen:[],beyond:[],event:[],special:[],out:5,variabl:[],vivamu:[0,2,3,4,6,7,8],network:[],space:[],ajp:[],open:[],deletelockfil:[],content:1,print:[],correct:[5,1],proxi:[],hendrerit:[0,2,3,4,6,7,8],contain:[],given:[],standard:[],reason:[],base:1,tempu:[0,2,3,4,6,7,8],put:[],org:[],pretend:[],molli:[0,2,3,4,6,7,8],bash:1,care:1,vestibulum:[0,2,3,4,6,7,8],pyyaml:1,deletedockfil:[],thread:[],maecena:[0,2,3,4,6,7,8],could:[],omit:[],thing:1,length:[],xmldeseri:[],outsid:[],principl:1,confus:[],support:[],user:1,origin:[],softwar:1,rpmtaskresult:[],obviou:1,prevent:[],onc:[],misc:[],number:[],placehold:[],mai:[],instruct:[],done:[],messag:[],kerbero:[],miss:[],differ:1,"long":1,script:[5,0,1],associ:5,interact:[],system:1,least:[],grow:1,mercuri:[],attach:[],silenc:[],master:[],toolset:[],molesti:[0,2,3,4,6,7,8],john:5,"final":5,includ:[],shell:[],option:5,tool:1,setuptool:[],specifi:5,quam:[0,2,3,4,6,7,8],taskresult:[],checkout:[],enablealert:[],than:1,serv:1,kind:[],target:[],keyword:[],provid:5,remov:[],sollicitudin:[0,2,3,4,6,7,8],zero:[],structur:5,banana:5,faucibu:[0,2,3,4,6,7,8],balanc:[],were:[],minut:[],uses_cv:5,fail_ev:[],pre:[],behavior:[],runner:[],respons:[],ani:1,ant:[0,2,3,4,6,7,8],download:[],have:1,tabl:1,need:[5,0,1],seen:[],tellu:[0,2,3,4,6,7,8],paramiko:1,issu:[],engin:[],squar:5,equival:[],pep8:[],self:[],violat:[],note:[],also:[5,0,1],without:[],massa:[0,2,3,4,6,7,8],take:1,which:1,environ:[],schedul:[],noth:[],singl:[],pulvinar:[0,2,3,4,6,7,8],jkmanag:[],simplifi:[],begin:5,sure:[],unless:[],distribut:1,deploy:1,buffer:[],glob:[],object:[],reach:[],most:5,employe:5,plan:[],"class":[],porttitor:[0,2,3,4,6,7,8],strawberri:5,don:[],url:[],doc:1,gather:[],cover:[],doe:[],sodal:[0,2,3,4,6,7,8],ext:[],bracket:5,yum:[],clean:[],dolor:[0,2,3,4,6,7,8],pcmd:[],modularli:1,awesom:1,ullamcorp:[0,2,3,4,6,7,8],show:[],blandit:[0,2,3,4,6,7,8],syntax:[5,0],directli:[],session:[],playbook:[1,4],hack:1,funcerrortask:[],find:[],help:9,xml:[],current:[],onli:1,explicitli:[],acquir:[],pretti:[],paranoid:[],configur:1,apach:[],state:[],accumsan:[0,2,3,4,6,7,8],consectetur:[0,2,3,4,6,7,8],suppos:[],templat:1,variu:[0,2,3,4,6,7,8],local:[],variou:1,get:[5,0,1],between:5,stop:[],repo:[],ssh:1,progress:[],malesuada:[0,2,3,4,6,7,8],requir:1,perus:[],nisi:[0,2,3,4,6,7,8],enabl:[],nisl:[0,2,3,4,6,7,8],patch:[],unsilencehost:[],bad:[],cra:[0,2,3,4,6,7,8],common:[],orci:[0,2,3,4,6,7,8],through:[],wrote:1,view:9,set:[],elimin:1,displai:[],see:[5,0,1],sed:[0,2,3,4,6,7,8],result:[],arg:[],sem:[0,2,3,4,6,7,8],charact:5,best:[],statu:[],varri:[],pattern:[1,6],someth:1,www01:[],www02:[],www03:[],written:1,my_boss:[],installdoc:[],"import":[],loadbalanc:[],attribut:[],elementum:[0,2,3,4,6,7,8],manpag:9,screen:[],handful:9,aspir:1,job:5,magna:[0,2,3,4,6,7,8],amet:[0,2,3,4,6,7,8],addit:[5,1],last:[],plugin:1,inrot:[],logfil:[],disablealert:[],against:[],tempor:[0,2,3,4,6,7,8],etc:1,instanc:[],expand_glob:[],com:[],proin:[0,2,3,4,6,7,8],color:[],foobar:[],format:[],period:[],polltask:[],diff:[],poll:[],rpm:[],matti:[0,2,3,4,6,7,8],backend:[],dui:[0,2,3,4,6,7,8],java:[],pretium:[0,2,3,4,6,7,8],addition:[],morbi:[0,2,3,4,6,7,8],three:[],been:[],ran:[],trigger:[],leav:[],interest:[],basic:[5,1],aliquam:[0,2,3,4,6,7,8],feugiat:[0,2,3,4,6,7,8],infrastructur:1,dry:[],noop:[],postmanifest:[],rubi:5,search:1,vulput:[0,2,3,4,6,7,8],argument:[],likes_emac:5,understand:0,togeth:[],donec:[0,2,3,4,6,7,8],minim:1,repetit:[],those:[],emploi:5,"char":[],save:[],tortor:[0,2,3,4,6,7,8],look:[],enablenotif:[],packag:[],servic:[],defin:[],"while":1,overrid:[],unifi:[],abov:[],error:[],laoreet:[0,2,3,4,6,7,8],invoc:[],ero:[0,2,3,4,6,7,8],localinstal:[],loop:[],scan:[],dictum:[0,2,3,4,6,7,8],stdout:[],basetask:[],them:[],erat:[0,2,3,4,6,7,8],kwarg:[],conf:[],fedorahost:[],ship:9,"__init__":[],halt:[],parent:[],adipisc:[0,2,3,4,6,7,8],develop:5,fedora:[],author:[],perform:[],make:[],platea:[0,2,3,4,6,7,8],venenati:[0,2,3,4,6,7,8],same:5,member:5,python:[5,1],html:[],proxyjava02:[],proxyjava01:[],document:0,ansibl:[5,0,1],complet:0,exhaust:[],finish:[],http:[],hostnam:[],taskrunn:[],pick:1,effect:[],box:1,alert:[],remot:1,fruit:5,fusc:[0,2,3,4,6,7,8],extrem:1,qui:[0,2,3,4,6,7,8],placerat:[0,2,3,4,6,7,8],expand:[],built:[],task:[1,9],els:1,whole:1,inherit:[],person:[],client:1,command:1,thi:[5,1],produc:[],libxslt:[],everyth:[],identifi:[],paus:[],just:[],less:1,skill:5,poller:[],languag:[5,1],previous:[],web:[],versu:1,field:[],run_task:[],hac:[0,2,3,4,6,7,8],makefil:[],except:[],add:[],other:[],overview:5,input:[],subsequ:[],transit:[],build:1,ignore_error:[],around:[],xmlrpc:[],mayb:[],handl:[],howto:[],multiprocess:1,tincidunt:[0,2,3,4,6,7,8],camelcas:[],know:5,press:[],scheduledowntim:[],servicebas:[],daemon:1,pure:[],like:5,success:[],arbitrari:[],manual:[],integ:[0,2,3,4,6,7,8],manifest:[],collect:[],api:[1,7],necessari:[],choic:1,output:[],page:[5,1,9],yyyi:[],node:1,www:[],right:[],some:[],back:[],destdir:[],certain:[],understood:[],litter:[],fabric:1,htmloutput:[],respect:[],server:1,librari:[],allcapp:[],forcibl:[],confirm:[],augu:[0,2,3,4,6,7,8],avoid:1,normal:[],pep:[],ultrici:[0,2,3,4,6,7,8],subclass:[],substitut:[],tracker:[],exit:[],prod:[],machin:1,run:1,power:1,quit:1,waitoninput:[],to_addr:[],docstr:[],broken:[],step:1,repositori:[],fulli:[],major:[],"super":1,aenean:[0,2,3,4,6,7,8],panel:[],sshd:1,nagiosbas:[],justo:[0,2,3,4,6,7,8],libero:[0,2,3,4,6,7,8],surround:5,manag:1,quisqu:[0,2,3,4,6,7,8],act:[],commit:[],disabl:[],block:[],own:1,feli:[0,2,3,4,6,7,8],primarili:[],automat:[],suspendiss:[0,2,3,4,6,7,8],down:[],empti:[],strip:[],your:[5,1,9],per:[],praesent:[0,2,3,4,6,7,8],git:[],complianc:[],wai:5,bsb:[],execut:1,fast:1,custom:[],avail:[],start:[5,0,1],appl:5,interfac:[],editor:[],fc14:[],"var":[],styliz:[],"function":[],simplejson:1,eget:[0,2,3,4,6,7,8],forc:[],lint:5,interdum:[0,2,3,4,6,7,8],jbossa:[],loborti:[0,2,3,4,6,7,8],dead:1,uninstal:[],line:5,"true":5,tristiqu:[0,2,3,4,6,7,8],pull:[],succe:[],possibl:[],whether:1,wish:1,jboss:[],maximum:[],record:5,lowercas:[],highlight:[],problem:1,fridg:[],email:[],connect:1,flush:[],featur:[],tasti:5,creat:1,"int":[],lectu:[0,2,3,4,6,7,8],dure:[],rpmbase:[],filenam:[],doesn:1,repres:5,ansil:9,exist:1,file:5,request:[],mauri:[0,2,3,4,6,7,8],curl:[],check:[],urna:[0,2,3,4,6,7,8],conval:[0,2,3,4,6,7,8],echo:[],again:[],outofrot:[],successfulli:[],quot:[],from_addr:[],when:[],detail:[],nam:[0,2,3,4,6,7,8],"default":1,valid:[],preflight:[],futur:[],branch:[],test:[],php5:[],you:[5,0,9,1],roll:[],clojur:1,deseri:[],dapibu:[0,2,3,4,6,7,8],journei:9,intend:[],gravida:[0,2,3,4,6,7,8],tabootscript:[],why:1,asciidoc:[],est:[0,2,3,4,6,7,8],log:[],disablenotif:[],aliquet:[0,2,3,4,6,7,8],lorem:[0,2,3,4,6,7,8],dictumst:[0,2,3,4,6,7,8],sphinx:[],rutrum:[0,2,3,4,6,7,8],tomcat:[],directori:[],descript:[],puppetbas:[],rule:[],functask:[],place:[],ignor:[],potenti:[],time:1,far:1,ligula:[0,2,3,4,6,7,8],fermentum:[0,2,3,4,6,7,8],pellentesqu:[0,2,3,4,6,7,8]},objtypes:{},titles:["Getting Started","Ansible","Modules","Communicate","Playbooks","YAML Scripts","Patterns","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","communicate","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:5,code:1,donec:[0,2,3,4,6,7,8],mcollect:1,rhoncu:[0,2,3,4,6,7,8],lacu:[0,2,3,4,6,7,8],nunc:[0,2,3,4,6,7,8],vel:[0,2,3,4,6,7,8],blindingli:1,sourc:1,everi:5,fals:5,consequat:[0,2,3,4,6,7,8],veri:1,risu:[0,2,3,4,6,7,8],luctu:[0,2,3,4,6,7,8],level:5,list:[5,1],vivamu:[0,2,3,4,6,7,8],item:5,dotnet:5,saltstack:1,phasellu:[0,2,3,4,6,7,8],ornar:[0,2,3,4,6,7,8],second:5,design:1,eleifend:[0,2,3,4,6,7,8],further:1,index:[],what:[0,1],diam:[0,2,3,4,6,7,8],abl:1,nec:[0,2,3,4,6,7,8],abbrevi:5,ever:1,suscipit:[0,2,3,4,6,7,8],eckersberg:5,leo:[0,2,3,4,6,7,8],valu:5,aliquam:[0,2,3,4,6,7,8],scelerisqu:[0,2,3,4,6,7,8],search:[],larger:1,adipisc:[0,2,3,4,6,7,8],venenati:[0,2,3,4,6,7,8],permit:5,nulla:[0,2,3,4,6,7,8],iaculi:[0,2,3,4,6,7,8],via:1,regardless:[5,1],dictionari:5,accumsan:[0,2,3,4,6,7,8],extra:1,modul:[1,2,9],prefer:1,qui:[0,2,3,4,6,7,8],api:[1,7],instal:1,from:1,tar:1,commun:[1,3],visit:1,two:[5,1],noarch:1,sagitti:[0,2,3,4,6,7,8],until:1,more:1,nequ:[0,2,3,4,6,7,8],sshd:1,indic:[],easiest:1,must:5,join:1,habitass:[0,2,3,4,6,7,8],setup:1,can:[5,1],ero:[0,2,3,4,6,7,8],root:[5,1],employe:5,yamllint:5,ultric:[0,2,3,4,6,7,8],sudo:1,templat:1,knows_oop:5,tag:1,want:1,nullam:[0,2,3,4,6,7,8],alwai:1,newlin:5,puru:[0,2,3,4,6,7,8],lame:5,capistrano:1,write:5,how:0,etiam:[0,2,3,4,6,7,8],simpl:[5,1],arcu:[0,2,3,4,6,7,8],clone:1,usabl:1,tristiqu:[0,2,3,4,6,7,8],mai:1,data:5,parallel:1,man:[1,9],github:1,sit:[0,2,3,4,6,7,8],favorit:1,turpi:[0,2,3,4,6,7,8],element:5,issu:1,mango:5,combin:5,talk:1,help:9,over:1,orang:5,becaus:1,elit:[0,2,3,4,5,6,7,8],rpmbuild:1,comma:5,vita:[0,2,3,4,6,7,8],still:1,overlord:1,group:1,fit:1,yaml:[5,0,1],infrastructur:1,mail:1,sapien:[0,2,3,4,6,7,8],non:[0,1,2,3,4,6,7,8],thei:1,food:5,nibh:[0,2,3,4,6,7,8],egesta:[0,2,3,4,6,7,8],jinja2:1,choic:1,multiprocess:1,name:5,config:1,viverra:[0,2,3,4,6,7,8],porta:[0,2,3,4,6,7,8],separ:5,each:5,metu:[0,2,3,4,6,7,8],auctor:[0,2,3,4,6,7,8],realli:5,backport:1,connect:1,out:5,network:1,content:1,correct:[5,1],hendrerit:[0,2,3,4,6,7,8],base:1,tempu:[0,2,3,4,6,7,8],releas:1,molli:[0,2,3,4,6,7,8],bash:1,care:1,vestibulum:[0,2,3,4,6,7,8],pyyaml:1,indent:5,maecena:[0,2,3,4,6,7,8],thing:1,principl:1,fusc:[0,2,3,4,6,7,8],softwar:1,obviou:1,yourself:1,instruct:1,"long":1,enim:[0,2,3,4,6,7,8],differ:1,script:[5,0,1],associ:5,system:1,grow:1,molesti:[0,2,3,4,6,7,8],john:5,banana:5,option:5,tool:1,specifi:5,quam:[0,2,3,4,6,7,8],than:1,serv:1,provid:5,sollicitudin:[0,2,3,4,6,7,8],structur:5,charact:5,faucibu:[0,2,3,4,6,7,8],uses_cv:5,pre:1,ani:1,ant:[0,2,3,4,6,7,8],download:1,have:1,tabl:[],need:[5,0,1],tellu:[0,2,3,4,6,7,8],paramiko:1,built:1,also:[5,0,1],client:1,massa:[0,2,3,4,6,7,8],build:1,which:1,pulvinar:[0,2,3,4,6,7,8],begin:5,distribut:1,deploy:1,most:5,why:1,porttitor:[0,2,3,4,6,7,8],doc:1,lectu:[0,2,3,4,6,7,8],sodal:[0,2,3,4,6,7,8],likes_emac:5,clojur:1,dolor:[0,2,3,4,6,7,8],someth:1,awesom:1,laoreet:[0,2,3,4,6,7,8],blandit:[0,2,3,4,6,7,8],syntax:[5,0],playbook:[1,4,9],hack:1,involv:1,onli:1,configur:1,should:5,consectetur:[0,2,3,4,6,7,8],variu:[0,2,3,4,6,7,8],variou:1,get:[5,0,1],bibendum:[0,2,3,4,6,7,8],ssh:1,malesuada:[0,2,3,4,6,7,8],requir:1,uvh:1,nisi:[0,2,3,4,6,7,8],nisl:[0,2,3,4,6,7,8],remot:1,cra:[0,2,3,4,6,7,8],orci:[0,2,3,4,6,7,8],wrote:1,view:[1,9],elimin:1,see:[5,0,1],sed:[0,2,3,4,6,7,8],sem:[0,2,3,4,6,7,8],project:1,manpag:9,pattern:[1,6],modularli:1,written:1,languag:[5,1],between:5,irc:1,elementum:[0,2,3,4,6,7,8],kei:5,handful:9,aspir:1,job:5,magna:[0,2,3,4,6,7,8],amet:[0,2,3,4,6,7,8],addit:[5,1],plugin:1,tempor:[0,2,3,4,6,7,8],etc:1,placerat:[0,2,3,4,6,7,8],com:1,proin:[0,2,3,4,6,7,8],overview:5,rpm:1,matti:[0,2,3,4,6,7,8],dui:[0,2,3,4,6,7,8],pretium:[0,2,3,4,6,7,8],morbi:[0,2,3,4,6,7,8],suspendiss:[0,2,3,4,6,7,8],basic:[5,1],feugiat:[0,2,3,4,6,7,8],box:1,rubi:5,vulput:[0,2,3,4,6,7,8],understand:0,pellentesqu:[0,2,3,4,6,7,8],func:1,emploi:5,tortor:[0,2,3,4,6,7,8],"while":1,dictum:[0,2,3,4,6,7,8],erat:[0,2,3,4,6,7,8],sever:5,develop:5,minim:1,make:1,platea:[0,2,3,4,6,7,8],same:5,member:5,python:[5,1],document:[0,1],ansibl:[5,0,9,1],complet:0,pick:1,fruit:5,user:1,extrem:1,distutil:1,squar:5,whole:1,exampl:[1,8],command:1,thi:[5,1],execut:1,less:1,skill:5,ligula:[0,2,3,4,6,7,8],versu:1,hac:[0,2,3,4,6,7,8],simplejson:1,els:1,take:1,ipsum:[0,2,3,4,6,7,8],tincidunt:[0,2,3,4,6,7,8],know:5,daemon:1,like:5,integ:[0,2,3,4,6,7,8],server:1,"boolean":5,velit:[0,2,3,4,6,7,8],manag:1,dead:1,est:[0,2,3,4,6,7,8],avoid:1,ultrici:[0,2,3,4,6,7,8],tracker:1,machin:1,run:1,power:1,quit:1,step:1,repositori:1,"super":1,aenean:[0,2,3,4,6,7,8],about:5,justo:[0,2,3,4,6,7,8],libero:[0,2,3,4,6,7,8],surround:5,page:[5,1,9],quisqu:[0,2,3,4,6,7,8],own:1,"final":5,your:[5,1,9],praesent:[0,2,3,4,6,7,8],git:1,fabric:1,wai:[5,1],interdum:[0,2,3,4,6,7,8],fast:1,avail:1,start:[5,0,1],appl:5,augu:[0,2,3,4,6,7,8],lot:1,form:5,eget:[0,2,3,4,6,7,8],lint:5,loborti:[0,2,3,4,6,7,8],ullamcorp:[0,2,3,4,6,7,8],line:5,"true":5,freenod:1,strawberri:5,whether:1,wish:1,record:5,problem:1,tasti:5,creat:1,doesn:1,repres:5,ansil:9,exist:1,file:[5,1],mauri:[0,2,3,4,6,7,8],ship:9,urna:[0,2,3,4,6,7,8],conval:[0,2,3,4,6,7,8],googl:1,nam:[0,2,3,4,6,7,8],"default":1,bracket:5,futur:1,dignissim:[0,2,3,4,6,7,8],test:1,you:[5,0,9,1],node:1,dapibu:[0,2,3,4,6,7,8],journei:9,gravida:[0,2,3,4,6,7,8],asciidoc:1,feli:[0,2,3,4,6,7,8],aliquet:[0,2,3,4,6,7,8],lorem:[0,2,3,4,6,7,8],dictumst:[0,2,3,4,6,7,8],rutrum:[0,2,3,4,6,7,8],time:1,far:1,fermentum:[0,2,3,4,6,7,8]},objtypes:{},titles:["Getting Started","Ansible","Modules","Communicate","Playbooks","YAML Scripts","Patterns","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","communicate","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file diff --git a/html/tasks.html b/html/tasks.html deleted file mode 100644 index 5d2e89e5f7d..00000000000 --- a/html/tasks.html +++ /dev/null @@ -1,1304 +0,0 @@ - - - - - - - - - Tasks — Taboot v0.4.0 documentation - - - - - - - - - - - -
        -
        -
        -
        - -
        -

        Tasks

        -

        All the built-in tasks are documented here.

        -
        -

        Command

        - -

        The command module is used to execute arbitrary commands on a -remote host. The command module has one callable class, that is -the Run class.

        -
        -

        Run

        -
          -
        • API: taboot.tasks.command.Run
        • -
        • Keys
            -
          • command
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: The command to run
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - command.Run:
        -        command: command-to-run
        -
        -    # Abbreviated form
        -    - command.Run: {command: command-to-run}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - command.Run: {command: yum -y install httpd}
        -
        -
        -
        -
        -

        Service

        - -

        The service module provides interface classes to the system -service command.

        -
        -

        Start

        -
          -
        • API: taboot.tasks.service.Start
        • -
        • Keys
            -
          • service
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: The service to start
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - service.Start:
        -        service: service-to-start
        -
        -    # Abbreviated form
        -    - service.Start: {service: service-to-start}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - service.Start: {service: httpd}
        -
        -
        -
        -

        Stop

        -
          -
        • API: taboot.tasks.service.Stop
        • -
        • Keys
            -
          • service
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: The service to stop
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - service.Stop:
        -        service: service-to-stop
        -
        -    # Abbreviated form
        -    - service.Stop: {service: service-to-stop}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - service.Stop: {command: httpd}
        -
        -
        -
        -

        Restart

        -
          -
        • API: taboot.tasks.service.Restart
        • -
        • Keys
            -
          • service
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: The service to restart
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - service.Restart:
        -        service: service-to-restart
        -
        -    # Abbreviated form
        -    - service.Restart: {service: service-to-restart}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - service.Restart: {command: httpd}
        -
        -
        -
        -
        -

        Puppet

        - -

        The puppet module provides a uniform way interact with the puppet -service. This includes like enabling/disabling the daemon and manually -forcing a catalog run.

        -
        -

        Run

        -
          -
        • API: taboot.tasks.puppet.Run
        • -
        • Keys
            -
          • server
              -
            • Type: String
            • -
            • Default: As specified in /etc/puppet/puppet.conf
            • -
            • Required: No (has default)
            • -
            • Description: Puppet Master to run against
            • -
            -
          • -
          • noop
              -
            • Type: Boolean
            • -
            • Default: False
            • -
            • Required: No (has default)
            • -
            • Description: Make this a “noop”, or “dry-run”
            • -
            -
          • -
          -
        • -
        -
        -

        Note

        -

        See the YAML Basics document for notes on -specifying boolean values.

        -
        -

        The Run class triggers a manual catalog run. This is equivalent to -puppetd --test. This will not abort the release if puppet -returns with a non-zero exit code. You should check out the SafeRun -class if you’re paranoid about that.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - puppet.Run
        -
        -    # Run against a different puppet master
        -    - puppet.Run: {server: my.puppet.server}
        -    # No operation run
        -    - puppet.Run: {noop: true}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - puppet.Run
        -
        ----
        -- hosts:
        -    - www*
        -  tasks:
        -    - puppet.Run: {noop: true, server: puppetmaster01.util.foobar.com}
        -
        -

        -Changed in version 0.2.11: Absolutely will not abort the release if puppet returns -non-zero.

        -

        -Changed in version 0.4.0: Added server and noop keys.

        -
        -
        -

        SafeRun

        - -

        The SafeRun class triggers a manual catalog run. This is -equivalent to puppetd --test. This will abort the release if -puppet returns with a non-zero exit code on systems running puppet -2.6+. You should check out the Run class if you have reasons to -ignore possible puppet errors.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - puppet.SafeRun
        -
        -    # Run against a different puppet master
        -    - puppet.SafeRun: {server: my.puppet.server}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - puppet.SafeRun
        -
        -

        -New in version 0.2.11.

        -
        -
        -

        Enable

        - -

        The Enable class reverses the effect of the disable -class. This removes the lockfile that prevented any automatic or -manual catalog runs from happening before. This is equivalent to -puppetd --enable.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - puppet.Enable
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - puppet.Enable
        -
        -
        -
        -

        Disable

        - -

        The Disable class creates a lockfile that prevents puppet from -performing any manual or automatic catalog runs. This is equivalent to -puppetd --disable.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - puppet.Disable
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - puppet.Disable
        -
        -
        -
        -

        DeleteLockfile

        - -

        The DeleteLockfile class forcibly deletes a lockfile. You -shouldn’t normally need this but from time to time you may find it -necessary. Try and use the Enable class when at all possible.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - puppet.DeleteLockfile
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - puppet.DeleteLockfile
        -
        -
        -
        -
        -

        Nagios

        -
          -
        • API: taboot.tasks.nagios
        • -
        • Classes
            -
          • EnableNotifications
          • -
          • DisableNotifications
          • -
          • ScheduleDowntime
          • -
          • SilenceHost
          • -
          • UnsilenceHost
          • -
          -
        • -
        -

        The nagios task lets you handle notification and set downtime -from your Taboot scripts.

        -

        -Changed in version 0.2.14: The nagios task has switched from a CURL backend using Kerberos -authentication to a pure Func backend. Significant changes include:

          -
        • Previously this task specified the nagios_url key as a URL, -it should now be given as the hostname of the Nagios server. To -facilitate transitions we automatically correct URLs into -hostnames. In the future the name of this key may change.
        • -
        • Previously the service key was defined as a scalar, like “HTTP” -or “JBOSS”. This version accepts that key as a scalar OR as a -list and “does the right thing” in each case.
        • -
        -

        -

        The host identified by the nagios_url key must be a registered -Func minion and it must have the new Func Nagios module installed. You -can download it from the Func git repo (in the func/minion/modules/ -directory) if it is missing from your installation.

        -
        -

        See also

        -

        Func git repo

        -
        -
        -

        EnableAlerts

        - -

        This class enables host alerts for the current host.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - nagios.EnableAlerts:
        -        nagios_url: nagios-hostname
        -
        -    # Abbreviated form
        -    - nagios.EnableAlerts: {nagios_url: nagios-hostname}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - nagios.EnableAlerts: {nagios_url: nagios.example.com}
        -
        -
        -
        -

        DisableAlerts

        - -

        This class disables host alerts for the current host.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - nagios.DisableAlerts:
        -        nagios_url: nagios-hostname
        -
        -    # Abbreviated form
        -    - nagios.DisableAlerts: {nagios_url: nagios-hostname}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - nagios.DisableAlerts: {nagios_url: nagios.example.com}
        -
        -
        -
        -

        ScheduleDowntime

        -
          -
        • API: taboot.tasks.nagios.ScheduleDowntime
        • -
        • Keys
            -
          • nagios_url
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: Hostname of the nagios server.
            • -
            -
          • -
          • service
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: No (has default)
            • -
            • Description: The name of the service to be scheduled for downtime.
            • -
            -
          • -
          • minutes
              -
            • Type: Integer
            • -
            • Default: 30
            • -
            • Required: No (has default)
            • -
            • Description: The number of minutes to schedule downtime for.
            • -
            -
          • -
          -
        • -
        -

        -Changed in version 0.2.14: Default for the minutes key changed from 15 to 30 minutes.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - nagios.ScheduleDowntime:
        -        nagios_url: nagios-hostname
        -        service: service-to-schedule
        -        minutes: length-of-downtime
        -
        -    # Abbreviated form
        -    - nagios.ScheduleDowntime: {nagios_url: nagios-hostname, service: service-to-schedule, minutes: length-of-downtime}
        -
        -

        Example #1:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - nagios.ScheduleDowntime:
        -        nagios_url: nagios.example.com
        -        service: httpd
        -        minutes: 60
        -
        -

        Example #2:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - nagios.ScheduleDowntime:
        -        nagios_url: nagios.example.com
        -        service: [httpd, git, XMLRPC]
        -        minutes: 60
        -
        -
        -
        -

        SilenceHost

        -
          -
        • API: taboot.tasks.nagios.SilenceHost
        • -
        • Keys
            -
          • nagios_url
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: Hostname of the nagios server.
            • -
            -
          • -
          -
        • -
        -

        This class disables all host and service notifications for the current -host.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - nagios.SilenceHost:
        -        nagios_url: nagios-hostname
        -
        -    # Abbreviated form
        -    - nagios.SilenceHost: {nagios_url: nagios-hostname}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - nagios.SilenceHost: {nagios_url: nagios.example.com}
        -
        -

        -New in version 0.3.2.

        -
        -
        -

        UnsilenceHost

        - -

        This class enables all host and service notifications for the current -host.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - nagios.UnsilenceHost:
        -        nagios_url: nagios-hostname
        -
        -    # Abbreviated form
        -    - nagios.UnsilenceHost: {nagios_url: nagios-hostname}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - nagios.UnsilenceHost: {nagios_url: nagios.example.com}
        -
        -

        -New in version 0.3.2.

        -
        -
        -
        -

        Sleep

        - -

        The sleep module is used to halt further task processing for a -specified period of time, or until the user presses enter (as in the -case of WaitOnInput).

        -

        You might use this if you’ve rolled the services on a node and need to -let it build up or sync a cache before you put it back into rotation.

        -

        WaitOnInput can be used when user verification needs to be performed -before proceeding on to another node.

        -
        -

        Seconds

        -
          -
        • API: taboot.tasks.sleep.Seconds
        • -
        • Keys
            -
          • seconds
              -
            • Type: Integer
            • -
            • Default: 60
            • -
            • Required: No (has default)
            • -
            • Description: The number of seconds to halt
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - sleep.Seconds:
        -        seconds: number-of-seconds
        -
        -    # Abbreviated form
        -    - sleep.Seconds: {seconds: number-of-seconds}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - service.Restart: {service: jbossas}
        -    - sleep.Seconds: {seconds: 300}
        -
        -
        -
        -

        Minutes

        -
          -
        • API: taboot.tasks.sleep.Minutes
        • -
        • Keys
            -
          • minutes
              -
            • Type: Integer
            • -
            • Default: 1
            • -
            • Required: No (has default)
            • -
            • Description: The number of minutes to halt
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - sleep.Minutes:
        -        minutes: number-of-minutes
        -
        -    # Abbreviated form
        -    - sleep.Minutes: {minutes: number-of-minutes}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - java*
        -  tasks:
        -    - service.Restart: {service: jbossas}
        -    - sleep.Minutes: {minutes: 5}
        -
        -
        -
        -

        WaitOnInput

        -
          -
        • API: taboot.tasks.sleep.WaitOnInput
        • -
        • Keys
            -
          • message
              -
            • Type: String
            • -
            • Default: Press enter to continue
            • -
            • Required: No (has default)
            • -
            • Description: The message to prompt the user with
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - sleep.WaitOnInput:
        -        message: message-to-prompt-user
        -
        -    # Abbreviated form
        -    - sleep.WaitOnInput: {message: message-to-prompt-user}
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - java*
        -  tasks:
        -    - service.Restart: {service: jbossas}
        -    - sleep.WaitOnInput
        -
        -

        -New in version 0.3.2.

        -
        -
        -
        -

        Yum

        - -

        The yum module lets you perform common tasks right in your -Taboot scripts.

        -
        -

        Install

        -
          -
        • API: taboot.tasks.yum.Install
        • -
        • Keys
            -
          • packages
              -
            • Type: List of strings
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: Names of the packages to install
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - yum.Install:
        -        packages:
        -            - package-name
        -
        -    # Abbreviated form
        -    - yum.Install: {packages: [package-name]}
        -
        -

        Example 1:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - yum.Install: {packages: [httpd, php5, screen]}
        -
        -

        Example 2:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - yum.Install:
        -        packages:
        -            - httpd
        -            - php5
        -            - screen
        -
        -
        -
        -

        Remove

        -
          -
        • API: taboot.tasks.yum.Remove
        • -
        • Keys
            -
          • packages
              -
            • Type: List of strings
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: Names of packages to remove
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - yum.Remove:
        -        packages:
        -            - package-name
        -
        -    # Abbreviated form
        -    - yum.Remove: {packages: [package-name]}
        -
        -

        Example 1:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - yum.Remove: {packages: [httpd, php5, screen]}
        -
        -

        Example 2:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - yum.Remove:
        -        packages:
        -            - httpd
        -            - php5
        -            - screen
        -
        -
        -
        -

        Update

        -
          -
        • API: taboot.tasks.yum.Update
        • -
        • Keys
            -
          • packages
              -
            • Type: List of strings
            • -
            • Default: Update all packages
            • -
            • Required: No (has default)
            • -
            • Description: Names of packages to update
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - yum.Update:
        -        packages:
        -            - package-name
        -
        -    # Abbreviated form
        -    - yum.Update: {packages: [package-name]}
        -
        -

        Example 1:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - yum.Update: {packages: [httpd, php5, screen]}
        -
        -

        Example 2:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - yum.Update:
        -        packages:
        -            - httpd
        -            - php5
        -            - screen
        -
        -
        -
        -
        -

        RPM

        - -

        The RPM module provides two utility classes used to create a log -of any RPMs installed on the target system that were changed during -the Taboot run.

        -
        -

        PreManifest

        - -

        The PreManifest class is best ran at the beginning of a tasks -block. When ran it saves the output of rpm -qa | sort on each of -the target machine locally. This is only useful if the -PostManifest class is called at the end of the Taboot script.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - rpm.PreManifest
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - rpm.PreManifest
        -    - puppet.Run
        -    - rpm.PostManifest
        -
        -
        -
        -

        PostManifest

        - -

        The PostManifest class is best ran at the end of a tasks -block. When ran it will show a diff of the packages installed between -when PreManifest was ran and when PostManifest is called.

        -

        This is really useful for checking that planned updates are happening -in a Taboot script if they are supposed to be. There might be -package updates happening if you’re doing a manual puppet catalog run, -or are triggering some other kind of automatic package updating -utility. Maybe your script is as simple as a PreManifest, then a -command.Run that just runs yum -y update, and ends with a -PostManifest.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - rpm.PostManifest
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - rpm.PreManifest
        -    - puppet.Run
        -    - rpm.PostManifest
        -
        -
        -
        -

        Example PostManifest Output

        -

        These classes might be described best by showing a complete example.

        -

        Here is the YAML file (mercurial-update.yaml) that’s going to be -run:

        -
        ---
        -- hosts:
        -    - fridge
        -  tasks:
        -    - rpm.PreManifest
        -    - yum.Update: {packages: [mercurial]}
        -    - rpm.PostManifest
        -
        -

        This is what the output looks like. The last two lines show the -packages that changed during the Taboot run:

        -
        [root@fridge yamls]# taboot mercurial-update.yaml
        -fridge.bsb.local:
        -2011-04-04 21:04:09 Starting Task[taboot.tasks.rpm.PreManifest('rpm -qa | sort',)]
        -fridge.bsb.local:
        -2011-04-04 21:04:12 Finished Task[taboot.tasks.rpm.PreManifest('rpm -qa | sort',)]:
        -
        -fridge.bsb.local:
        -2011-04-04 21:04:12 Starting Task[taboot.tasks.yum.Update('yum update -y mercurial',)]
        -fridge.bsb.local:
        -2011-04-04 21:04:34 Finished Task[taboot.tasks.yum.Update('yum update -y mercurial',)]:
        -
        -# yum.Update output here...
        -
        -fridge.bsb.local:
        -2011-04-04 21:04:34 Starting Task[taboot.tasks.rpm.PostManifest('rpm -qa | sort',)]
        -fridge.bsb.local:
        -2011-04-04 21:04:37 Finished Task[taboot.tasks.rpm.PostManifest('rpm -qa | sort',)]:
        -- mercurial-1.7.5-1.fc14.x86_64
        -+ mercurial-1.8.1-2.fc14.x86_64
        -
        -
        -
        -
        -

        AJP

        - -

        The AJP module provides a uniform way to put nodes into and out of -rotation in a mod_jk AJP balancer. This module is a great -replacement for manually adding and removing nodes in a jkmanage -management panel.

        -
        -

        Note

        -

        This module requires that the taboot-func package is installed -on the target AJP balancers.

        -
        -
        -

        Note

        -

        This module is very specific to the original authors needs and may -not work outside of that environment without customization.

        -
        -
        -

        See also

        -
        -
        The Apache Tomcat Connector - LoadBalancer HowTo
        -
        Documentation on the Apache Tomcat Connector
        -
        -
        -
        -

        InRotation

        -
          -
        • API: taboot.tasks.mod_jk.InRotation
        • -
        • Keys
            -
          • proxies
              -
            • Type: List of strings
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: List of AJP proxy hostnames
            • -
            -
          • -
          -
        • -
        -

        The InRotation class puts an AJP node back into rotation.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - mod_jk.InRotation:
        -        proxies:
        -            - proxy-hostname
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - tomcat*.int.company.com
        -  tasks:
        -    - mod_jk.InRotation:
        -        proxies:
        -            - proxyjava01.web.prod.ext.example.com
        -            - proxyjava02.web.prod.ext.example.com
        -
        -
        -
        -

        OutOfRotation

        - -

        The OutOfRotation class takes an AJP node out of rotation.

        -

        Syntax:

        -
        ---
        -  tasks:
        -    - mod_jk.OutOfRotation:
        -        proxies:
        -            - proxy-hostname
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - tomcat*.int.company.com
        -  tasks:
        -    - mod_jk.OutOfRotation:
        -        proxies:
        -            - proxyjava01.web.prod.ext.example.com
        -            - proxyjava02.web.prod.ext.example.com
        -
        -
        -
        -
        -

        Misc

        -
          -
        • API: taboot.tasks.misc
        • -
        • Classes
            -
          • Noop
          • -
          • Echo
          • -
          -
        • -
        -

        The misc module has two simple tasks in it: Noop and -Echo. They are primarily intended for instruction and as -placeholders while testing scripts or major code changes.

        -
        -

        Noop

        -
          -
        • API: taboot.tasks.misc.Noop
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    - misc.Noop
        -
        -

        Example:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - misc.Noop
        -
        -

        This is a generic task that litterally does nothing.

        -
        -
        -

        Echo

        -
          -
        • API: taboot.tasks.misc.Echo
        • -
        • Keys
            -
          • input
              -
            • Type: String
            • -
            • Default: None
            • -
            • Required: Yes
            • -
            • Description: String to echo back
            • -
            -
          • -
          -
        • -
        -

        Syntax:

        -
        ---
        -  tasks:
        -    # Normal form
        -    - misc.Echo:
        -        input: string
        -
        -    # Abbreviated form
        -    - misc.Echo: {input: string}
        -
        -

        Example 1:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - misc.Echo: {input: "Taboot Rules!"}
        -
        -

        Example 2:

        -
        ---
        -- hosts:
        -    - www*
        -  tasks:
        -    - misc.Echo:
        -        input: "Taboot Rules!"
        -
        -

        -New in version 0.4.0.

        -
        -
        -
        - - -
        -
        -
        -
        -
        -

        Table Of Contents

        - - -

        This Page

        - - - -
        -
        -
        -
        - - - - \ No newline at end of file diff --git a/index.html b/index.html index 39457113a1c..41fbffbb548 100644 --- a/index.html +++ b/index.html @@ -1,15 +1,12 @@ ---- -layout: default -title: Ansible - Multi-node SSH Command & Control ---- - -
        - -

        About Ansible

        - - -
        + + + Redirecting to the Ansible Documentation... + + + +

        + Click this link if you are + not automatically forwarded. +

        + + diff --git a/rst/index.rst b/rst/index.rst index 30d8bb14e2c..9af75f428bd 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -50,22 +50,57 @@ Requirements are extremely minimal. If you are running python 2.6 on the **overlord** machine, you will need: -* paramiko -* python-jinja2 -* PyYAML (if using playbooks) +* ``paramiko`` +* ``PyYAML`` +* ``Asciidoc`` (for building documentation) -If you are running less than Python 2.6, you will also need +If you are running less than Python 2.6, you will also need: -* the Python 2.4 or 2.5 backport of the multiprocessing module -* simplejson +* The Python 2.4 or 2.5 backport of the multiprocessing module + * `Installation and Testing Instructions `_ +* ``simplejson`` On the managed nodes, to use templating, you will need: -* python-jinja2 (you can install this with ansible) +* ``python-jinja2`` (you can install this with ansible) +Getting Ansible +``````````````` -Contents: +Tagged releases are available as tar.gz files from the Ansible github +project page: + +* `Ansible/downloads `_ + +You can also clone the git repository yourself and install Ansible in +one of two ways: + + +Python Distutils +++++++++++++++++ + +You can install Ansible using Python Distutils:: + + $ git clone git://github.com/ansible/ansible.git + $ cd ./ansible + $ sudo make install + + +Via RPM ++++++++ + +In the future, pre-built RPMs may be available. Until that time you +can use the ``make rpm`` command:: + + $ git clone git://github.com/ansible/ansible.git + $ cd ./ansible + $ make rpm + $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm + + +Contents +======== .. toctree:: :maxdepth: 3 @@ -75,15 +110,17 @@ Contents: patterns modules playbooks + examples api communicate - examples man -Indices and tables -================== -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` +Communicate or Get Involved +=========================== + +* Join the `ansible-project mailing list `_ on Google Groups +* Join `#ansible `_ on the `freenode IRC network `_ +* Visit the `project page `_ on Github + - View the `issue tracker `_ diff --git a/rst/man.rst b/rst/man.rst index 6c6497fc930..d25477bf110 100644 --- a/rst/man.rst +++ b/rst/man.rst @@ -5,12 +5,17 @@ Man Pages Ansile ships with a handfull of manpages to help you on your journey. -taboot(1) ---------- +ansible(1) +---------- -`View taboot.1 `_ +* `View ansible.1 `_ -taboot-tasks(5) ---------------- +ansible-modules(5) +------------------ -`View taboot-tasks.5 `_ +* `View ansible-modules.5 `_ + +ansible-playbook(5) +------------------- + +* `View ansible-playbook.5 `_ From 5738f8724ae584f39c36f670669e6c9f0d92692e Mon Sep 17 00:00:00 2001 From: Tim Bielawa Date: Wed, 7 Mar 2012 13:08:31 -0500 Subject: [PATCH 007/416] Polish up more. Refactor build-site.py and Makefile. --- Makefile | 8 ++++++-- build-site.py | 25 ++++++++++++++++++++++++- html/_sources/index.txt | 13 ++++++++----- html/index.html | 13 ++++++++----- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/searchindex.js | 2 +- rst/index.rst | 13 ++++++++----- 9 files changed, 58 insertions(+), 22 deletions(-) diff --git a/Makefile b/Makefile index 6f59a6dde81..63115d73299 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,11 @@ SITELIB = $(shell python -c "from distutils.sysconfig import get_python_lib; pri all: clean docs -docs: htmlman htmldocs +docs: clean + ./build-site.py + +viewdocs: clean + ./build-site.py view htmlman: mkdir -p html/man @@ -13,7 +17,7 @@ htmlman: $(ASCII2HTMLMAN) ansible/docs/man/man5/ansible-playbook.5.asciidoc htmldocs: - ./build-site.py + ./build-site.py rst clean: @echo "Cleaning up byte compiled python stuff" diff --git a/build-site.py b/build-site.py index 6e134c2abd4..37ae50a9834 100755 --- a/build-site.py +++ b/build-site.py @@ -61,6 +61,7 @@ class SphinxBuilder(object): freshenv) app.builder.build_all() + # We also have the HTML man pages to handle now as well #if os.system("make htmlman"): # print "There was an error while building the HTML man pages." @@ -80,9 +81,31 @@ class SphinxBuilder(object): self.app.builder.build_all() -if __name__ == '__main__': +def build_rst_docs(): docgen = SphinxBuilder() + +def build_html_manpages(): + os.system("make htmlman") + + +if __name__ == '__main__': + if '-h' in sys.argv or '--help' in sys.argv: + print "This script builds the html documentation from rst/asciidoc sources.\n" + print " Run 'make docs' to build everything." + print " Run 'make viewdocs' to build and then preview in a web browser." + sys.exit(0) + + # The 'htmldocs' make target will call this scrip twith the 'rst' + # parameter' We don't need to run the 'htmlman' target then. + if "rst" in sys.argv: + build_rst_docs() + else: + # By default, preform the rst->html transformation and then + # the asciidoc->html trasnformation + build_rst_docs() + build_html_manpages() + if "view" in sys.argv: import webbrowser if not webbrowser.open('html/index.html'): diff --git a/html/_sources/index.txt b/html/_sources/index.txt index 9af75f428bd..c26aabef7b7 100644 --- a/html/_sources/index.txt +++ b/html/_sources/index.txt @@ -16,9 +16,9 @@ infrastructure, Ansible aspires to be quite different and more minimal, but still able to grow more modularly over time. This is based on talking to a lot of users of various tools and wishing to eliminate problems with connectivity and long running daemons, or not -picking tool X because they preferred to code in Y. Further, playbooks -take things a whole step further, building the config and deployment -system I always wanted to build. +picking tool `X` because they preferred to code in `Y`. Further, +playbooks take things a whole step further, building the config and +deployment system I always wanted to build. Why use Ansible versus something else? (Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it @@ -52,12 +52,15 @@ need: * ``paramiko`` * ``PyYAML`` +* ``python-jinja2`` (for playbooks) * ``Asciidoc`` (for building documentation) If you are running less than Python 2.6, you will also need: -* The Python 2.4 or 2.5 backport of the multiprocessing module - * `Installation and Testing Instructions `_ +* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module + + - `Installation and Testing Instructions `_ + * ``simplejson`` On the managed nodes, to use templating, you will need: diff --git a/html/index.html b/html/index.html index 8976409f57e..30de343043b 100644 --- a/html/index.html +++ b/html/index.html @@ -56,9 +56,9 @@ infrastructure, Ansible aspires to be quite different and more minimal, but still able to grow more modularly over time. This is based on talking to a lot of users of various tools and wishing to eliminate problems with connectivity and long running daemons, or not -picking tool X because they preferred to code in Y. Further, playbooks -take things a whole step further, building the config and deployment -system I always wanted to build.

        +picking tool X because they preferred to code in Y. Further, +playbooks take things a whole step further, building the config and +deployment system I always wanted to build.

        Why use Ansible versus something else? (Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it will be more correct, and it will be the easiest thing to hack on and @@ -87,12 +87,15 @@ need:

        • paramiko
        • PyYAML
        • +
        • python-jinja2 (for playbooks)
        • Asciidoc (for building documentation)

        If you are running less than Python 2.6, you will also need:

        On the managed nodes, to use templating, you will need:

        diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index 61276a5bc6f..1a16ddec0ea 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

        Name

        ansible-modules — stock modules shipped with ansible

        DESCRIPTION

        Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

        Name

        ansible-modules — stock modules shipped with ansible

        DESCRIPTION

        Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

        IDEMPOTENCE

        Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

        Unless otherwise noted, all modules support change hooks.

        command

        The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index 1f100d55067..8c4b8c1d355 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

        Name

        ansible-playbook — format and function of an ansible playbook file

        DESCRIPTION

        Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

        Name

        ansible-playbook — format and function of an ansible playbook file

        DESCRIPTION

        Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

        FORMAT

        Playbooks are written in YAML.

        EXAMPLE

        See:

        • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index 73067689459..c2c76bfaccb 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

          Name

          ansible — run a command somewhere else

          Synopsis

          ansible <host-pattern> [-f forks] [-m module_name] [-a args]

          DESCRIPTION

          Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

          Name

          ansible — run a command somewhere else

          Synopsis

          ansible <host-pattern> [-f forks] [-m module_name] [-a args]

          DESCRIPTION

          Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

          ARGUMENTS

          host-pattern
          diff --git a/html/searchindex.js b/html/searchindex.js index dadd4bb1622..a0bf1f8f129 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:5,code:1,donec:[0,2,3,4,6,7,8],mcollect:1,rhoncu:[0,2,3,4,6,7,8],lacu:[0,2,3,4,6,7,8],nunc:[0,2,3,4,6,7,8],vel:[0,2,3,4,6,7,8],blindingli:1,sourc:1,everi:5,fals:5,consequat:[0,2,3,4,6,7,8],veri:1,risu:[0,2,3,4,6,7,8],luctu:[0,2,3,4,6,7,8],level:5,list:[5,1],vivamu:[0,2,3,4,6,7,8],item:5,dotnet:5,saltstack:1,phasellu:[0,2,3,4,6,7,8],ornar:[0,2,3,4,6,7,8],second:5,design:1,eleifend:[0,2,3,4,6,7,8],further:1,index:[],what:[0,1],diam:[0,2,3,4,6,7,8],abl:1,nec:[0,2,3,4,6,7,8],abbrevi:5,ever:1,suscipit:[0,2,3,4,6,7,8],eckersberg:5,leo:[0,2,3,4,6,7,8],valu:5,aliquam:[0,2,3,4,6,7,8],scelerisqu:[0,2,3,4,6,7,8],search:[],larger:1,adipisc:[0,2,3,4,6,7,8],venenati:[0,2,3,4,6,7,8],permit:5,nulla:[0,2,3,4,6,7,8],iaculi:[0,2,3,4,6,7,8],via:1,regardless:[5,1],dictionari:5,accumsan:[0,2,3,4,6,7,8],extra:1,modul:[1,2,9],prefer:1,qui:[0,2,3,4,6,7,8],api:[1,7],instal:1,from:1,tar:1,commun:[1,3],visit:1,two:[5,1],noarch:1,sagitti:[0,2,3,4,6,7,8],until:1,more:1,nequ:[0,2,3,4,6,7,8],sshd:1,indic:[],easiest:1,must:5,join:1,habitass:[0,2,3,4,6,7,8],setup:1,can:[5,1],ero:[0,2,3,4,6,7,8],root:[5,1],employe:5,yamllint:5,ultric:[0,2,3,4,6,7,8],sudo:1,templat:1,knows_oop:5,tag:1,want:1,nullam:[0,2,3,4,6,7,8],alwai:1,newlin:5,puru:[0,2,3,4,6,7,8],lame:5,capistrano:1,write:5,how:0,etiam:[0,2,3,4,6,7,8],simpl:[5,1],arcu:[0,2,3,4,6,7,8],clone:1,usabl:1,tristiqu:[0,2,3,4,6,7,8],mai:1,data:5,parallel:1,man:[1,9],github:1,sit:[0,2,3,4,6,7,8],favorit:1,turpi:[0,2,3,4,6,7,8],element:5,issu:1,mango:5,combin:5,talk:1,help:9,over:1,orang:5,becaus:1,elit:[0,2,3,4,5,6,7,8],rpmbuild:1,comma:5,vita:[0,2,3,4,6,7,8],still:1,overlord:1,group:1,fit:1,yaml:[5,0,1],infrastructur:1,mail:1,sapien:[0,2,3,4,6,7,8],non:[0,1,2,3,4,6,7,8],thei:1,food:5,nibh:[0,2,3,4,6,7,8],egesta:[0,2,3,4,6,7,8],jinja2:1,choic:1,multiprocess:1,name:5,config:1,viverra:[0,2,3,4,6,7,8],porta:[0,2,3,4,6,7,8],separ:5,each:5,metu:[0,2,3,4,6,7,8],auctor:[0,2,3,4,6,7,8],realli:5,backport:1,connect:1,out:5,network:1,content:1,correct:[5,1],hendrerit:[0,2,3,4,6,7,8],base:1,tempu:[0,2,3,4,6,7,8],releas:1,molli:[0,2,3,4,6,7,8],bash:1,care:1,vestibulum:[0,2,3,4,6,7,8],pyyaml:1,indent:5,maecena:[0,2,3,4,6,7,8],thing:1,principl:1,fusc:[0,2,3,4,6,7,8],softwar:1,obviou:1,yourself:1,instruct:1,"long":1,enim:[0,2,3,4,6,7,8],differ:1,script:[5,0,1],associ:5,system:1,grow:1,molesti:[0,2,3,4,6,7,8],john:5,banana:5,option:5,tool:1,specifi:5,quam:[0,2,3,4,6,7,8],than:1,serv:1,provid:5,sollicitudin:[0,2,3,4,6,7,8],structur:5,charact:5,faucibu:[0,2,3,4,6,7,8],uses_cv:5,pre:1,ani:1,ant:[0,2,3,4,6,7,8],download:1,have:1,tabl:[],need:[5,0,1],tellu:[0,2,3,4,6,7,8],paramiko:1,built:1,also:[5,0,1],client:1,massa:[0,2,3,4,6,7,8],build:1,which:1,pulvinar:[0,2,3,4,6,7,8],begin:5,distribut:1,deploy:1,most:5,why:1,porttitor:[0,2,3,4,6,7,8],doc:1,lectu:[0,2,3,4,6,7,8],sodal:[0,2,3,4,6,7,8],likes_emac:5,clojur:1,dolor:[0,2,3,4,6,7,8],someth:1,awesom:1,laoreet:[0,2,3,4,6,7,8],blandit:[0,2,3,4,6,7,8],syntax:[5,0],playbook:[1,4,9],hack:1,involv:1,onli:1,configur:1,should:5,consectetur:[0,2,3,4,6,7,8],variu:[0,2,3,4,6,7,8],variou:1,get:[5,0,1],bibendum:[0,2,3,4,6,7,8],ssh:1,malesuada:[0,2,3,4,6,7,8],requir:1,uvh:1,nisi:[0,2,3,4,6,7,8],nisl:[0,2,3,4,6,7,8],remot:1,cra:[0,2,3,4,6,7,8],orci:[0,2,3,4,6,7,8],wrote:1,view:[1,9],elimin:1,see:[5,0,1],sed:[0,2,3,4,6,7,8],sem:[0,2,3,4,6,7,8],project:1,manpag:9,pattern:[1,6],modularli:1,written:1,languag:[5,1],between:5,irc:1,elementum:[0,2,3,4,6,7,8],kei:5,handful:9,aspir:1,job:5,magna:[0,2,3,4,6,7,8],amet:[0,2,3,4,6,7,8],addit:[5,1],plugin:1,tempor:[0,2,3,4,6,7,8],etc:1,placerat:[0,2,3,4,6,7,8],com:1,proin:[0,2,3,4,6,7,8],overview:5,rpm:1,matti:[0,2,3,4,6,7,8],dui:[0,2,3,4,6,7,8],pretium:[0,2,3,4,6,7,8],morbi:[0,2,3,4,6,7,8],suspendiss:[0,2,3,4,6,7,8],basic:[5,1],feugiat:[0,2,3,4,6,7,8],box:1,rubi:5,vulput:[0,2,3,4,6,7,8],understand:0,pellentesqu:[0,2,3,4,6,7,8],func:1,emploi:5,tortor:[0,2,3,4,6,7,8],"while":1,dictum:[0,2,3,4,6,7,8],erat:[0,2,3,4,6,7,8],sever:5,develop:5,minim:1,make:1,platea:[0,2,3,4,6,7,8],same:5,member:5,python:[5,1],document:[0,1],ansibl:[5,0,9,1],complet:0,pick:1,fruit:5,user:1,extrem:1,distutil:1,squar:5,whole:1,exampl:[1,8],command:1,thi:[5,1],execut:1,less:1,skill:5,ligula:[0,2,3,4,6,7,8],versu:1,hac:[0,2,3,4,6,7,8],simplejson:1,els:1,take:1,ipsum:[0,2,3,4,6,7,8],tincidunt:[0,2,3,4,6,7,8],know:5,daemon:1,like:5,integ:[0,2,3,4,6,7,8],server:1,"boolean":5,velit:[0,2,3,4,6,7,8],manag:1,dead:1,est:[0,2,3,4,6,7,8],avoid:1,ultrici:[0,2,3,4,6,7,8],tracker:1,machin:1,run:1,power:1,quit:1,step:1,repositori:1,"super":1,aenean:[0,2,3,4,6,7,8],about:5,justo:[0,2,3,4,6,7,8],libero:[0,2,3,4,6,7,8],surround:5,page:[5,1,9],quisqu:[0,2,3,4,6,7,8],own:1,"final":5,your:[5,1,9],praesent:[0,2,3,4,6,7,8],git:1,fabric:1,wai:[5,1],interdum:[0,2,3,4,6,7,8],fast:1,avail:1,start:[5,0,1],appl:5,augu:[0,2,3,4,6,7,8],lot:1,form:5,eget:[0,2,3,4,6,7,8],lint:5,loborti:[0,2,3,4,6,7,8],ullamcorp:[0,2,3,4,6,7,8],line:5,"true":5,freenod:1,strawberri:5,whether:1,wish:1,record:5,problem:1,tasti:5,creat:1,doesn:1,repres:5,ansil:9,exist:1,file:[5,1],mauri:[0,2,3,4,6,7,8],ship:9,urna:[0,2,3,4,6,7,8],conval:[0,2,3,4,6,7,8],googl:1,nam:[0,2,3,4,6,7,8],"default":1,bracket:5,futur:1,dignissim:[0,2,3,4,6,7,8],test:1,you:[5,0,9,1],node:1,dapibu:[0,2,3,4,6,7,8],journei:9,gravida:[0,2,3,4,6,7,8],asciidoc:1,feli:[0,2,3,4,6,7,8],aliquet:[0,2,3,4,6,7,8],lorem:[0,2,3,4,6,7,8],dictumst:[0,2,3,4,6,7,8],rutrum:[0,2,3,4,6,7,8],time:1,far:1,fermentum:[0,2,3,4,6,7,8]},objtypes:{},titles:["Getting Started","Ansible","Modules","Communicate","Playbooks","YAML Scripts","Patterns","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","communicate","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:5,rhoncu:[0,2,3,4,6,7,8],donec:[0,2,3,4,6,7,8],mcollect:1,code:1,lacu:[0,2,3,4,6,7,8],nunc:[0,2,3,4,6,7,8],vel:[0,2,3,4,6,7,8],blindingli:1,sourc:1,everi:5,fals:5,consequat:[0,2,3,4,6,7,8],veri:1,risu:[0,2,3,4,6,7,8],luctu:[0,2,3,4,6,7,8],level:5,list:[5,1],vivamu:[0,2,3,4,6,7,8],item:5,dotnet:5,saltstack:1,phasellu:[0,2,3,4,6,7,8],ornar:[0,2,3,4,6,7,8],second:5,design:1,eleifend:[0,2,3,4,6,7,8],further:1,what:[0,1],diam:[0,2,3,4,6,7,8],abl:1,nec:[0,2,3,4,6,7,8],abbrevi:5,ever:1,elimin:1,eckersberg:5,leo:[0,2,3,4,6,7,8],valu:5,aliquam:[0,2,3,4,6,7,8],box:1,larger:1,adipisc:[0,2,3,4,6,7,8],venenati:[0,2,3,4,6,7,8],permit:5,nulla:[0,2,3,4,6,7,8],iaculi:[0,2,3,4,6,7,8],via:1,regardless:[5,1],tempu:[0,2,3,4,6,7,8],extra:1,modul:[1,2,9],prefer:1,qui:[0,2,3,4,6,7,8],api:[1,7],instal:1,should:5,from:1,tar:1,commun:[1,3],visit:1,two:[5,1],noarch:1,sagitti:[0,2,3,4,6,7,8],until:1,more:1,nequ:[0,2,3,4,6,7,8],sshd:1,easiest:1,must:5,join:1,habitass:[0,2,3,4,6,7,8],setup:1,can:[5,1],ero:[0,2,3,4,6,7,8],root:[5,1],employe:5,yamllint:5,ultric:[0,2,3,4,6,7,8],sudo:1,templat:1,knows_oop:5,tag:1,want:1,nullam:[0,2,3,4,6,7,8],alwai:1,newlin:5,puru:[0,2,3,4,6,7,8],lame:5,capistrano:1,write:5,how:0,etiam:[0,2,3,4,6,7,8],config:1,arcu:[0,2,3,4,6,7,8],clone:1,usabl:1,tristiqu:[0,2,3,4,6,7,8],mai:1,associ:5,grow:1,man:[1,9],github:1,sit:[0,2,3,4,6,7,8],favorit:1,turpi:[0,2,3,4,6,7,8],element:5,issu:1,mango:5,combin:5,talk:1,help:9,over:1,orang:5,becaus:1,elit:[0,2,3,4,5,6,7,8],rpmbuild:1,comma:5,vita:[0,2,3,4,6,7,8],still:1,overlord:1,group:1,fit:1,yaml:[5,0,1],infrastructur:1,mail:1,sapien:[0,2,3,4,6,7,8],non:[0,1,2,3,4,6,7,8],thei:1,food:5,nibh:[0,2,3,4,6,7,8],egesta:[0,2,3,4,6,7,8],jinja2:1,choic:1,multiprocess:1,name:5,simpl:[5,1],viverra:[0,2,3,4,6,7,8],porta:[0,2,3,4,6,7,8],separ:5,each:5,metu:[0,2,3,4,6,7,8],auctor:[0,2,3,4,6,7,8],realli:5,backport:1,connect:1,out:5,network:1,content:1,correct:[5,1],hendrerit:[0,2,3,4,6,7,8],base:1,dictionari:5,morbi:[0,2,3,4,6,7,8],molli:[0,2,3,4,6,7,8],bash:1,care:1,vestibulum:[0,2,3,4,6,7,8],pyyaml:1,indent:5,maecena:[0,2,3,4,6,7,8],thing:1,principl:1,fusc:[0,2,3,4,6,7,8],softwar:1,obviou:1,yourself:1,instruct:1,"long":1,enim:[0,2,3,4,6,7,8],differ:1,script:[5,0,1],data:5,system:1,parallel:1,molesti:[0,2,3,4,6,7,8],john:5,banana:5,option:5,tool:1,specifi:5,quam:[0,2,3,4,6,7,8],accumsan:[0,2,3,4,6,7,8],serv:1,provid:5,sollicitudin:[0,2,3,4,6,7,8],structur:5,charact:5,faucibu:[0,2,3,4,6,7,8],uses_cv:5,pre:1,ani:1,ant:[0,2,3,4,6,7,8],download:1,have:1,need:[5,0,1],tellu:[0,2,3,4,6,7,8],paramiko:1,built:1,also:[5,0,1],client:1,massa:[0,2,3,4,6,7,8],take:1,which:1,pulvinar:[0,2,3,4,6,7,8],begin:5,distribut:1,deploy:1,most:5,why:1,augu:[0,2,3,4,6,7,8],doc:1,lectu:[0,2,3,4,6,7,8],sodal:[0,2,3,4,6,7,8],likes_emac:5,clojur:1,dolor:[0,2,3,4,6,7,8],modularli:1,awesom:1,laoreet:[0,2,3,4,6,7,8],blandit:[0,2,3,4,6,7,8],syntax:[5,0],playbook:[1,4,9],hack:1,involv:1,onli:1,configur:1,releas:1,than:1,consectetur:[0,2,3,4,6,7,8],variu:[0,2,3,4,6,7,8],variou:1,get:[5,0,1],bibendum:[0,2,3,4,6,7,8],ssh:1,malesuada:[0,2,3,4,6,7,8],requir:1,uvh:1,nisi:[0,2,3,4,6,7,8],nisl:[0,2,3,4,6,7,8],remot:1,cra:[0,2,3,4,6,7,8],orci:[0,2,3,4,6,7,8],wrote:1,view:[1,9],suscipit:[0,2,3,4,6,7,8],see:[5,0,1],sed:[0,2,3,4,6,7,8],sem:[0,2,3,4,6,7,8],project:1,manpag:9,pattern:[1,6],someth:1,written:1,ligula:[0,2,3,4,6,7,8],between:5,irc:1,elementum:[0,2,3,4,6,7,8],kei:5,handful:9,aspir:1,job:5,magna:[0,2,3,4,6,7,8],amet:[0,2,3,4,6,7,8],addit:[5,1],plugin:1,tempor:[0,2,3,4,6,7,8],etc:1,placerat:[0,2,3,4,6,7,8],com:1,proin:[0,2,3,4,6,7,8],overview:5,rpm:1,matti:[0,2,3,4,6,7,8],quit:1,pretium:[0,2,3,4,6,7,8],suspendiss:[0,2,3,4,6,7,8],basic:[5,1],feugiat:[0,2,3,4,6,7,8],scelerisqu:[0,2,3,4,6,7,8],rubi:5,vulput:[0,2,3,4,6,7,8],understand:0,pellentesqu:[0,2,3,4,6,7,8],func:1,emploi:5,tortor:[0,2,3,4,6,7,8],"while":1,dictum:[0,2,3,4,6,7,8],erat:[0,2,3,4,6,7,8],sever:5,develop:5,minim:1,make:1,platea:[0,2,3,4,6,7,8],same:5,member:5,python:[5,1],document:[0,1],ansibl:[5,0,9,1],complet:0,pick:1,fruit:5,user:1,extrem:1,distutil:1,squar:5,whole:1,exampl:[1,8],command:1,thi:[5,1],execut:1,less:1,skill:5,languag:[5,1],versu:1,hac:[0,2,3,4,6,7,8],simplejson:1,els:1,build:1,ipsum:[0,2,3,4,6,7,8],tincidunt:[0,2,3,4,6,7,8],know:5,daemon:1,like:5,integ:[0,2,3,4,6,7,8],server:1,"boolean":5,velit:[0,2,3,4,6,7,8],page:[5,1,9],dead:1,est:[0,2,3,4,6,7,8],avoid:1,ultrici:[0,2,3,4,6,7,8],tracker:1,machin:1,run:1,power:1,dui:[0,2,3,4,6,7,8],step:1,repositori:1,"super":1,aenean:[0,2,3,4,6,7,8],about:5,justo:[0,2,3,4,6,7,8],libero:[0,2,3,4,6,7,8],surround:5,manag:1,quisqu:[0,2,3,4,6,7,8],own:1,"final":5,your:[5,1,9],praesent:[0,2,3,4,6,7,8],git:1,fabric:1,wai:[5,1],interdum:[0,2,3,4,6,7,8],fast:1,avail:1,start:[5,0,1],appl:5,porttitor:[0,2,3,4,6,7,8],lot:1,form:5,eget:[0,2,3,4,6,7,8],lint:5,loborti:[0,2,3,4,6,7,8],ullamcorp:[0,2,3,4,6,7,8],line:5,"true":5,freenod:1,strawberri:5,whether:1,wish:1,record:5,problem:1,tasti:5,creat:1,doesn:1,repres:5,ansil:9,exist:1,file:[5,1],mauri:[0,2,3,4,6,7,8],ship:9,urna:[0,2,3,4,6,7,8],conval:[0,2,3,4,6,7,8],googl:1,nam:[0,2,3,4,6,7,8],"default":1,bracket:5,futur:1,dignissim:[0,2,3,4,6,7,8],test:1,you:[5,0,9,1],node:1,dapibu:[0,2,3,4,6,7,8],journei:9,gravida:[0,2,3,4,6,7,8],asciidoc:1,feli:[0,2,3,4,6,7,8],aliquet:[0,2,3,4,6,7,8],lorem:[0,2,3,4,6,7,8],dictumst:[0,2,3,4,6,7,8],rutrum:[0,2,3,4,6,7,8],time:1,far:1,fermentum:[0,2,3,4,6,7,8]},objtypes:{},titles:["Getting Started","Ansible","Modules","Communicate","Playbooks","YAML Scripts","Patterns","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","communicate","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file diff --git a/rst/index.rst b/rst/index.rst index 9af75f428bd..c26aabef7b7 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -16,9 +16,9 @@ infrastructure, Ansible aspires to be quite different and more minimal, but still able to grow more modularly over time. This is based on talking to a lot of users of various tools and wishing to eliminate problems with connectivity and long running daemons, or not -picking tool X because they preferred to code in Y. Further, playbooks -take things a whole step further, building the config and deployment -system I always wanted to build. +picking tool `X` because they preferred to code in `Y`. Further, +playbooks take things a whole step further, building the config and +deployment system I always wanted to build. Why use Ansible versus something else? (Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it @@ -52,12 +52,15 @@ need: * ``paramiko`` * ``PyYAML`` +* ``python-jinja2`` (for playbooks) * ``Asciidoc`` (for building documentation) If you are running less than Python 2.6, you will also need: -* The Python 2.4 or 2.5 backport of the multiprocessing module - * `Installation and Testing Instructions `_ +* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module + + - `Installation and Testing Instructions `_ + * ``simplejson`` On the managed nodes, to use templating, you will need: From 6fe8e4d34854891067bcd9acb192e472e800f66f Mon Sep 17 00:00:00 2001 From: Tim Bielawa Date: Wed, 7 Mar 2012 13:48:56 -0500 Subject: [PATCH 008/416] Unjekyllify these pages. --- .nojekyll | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .nojekyll diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000000..e69de29bb2d From 12fd193450a4363ccd46fd242bc2392290a3df04 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 8 Mar 2012 13:36:47 -0500 Subject: [PATCH 009/416] Docs updates --- ansible | 2 +- build-site.py | 8 +- html/YAMLScripts.html | 32 ++-- html/_sources/YAMLScripts.txt | 7 +- html/_sources/api.txt | 88 ++++------- html/_sources/communicate.txt | 58 +------ html/_sources/examples.txt | 130 ++++++++-------- html/_sources/gettingstarted.txt | 153 ++++++++++-------- html/_sources/index.txt | 114 +++----------- html/_sources/man.txt | 11 +- html/_sources/modules.txt | 256 ++++++++++++++++++++++++------- html/_sources/patterns.txt | 118 +++++++------- html/_sources/playbooks.txt | 167 +++++++++++++------- html/_static/basic.css | 9 +- html/_static/searchtools.js | 13 +- html/api.html | 90 +++++------ html/communicate.html | 68 ++------ html/examples.html | 116 ++++++-------- html/genindex.html | 6 +- html/gettingstarted.html | 159 +++++++++++-------- html/index.html | 185 ++++++++++------------ html/man.html | 30 +--- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/modules.html | 222 ++++++++++++++++++++------- html/patterns.html | 142 +++++++++-------- html/playbooks.html | 194 ++++++++++++++++------- html/search.html | 4 +- html/searchindex.js | 2 +- rst/YAMLScripts.rst | 7 +- rst/api.rst | 88 ++++------- rst/communicate.rst | 58 +------ rst/examples.rst | 130 ++++++++-------- rst/gettingstarted.rst | 153 ++++++++++-------- rst/index.rst | 114 +++----------- rst/man.rst | 11 +- rst/modules.rst | 256 ++++++++++++++++++++++++------- rst/patterns.rst | 118 +++++++------- rst/playbooks.rst | 167 +++++++++++++------- 40 files changed, 1927 insertions(+), 1565 deletions(-) diff --git a/ansible b/ansible index 8e20ed3714b..96d39a0dff9 160000 --- a/ansible +++ b/ansible @@ -1 +1 @@ -Subproject commit 8e20ed3714b7a43279ecfd38a7812b28e1533f03 +Subproject commit 96d39a0dff9ccba4074479ca42eac0068733b803 diff --git a/build-site.py b/build-site.py index 37ae50a9834..5570818ccfb 100755 --- a/build-site.py +++ b/build-site.py @@ -20,6 +20,7 @@ __docformat__ = 'restructuredtext' import os import sys +import traceback from sphinx.application import Sphinx from os import path @@ -68,12 +69,7 @@ class SphinxBuilder(object): # print "Run 'make htmlman' to recreate the problem." #print "Your docs are now in %s" % outdir except ImportError, ie: - print >> sys.stderr, "You don't seem to have the following which" - print >> sys.stderr, "are required to make documentation:" - print >> sys.stderr, "\tsphinx.application.Sphinx" - print >> sys.stderr, "This is usually available from the python-sphinx package" - print >> sys.stderr, "=== Error message received while attempting to build===" - print >> sys.stderr, ie + traceback.print_exc() except Exception, ex: print >> sys.stderr, "FAIL! exiting ... (%s)" % ex diff --git a/html/YAMLScripts.html b/html/YAMLScripts.html index 1d0df432806..f252982648e 100644 --- a/html/YAMLScripts.html +++ b/html/YAMLScripts.html @@ -23,8 +23,8 @@ - - + +
        • - next |
        • - previous |
        • Ansible v0.0.1 documentation »
        @@ -50,7 +50,9 @@

        YAML Scripts

        -

        This page provides a basic overview of correct YAML syntax.

        +

        This page provides a basic overview of correct YAML syntax, which is how Ansible +playbooks (our configuration management language) are expressed. +You may also wish to read playbook examples and will quickly pick this up from those.

        YAML Basics

        For ansible, every YAML script must be a list at it’s root-most @@ -111,7 +113,7 @@ languages: dotnet: Lame

        That’s all you really need to know about YAML to get started writing -Ansible scripts.

        +Ansible playbooks.

        See also

        @@ -137,11 +139,11 @@ languages:

      Previous topic

      -

      Getting Started

      +

      Ansible Modules

      Next topic

      -

      Patterns

      +

      Playbooks

      This Page

    \ No newline at end of file diff --git a/html/_sources/YAMLScripts.txt b/html/_sources/YAMLScripts.txt index de59528b785..32d76aff149 100644 --- a/html/_sources/YAMLScripts.txt +++ b/html/_sources/YAMLScripts.txt @@ -1,8 +1,9 @@ YAML Scripts ============ -This page provides a basic overview of correct YAML syntax. - +This page provides a basic overview of correct YAML syntax, which is how Ansible +playbooks (our configuration management language) are expressed. +You may also wish to read playbook examples and will quickly pick this up from those. YAML Basics ----------- @@ -74,7 +75,7 @@ Finally, you can combine these data structures:: dotnet: Lame That's all you really need to know about YAML to get started writing -`Ansible` scripts. +`Ansible` playbooks. .. seealso:: diff --git a/html/_sources/api.txt b/html/_sources/api.txt index 1cc8454a67d..a3ddea45951 100644 --- a/html/_sources/api.txt +++ b/html/_sources/api.txt @@ -1,55 +1,35 @@ API -=== - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +``` + +The Python API is very powerful, and is how the ansible CLI and ansible-playbook +are implemented. + +It's pretty simple:: + + import ansible.runner + + runner = ansible.runner.Runner( + module_name='ping', + module_args='', + pattern='web*', + forks=10 + ) + datastructure = runner.run() + +The run method returns results per host, grouped by whether they +could be contacted or not. Return types are module specific, as +expressed in the 'ansible-modules' documentation.:: + + { + "dark" : { + "web1.example.com" : "failure message" + } + "contacted" : { + "web2.example.com" : 1 + } + } + +A module can return any type of JSON data it wants, so Ansible can +be used as a framework to rapidly build powerful applications and scripts. + + diff --git a/html/_sources/communicate.txt b/html/_sources/communicate.txt index 8e4d12a3b0b..cd718ddcbfb 100644 --- a/html/_sources/communicate.txt +++ b/html/_sources/communicate.txt @@ -1,55 +1,9 @@ -Communicate -=========== +Communicate and Get Involved +=========================== -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. +* Join the `ansible-project mailing list `_ on Google Groups +* Join `#ansible `_ on the `freenode IRC network `_ +* Visit the `project page `_ on Github -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. + - View the `issue tracker `_ -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. diff --git a/html/_sources/examples.txt b/html/_sources/examples.txt index 44194c9ff0b..0a5df0d90d8 100644 --- a/html/_sources/examples.txt +++ b/html/_sources/examples.txt @@ -1,71 +1,65 @@ Examples ======== -Examples 1 -`````````` - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - - -Examples 2 -`````````` - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Examples 3 -`````````` - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -Examples 3 -`````````` - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Examples 4 -`````````` - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +.. seealso:: + + :doc:`modules` + A list of available modules + :doc:`playbooks` + Alternative ways to use ansible + + +Parallelism and Shell Commands +`````````````````````````````` + +Reboot all web servers in Atlanta, 10 at a time:: + + ssh-agent bash + ssh-add ~/.ssh/id_rsa.pub + + ansible atlanta -a "/sbin/reboot" -f 10 + +The -f 10 specifies the usage of 10 simultaneous processes. + +Note that other than the command module, ansible modules do not work like simple scripts. They make the remote system look like you state, and run the commands neccessary to get it there. + + +Example 2: Time Limited Background Operations +````````````````````````````````````````````` + + +Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won't lose track. Polling support is pending in the command line.:: + + ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff" + ansible all -n job_status -a jid=123456789 + +Any module other than 'copy' or 'template' can be backgrounded. + + +Examples 3: File Transfer & Templating +`````````````````````````````````````` + +Ansible can SCP lots of files to multiple machines in parallel, and optionally use them as template sources. + +To just transfer a file directly to many different servers:: + + ansible atlanta copy -a "/etc/hosts /tmp/hosts" + +To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the template module to write the files using the templates. Templates are written in Jinja2 format. Playbooks (covered below) will run the setup module for you, making this even simpler.:: + + ansible webservers -m setup -a "favcolor=red ntp_server=192.168.1.1" + ansible webservers -m template -a "src=/srv/motd.j2 dest=/etc/motd" + ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf" + +Need something like the fqdn in a template? If facter or ohai are installed, data from these projects will also be made available to the template engine, using 'facter' and 'ohai' prefixes for each. + +Examples 3: Deploying From Source Control +````````````````````````````````````````` + +Deploy your webapp straight from git:: + + ansible webservers -m git -a "repo=git://foo dest=/srv/myapp version=HEAD" + +Since ansible modules can notify change handlers (see 'Playbooks') it is possible to tell ansible to run specific tasks when the code is updated, such as deploying Perl/Python/PHP/Ruby directly from git and then restarting apache. + + diff --git a/html/_sources/gettingstarted.txt b/html/_sources/gettingstarted.txt index 247faf96c03..638039c4a93 100644 --- a/html/_sources/gettingstarted.txt +++ b/html/_sources/gettingstarted.txt @@ -1,67 +1,100 @@ Getting Started =============== -How to ansible - +How to download ansible and get started using it .. seealso:: + :doc:`examples` + Examples of basic commands :doc:`YAMLScripts` - Complete documentation of the YAML syntax `ansible` understands. - - -What you need -------------- - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. + Complete documentation of the YAML syntax `ansible` understands for playbooks. + :doc:`playbooks` + Learning ansible's configuration management language + :doc:`modules` + Learn about modules that ship with ansible + +Requirements +```````````` + +Requirements are extremely minimal. + +If you are running python 2.6 on the **overlord** machine, you will +need: + +* ``paramiko`` +* ``PyYAML`` +* ``python-jinja2`` (for playbooks) + +If you are running less than Python 2.6, you will also need: + +* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module + + - `Installation and Testing Instructions `_ + +* ``simplejson`` + +On the managed nodes, to use templating, you will need: + +* ``python-jinja2`` (you can install this with ansible) + +Developer Requirements +`````````````````````` + +For developers, you may wish to have: + +* ``asciidoc`` (for building manpage documentation) +* ``python-sphinx`` (for building content for ansible.github.com) + + +Getting Ansible +``````````````` + +Tagged releases are available as tar.gz files from the Ansible github +project page: + +* `Ansible/downloads `_ + +You can also clone the git repository yourself and install Ansible in +one of two ways: + + +Python Distutils +++++++++++++++++ + +You can also install Ansible using Python Distutils:: + + $ git clone git://github.com/ansible/ansible.git + $ cd ./ansible + $ sudo make install + +Via RPM ++++++++ + +In the near future, pre-built RPMs will be available through your distribution. Until that time you +can use the ``make rpm`` command:: + + $ git clone git://github.com/ansible/ansible.git + $ cd ./ansible + $ make rpm + $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm + +Your first commands +``````````````````` + +Edit /etc/ansible/hosts and put one or more remote systems in it, for which you have your SSH +key in ``authorized_keys``:: + + 192.168.1.50 + aserver.example.org + bserver.example.org + +Now try this: + + ssh-agent bash + ssh-add ~/.ssh/id_rsa + ansible all -m ping + +Congratulations. You've just contacted your nodes with Ansible. It's now time to read some +of the more real-world examples. + diff --git a/html/_sources/index.txt b/html/_sources/index.txt index c26aabef7b7..4ab721e4e24 100644 --- a/html/_sources/index.txt +++ b/html/_sources/index.txt @@ -5,102 +5,48 @@ Ansible ======= -Ansible is a extra-simple tool/API for doing 'parallel remote things' -over SSH -- whether executing commands, running "modules", or -executing larger 'playbooks' that can serve as a configuration -management or deployment system. +Ansible is a radically simple deployment, configuration, and command execution framework. +Other tools in this space have been too complicated for too long, require too much bootstrapping, +and have too much learning curve. Ansible is dead simple and painless to extend. For comparison, Puppet and Chef have about 60k lines of code. Ansible's core is a little over 1000 lines. -While `Func installation `_ which I -co-wrote, aspired to avoid using SSH and have it's own daemon -infrastructure, Ansible aspires to be quite different and more -minimal, but still able to grow more modularly over time. This is -based on talking to a lot of users of various tools and wishing to -eliminate problems with connectivity and long running daemons, or not -picking tool `X` because they preferred to code in `Y`. Further, -playbooks take things a whole step further, building the config and -deployment system I always wanted to build. +Ansible isn't just for configuration -- it's also great for Ad-Hoc tasks, +quickly firing off commands against nodes. Where Ansible excels though, is expressing complex multi-node deployment processes, executing complex sequences of commands on different hosts through the "playbooks" feature. -Why use Ansible versus something else? (Fabric, Capistrano, +Ansible does not require programming in any particular language -- you can write modules +as scripts or programs that return simple JSON. + +Why use Ansible versus something else? (Puppet, Chef, Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it will be more correct, and it will be the easiest thing to hack on and use you'll ever see -- regardless of your favorite language of choice. -Want to only code plugins in bash or clojure? Ansible doesn't care. -The docs will fit on one page and the source will be blindingly -obvious. +Systems management doesn't have to be complicated. Ansible's docs will remain +short & simple, and the source will be blindingly obvious. -Design Principles -````````````````` +Design Goals +```````````` * Dead simple setup * Super fast & parallel by default -* No server or client daemons; use existing SSHd +* No server or client daemons; use existing SSHd out of the box * No additional software required on client boxes * Modules can be written in ANY language * Awesome API for creating very powerful distributed scripts * Be usable as non-root * Create the easiest config management system to use, ever. +About the Author +```````````````` -Requirements -```````````` - -Requirements are extremely minimal. - -If you are running python 2.6 on the **overlord** machine, you will -need: - -* ``paramiko`` -* ``PyYAML`` -* ``python-jinja2`` (for playbooks) -* ``Asciidoc`` (for building documentation) - -If you are running less than Python 2.6, you will also need: - -* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module - - - `Installation and Testing Instructions `_ - -* ``simplejson`` - -On the managed nodes, to use templating, you will need: - -* ``python-jinja2`` (you can install this with ansible) - - -Getting Ansible -``````````````` - -Tagged releases are available as tar.gz files from the Ansible github -project page: +Michael DeHaan is a Raleigh, NC based software developer and architect. He created other +DevOps programs such as Cobbler, the popular Linux install server. +Cobbler is used to deploy mission critical systems all over the planet, in industries +ranging from massively multiplayer gaming, core internet infrastructure, finance, +chip design, and more. Michael also helped co-author of Func, which is used +to orchestrate systems in lots of diverse places. -* `Ansible/downloads `_ - -You can also clone the git repository yourself and install Ansible in -one of two ways: - - -Python Distutils -++++++++++++++++ - -You can install Ansible using Python Distutils:: - - $ git clone git://github.com/ansible/ansible.git - $ cd ./ansible - $ sudo make install - - -Via RPM -+++++++ - -In the future, pre-built RPMs may be available. Until that time you -can use the ``make rpm`` command:: - - $ git clone git://github.com/ansible/ansible.git - $ cd ./ansible - $ make rpm - $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm - +Ansible is an GPLv3 licensed open source project, so see the contributions section for how to +get involved. Contents ======== @@ -109,21 +55,11 @@ Contents :maxdepth: 3 gettingstarted - YAMLScripts patterns modules + YAMLScripts playbooks examples api communicate man - - -Communicate or Get Involved -=========================== - -* Join the `ansible-project mailing list `_ on Google Groups -* Join `#ansible `_ on the `freenode IRC network `_ -* Visit the `project page `_ on Github - - - View the `issue tracker `_ diff --git a/html/_sources/man.txt b/html/_sources/man.txt index d25477bf110..41dd4e650ee 100644 --- a/html/_sources/man.txt +++ b/html/_sources/man.txt @@ -3,19 +3,10 @@ Man Pages ========= -Ansile ships with a handfull of manpages to help you on your journey. +Ansible's manpage lists available command line options. ansible(1) ---------- * `View ansible.1 `_ -ansible-modules(5) ------------------- - -* `View ansible-modules.5 `_ - -ansible-playbook(5) -------------------- - -* `View ansible-playbook.5 `_ diff --git a/html/_sources/modules.txt b/html/_sources/modules.txt index b303ee6ccb2..540aad2bf7d 100644 --- a/html/_sources/modules.txt +++ b/html/_sources/modules.txt @@ -1,55 +1,201 @@ -Modules -======= - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +Ansible Modules +=============== + +.. seealso:: + + :doc:`examples` + Examples of using modules in /usr/bin/ansible + :doc:`playbooks` + Examples of using modules with /usr/bin/ansible-playbook + :doc:`api` + Examples of using modules with the Python API + + +About Modules +````````````` + +Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible playbooks. + + +Idempotence +``````````` + +Most modules other than command are idempotent, meaning they will seek to avoid changes +unless a change needs to be made. When using ansible playbooks, these modules can +trigger change events. Unless otherwise noted, all modules support change hooks. + + +command +``````` + +The command module takes the command name followed by a list of arguments, space delimited. +This is the only module that does not use key=value style parameters. + +Example usage:: + + /sbin/shutdown -t now + +This module does not support change hooks and returns the return code from the program as well as timing information about how long the command was running for. + + +copy +```` + +The copy module moves a file on the local box to remote locations. + +*src*:: + +Local absolute path to a file to copy to the remote server + + +*dest*:: + +Remote absolute path where the file should end up + + +This module also returns md5sum information about the resultant file. + + +facter +`````` + +Runs the discovery program 'facter' on the remote system, returning +JSON data that can be useful for inventory purposes. + +Requires that 'facter' and 'ruby-json' be installed on the remote end. + +This module is informative only - it takes no parameters & does not support change hooks, +nor does it make any changes on the system. + + +git +``` + +Deploys software from git checkouts. + +*repo*:: + +git or http protocol address of the repo to checkout + +*dest*:: + +where to check it out, an absolute directory path + +*version*:: + +what version to check out -- either the git SHA, the literal string 'HEAD', or a tag name + + +ohai +```` + +Similar to the facter module, this returns JSON inventory data. Ohai +data is a bit more verbose and nested than facter. + +Requires that 'ohai' be installed on the remote end. + +This module is information only - it takes no parameters & does not +support change hooks, nor does it make any changes on the system. + + +ping +```` + +A trivial test module, this module always returns the integer '1' on +successful contact. + +This module does not support change hooks. + +This module is informative only - it takes no parameters & does not +support change hooks, nor does it make any changes on the system. + + +service +``````` + +Controls services on remote machines. + +*state* + +Values are 'started', 'stopped', or 'restarted'. Started/stopped +are idempotent actions that will not run commands unless neccessary. +'restarted' will always bounce the service + + +*name* + +The name of the service + + +setup +````` + +Writes a JSON file containing key/value data, for use in templating. +Call this once before using the template modules. Playbooks will +execute this module automatically as the first step in each play. + +If facter or ohai are installed, variables from these programs will also +be snapshotted into the JSON file for usage in templating. These variables +are prefixed with 'facter_' and 'ohai_" so it's easy to tell their source. + +*metadata* + +Optionally overrides the default JSON file location of /etc/ansible/setup or ~/ansible/setup +depending on what remote user has been specified. + +If used, also supply the metadata parameter to the template module. + +*anything* + +any other parameters can be named basically anything, and set a key=value +pair in the JSON file for use in templating. + + +template +```````` + +Templates a file out to a remote server. Call the setup module prior to usage. + +*src* + +path of a Jinja2 formatted template on the local server + + +*dest* + +location to render the template on the remote server + + +*metadata* + +location of a JSON file to use to supply template data. Default is /etc/ansible/setup +which is the same as the default for the setup module. Change if running as a non-root +remote user who does not have permissions on /etc/ansible. + + +This module also returns md5sum information about the resultant file. + + +user +```` + +This module is in plan. + + +yum +``` + +This module is in plan. + + +WRITING YOUR OWN MODULES +```````````````````````` + +To write your own modules, simply follow the convention of those already available in +/usr/share/ansible. Modules must return JSON but can be written in any language. +Modules should return hashes, but hashes can be nested. +To support change hooks, modules should return hashes with a changed: True/False +element at the top level. Modules can also choose to indicate a failure scenario +by returning a top level 'failure' element with a True value, and a 'msg' element +describing the nature of the failure. Other values are up to the module. diff --git a/html/_sources/patterns.txt b/html/_sources/patterns.txt index d0ae6b5d37d..6b73114199e 100644 --- a/html/_sources/patterns.txt +++ b/html/_sources/patterns.txt @@ -1,55 +1,69 @@ Patterns ======== -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +How to select hosts you wish to manage + +.. seealso:: + + :doc:`examples` + Examples of basic commands + :doc:`playbooks` + Learning ansible's configuration management language + +Ansible works against multiple systems in your infrastructure at the +same time. It does this by selecting portions of systems listed in Ansible's inventory file, +which defaults to /etc/ansible/hosts, and looks like this:: + + mail.example.com + + [webservers] + foo.example.com + bar.example.com + + [dbservers] + one.example.com + two.example.com + three.example.com + +Targetting All Systems +`````````````````````` + +The pattern 'all' or '*' targets all systems in the inventory file. + +Specific Hosts +`````````````` + +It is possible to address specific hosts: + + one.example.com + one.example.com:two.example.com + +Groups +`````` + +The following patterns address one or more groups: + + webservers + webservers:dbservers + +There is also a magic group 'ungrouped' which selects systems not in a group. + +Wildcards +````````` + +Individual hosts, but not groups, can also be referenced using wildcards: + + *.example.com + *.com + +Mixing Things Up +```````````````` + +Specific hosts, wildcards, and groups can all be mixed in the same pattern + + one*.com:dbservers + +It is not possible to target a host not in the inventory file. + + + diff --git a/html/_sources/playbooks.txt b/html/_sources/playbooks.txt index 677403b5bc6..065005b94e8 100644 --- a/html/_sources/playbooks.txt +++ b/html/_sources/playbooks.txt @@ -1,55 +1,118 @@ Playbooks ========= -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +.. seealso:: + + :doc:`YAMLScripts` + Learn about YAML syntax + :doc:`modules` + Learn about available modules and writing your own + :doc:`patterns` + Learn about how to select hosts + + +Playbooks are a completely different way to use ansible and are particularly awesome. + +They are the basis for a really simple configuration management and deployment system, unlike any that already exist, and one that is very well suited to deploying complex multi-machine applications. While you might run the main ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec. + + +Playbook Example +```````````````` + +Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed +of one or more patterns in a list. By composing a playbook of multiple patterns, it is possible +to orchestrate multi-machine deployments, running certain steps on all machines in +the webservers group, then certain steps on the database server group, then more commands +back on the webservers group, etc:: + +--- +- hosts: all + vars: + http_port: 80 + max_clients: 200 + user: root + tasks: + - include: base.yml somevar=3 othervar=4 + - name: write the apache config file + action: template src=/srv/httpd.j2 dest=/etc/httpd.conf + notify: + - restart apache + - name: ensure apache is running + action: service name=httpd state=started + handlers: + - include: handlers.yml + +Hosts line +`````````` + +The hosts line is alist of one or more groups or host patterns, seperated by colons. + + webservers:dbservers:*.foo.example.com + +Vars section +```````````` + +A list of variables that can be used in the 'action' lines of the template, or in +included templates. Variables are deferenced like this:: + + {{ varname }} + +These variables will be pushed down to the managed systems for use in templating operations. + +Further, if there are discovered variables about the system (say, if facter or ohai were +installed) these variables bubble up back into the playbook, and can be used on each +system just like explicitly set variables. Facter variables are prefixed with 'facter' +and Ohai variables are prefixed with 'ohai'. + +Tasks list +`````````` + +Tasks are executed in order, one at a time, against all machines matched by the host +pattern, before moving on to the next task. Failed tasks are taken out of the rotation. + +Task name and comment +````````` + +Each task has a name (required) and optional comment. This is for informational purposes only + +Task action +``````````` + +The action line is the name of an ansible module followed by parameters. Usually these +are expressed in key=value form, except for the command module, which looks just like a Linux/Unix +command line. See the module documentation for more info. + +Notify statements +````````````````` + +Nearly all modules are written to be 'idempotent' and can signal when they have affected a change +on the remote system. If a notify statement is used, the named handler will be run against +each system where a change was effected, but NOT on systems where no change occurred. + +Handlers +```````` + +Handlers are lists of tasks, not really any different from regular tasks, that are referenced +by name. + +Includes +```````` + +Not all tasks have to be listed directly in the main file. An include file can contain +a list of tasks (in YAML) as well, optionally passing extra variables into the file. +Variables passed in can be deferenced like this: + + {{ variable }} + +Asynchronous Actions and Polling +```````````````````````````````` + +(Information on this feature is pending) + +Executing A Playbook +```````````````````` + +To run a playbook:: + + ansible-playbook playbook.yml + diff --git a/html/_static/basic.css b/html/_static/basic.css index 32630d54c9f..eb22a94218a 100644 --- a/html/_static/basic.css +++ b/html/_static/basic.css @@ -79,6 +79,14 @@ div.sphinxsidebar input { font-size: 1em; } +div.sphinxsidebar input[type="text"] { + width: 170px; +} + +div.sphinxsidebar input[type="submit"] { + width: 30px; +} + img { border: 0; } @@ -236,7 +244,6 @@ img.align-center, .figure.align-center, object.align-center { } .align-center { - clear: both; text-align: center; } diff --git a/html/_static/searchtools.js b/html/_static/searchtools.js index dae92b5e5a6..4a78f9130e5 100644 --- a/html/_static/searchtools.js +++ b/html/_static/searchtools.js @@ -363,10 +363,13 @@ var Search = { var fullname = (prefix ? prefix + '.' : '') + name; if (fullname.toLowerCase().indexOf(object) > -1) { match = objects[prefix][name]; - descr = objnames[match[1]] + _(', in ') + titles[match[0]]; - // XXX the generated anchors are not generally correct - // XXX there may be custom prefixes - result = [filenames[match[0]], fullname, '#'+fullname, descr]; + descr = objnames[match[1]][2] + _(', in ') + titles[match[0]]; + anchor = match[3]; + if (anchor == '') + anchor = fullname; + else if (anchor == '-') + anchor = objnames[match[1]][1] + '-' + fullname; + result = [filenames[match[0]], fullname, '#'+anchor, descr]; switch (match[2]) { case 1: objectResults.push(result); break; case 0: importantResults.push(result); break; @@ -489,7 +492,7 @@ var Search = { listItem.slideDown(5, function() { displayNextItem(); }); - }); + }, "text"); } else { // no source available, just display title Search.output.append(listItem); diff --git a/html/api.html b/html/api.html index cbefb35547f..92aa0ccbf7f 100644 --- a/html/api.html +++ b/html/api.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • API

    -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor.

    -

    Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra.

    -

    Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue.

    -

    In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper.

    -

    Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat.

    +

    The Python API is very powerful, and is how the ansible CLI and ansible-playbook +are implemented.

    +

    It’s pretty simple:

    +
    import ansible.runner
    +
    +runner = ansible.runner.Runner(
    +   module_name='ping',
    +   module_args='',
    +   pattern='web*',
    +   forks=10
    +)
    +datastructure = runner.run()
    +
    +
    +

    The run method returns results per host, grouped by whether they +could be contacted or not. Return types are module specific, as +expressed in the ‘ansible-modules’ documentation.:

    +
    {
    +    "dark" : {
    +       "web1.example.com" : "failure message"
    +    }
    +    "contacted" : {
    +       "web2.example.com" : 1
    +    }
    +}
    +
    +

    A module can return any type of JSON data it wants, so Ansible can +be used as a framework to rapidly build powerful applications and scripts.

  • @@ -111,7 +91,7 @@ hendrerit mi tincidunt dui fermentum placerat.

    title="previous chapter">Examples

    Next topic

    Communicate

    + title="next chapter">Communicate and Get Involved

    This Page

    \ No newline at end of file diff --git a/html/communicate.html b/html/communicate.html index c6260025219..7ad2a0c23a1 100644 --- a/html/communicate.html +++ b/html/communicate.html @@ -7,7 +7,7 @@ - Communicate — Ansible v0.0.1 documentation + Communicate and Get Involved — Ansible v0.0.1 documentation - + @@ -34,7 +34,7 @@ index
  • - next |
  • Getting Started

    -

    How to ansible

    +

    How to download ansible and get started using it

    See also

    +
    Examples
    +
    Examples of basic commands
    YAML Scripts
    -
    Complete documentation of the YAML syntax ansible understands.
    +
    Complete documentation of the YAML syntax ansible understands for playbooks.
    +
    Playbooks
    +
    Learning ansible’s configuration management language
    +
    Ansible Modules
    +
    Learn about modules that ship with ansible
    -
    -

    What you need

    -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor.

    -

    Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra.

    -

    Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue.

    -

    In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper.

    -

    Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat.

    +
    +

    Requirements

    +

    Requirements are extremely minimal.

    +

    If you are running python 2.6 on the overlord machine, you will +need:

    +
      +
    • paramiko
    • +
    • PyYAML
    • +
    • python-jinja2 (for playbooks)
    • +
    +

    If you are running less than Python 2.6, you will also need:

    + +

    On the managed nodes, to use templating, you will need:

    +
      +
    • python-jinja2 (you can install this with ansible)
    • +
    +
    +
    +

    Developer Requirements

    +

    For developers, you may wish to have:

    +
      +
    • asciidoc (for building manpage documentation)
    • +
    • python-sphinx (for building content for ansible.github.com)
    • +
    +
    +
    +

    Getting Ansible

    +

    Tagged releases are available as tar.gz files from the Ansible github +project page:

    + +

    You can also clone the git repository yourself and install Ansible in +one of two ways:

    +
    +

    Python Distutils

    +

    You can also install Ansible using Python Distutils:

    +
    $ git clone git://github.com/ansible/ansible.git
    +$ cd ./ansible
    +$ sudo make install
    +
    +
    +
    +

    Via RPM

    +

    In the near future, pre-built RPMs will be available through your distribution. Until that time you +can use the make rpm command:

    +
    $ git clone git://github.com/ansible/ansible.git
    +$ cd ./ansible
    +$ make rpm
    +$ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm
    +
    +
    +
    +
    +

    Your first commands

    +

    Edit /etc/ansible/hosts and put one or more remote systems in it, for which you have your SSH +key in authorized_keys:

    +
    192.168.1.50
    +aserver.example.org
    +bserver.example.org
    +
    +

    Now try this:

    +
    +
    ssh-agent bash +ssh-add ~/.ssh/id_rsa +ansible all -m ping
    +

    Congratulations. You’ve just contacted your nodes with Ansible. It’s now time to read some +of the more real-world examples.

    @@ -120,7 +150,14 @@ hendrerit mi tincidunt dui fermentum placerat.

    Table Of Contents

    @@ -129,8 +166,8 @@ hendrerit mi tincidunt dui fermentum placerat.

    Ansible

    Next topic

    -

    YAML Scripts

    +

    Patterns

    This Page

  • \ No newline at end of file diff --git a/html/index.html b/html/index.html index 30de343043b..e03ff09afe0 100644 --- a/html/index.html +++ b/html/index.html @@ -46,32 +46,25 @@

    Ansible

    -

    Ansible is a extra-simple tool/API for doing ‘parallel remote things’ -over SSH – whether executing commands, running “modules”, or -executing larger ‘playbooks’ that can serve as a configuration -management or deployment system.

    -

    While Func installation which I -co-wrote, aspired to avoid using SSH and have it’s own daemon -infrastructure, Ansible aspires to be quite different and more -minimal, but still able to grow more modularly over time. This is -based on talking to a lot of users of various tools and wishing to -eliminate problems with connectivity and long running daemons, or not -picking tool X because they preferred to code in Y. Further, -playbooks take things a whole step further, building the config and -deployment system I always wanted to build.

    -

    Why use Ansible versus something else? (Fabric, Capistrano, +

    Ansible is a radically simple deployment, configuration, and command execution framework. +Other tools in this space have been too complicated for too long, require too much bootstrapping, +and have too much learning curve. Ansible is dead simple and painless to extend. For comparison, Puppet and Chef have about 60k lines of code. Ansible’s core is a little over 1000 lines.

    +

    Ansible isn’t just for configuration – it’s also great for Ad-Hoc tasks, +quickly firing off commands against nodes. Where Ansible excels though, is expressing complex multi-node deployment processes, executing complex sequences of commands on different hosts through the “playbooks” feature.

    +

    Ansible does not require programming in any particular language – you can write modules +as scripts or programs that return simple JSON.

    +

    Why use Ansible versus something else? (Puppet, Chef, Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it will be more correct, and it will be the easiest thing to hack on and use you’ll ever see – regardless of your favorite language of choice. -Want to only code plugins in bash or clojure? Ansible doesn’t care. -The docs will fit on one page and the source will be blindingly -obvious.

    -
    -

    Design Principles

    +Systems management doesn’t have to be complicated. Ansible’s docs will remain +short & simple, and the source will be blindingly obvious.

    +
    +

    Design Goals

    • Dead simple setup
    • Super fast & parallel by default
    • -
    • No server or client daemons; use existing SSHd
    • +
    • No server or client daemons; use existing SSHd out of the box
    • No additional software required on client boxes
    • Modules can be written in ANY language
    • Awesome API for creating very powerful distributed scripts
    • @@ -79,57 +72,16 @@ obvious.

    • Create the easiest config management system to use, ever.
    -
    -

    Requirements

    -

    Requirements are extremely minimal.

    -

    If you are running python 2.6 on the overlord machine, you will -need:

    -
      -
    • paramiko
    • -
    • PyYAML
    • -
    • python-jinja2 (for playbooks)
    • -
    • Asciidoc (for building documentation)
    • -
    -

    If you are running less than Python 2.6, you will also need:

    - -

    On the managed nodes, to use templating, you will need:

    -
      -
    • python-jinja2 (you can install this with ansible)
    • -
    -
    -
    -

    Getting Ansible

    -

    Tagged releases are available as tar.gz files from the Ansible github -project page:

    - -

    You can also clone the git repository yourself and install Ansible in -one of two ways:

    -
    -

    Python Distutils

    -

    You can install Ansible using Python Distutils:

    -
    $ git clone git://github.com/ansible/ansible.git
    -$ cd ./ansible
    -$ sudo make install
    -
    -
    -
    -

    Via RPM

    -

    In the future, pre-built RPMs may be available. Until that time you -can use the make rpm command:

    -
    $ git clone git://github.com/ansible/ansible.git
    -$ cd ./ansible
    -$ make rpm
    -$ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm
    -
    -
    +
    +

    About the Author

    +

    Michael DeHaan is a Raleigh, NC based software developer and architect. He created other +DevOps programs such as Cobbler, the popular Linux install server. +Cobbler is used to deploy mission critical systems all over the planet, in industries +ranging from massively multiplayer gaming, core internet infrastructure, finance, +chip design, and more. Michael also helped co-author of Func, which is used +to orchestrate systems in lots of diverse places.

    +

    Ansible is an GPLv3 licensed open source project, so see the contributions section for how to +get involved.

    -
    -

    Communicate or Get Involved

    -
    @@ -187,19 +168,13 @@ $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm

    Table Of Contents

    Next topic

    @@ -213,7 +188,7 @@ $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm \ No newline at end of file diff --git a/html/man.html b/html/man.html index a4aab93a8c4..36b4cf1bdd4 100644 --- a/html/man.html +++ b/html/man.html @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index 1a16ddec0ea..e9f992b290e 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index 8c4b8c1d355..ad1d534af30 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index c2c76bfaccb..ba76d1444f1 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/modules.html b/html/modules.html index 88a446519e9..7c2a1569016 100644 --- a/html/modules.html +++ b/html/modules.html @@ -7,7 +7,7 @@ - Modules — Ansible v0.0.1 documentation + Ansible Modules — Ansible v0.0.1 documentation - + @@ -34,7 +34,7 @@ index
    • - next |
    • -
      -

      Modules

      -

      Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor.

      -

      Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra.

      -

      Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue.

      -

      In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper.

      -

      Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat.

      +
      +

      Ansible Modules

      +
      +

      See also

      +
      +
      Examples
      +
      Examples of using modules in /usr/bin/ansible
      +
      Playbooks
      +
      Examples of using modules with /usr/bin/ansible-playbook
      +
      API
      +
      Examples of using modules with the Python API
      +
      +
      +
      +

      About Modules

      +

      Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible playbooks.

      +
      +
      +

      Idempotence

      +

      Most modules other than command are idempotent, meaning they will seek to avoid changes +unless a change needs to be made. When using ansible playbooks, these modules can +trigger change events. Unless otherwise noted, all modules support change hooks.

      +
      +
      +

      command

      +

      The command module takes the command name followed by a list of arguments, space delimited. +This is the only module that does not use key=value style parameters.

      +

      Example usage:

      +
      /sbin/shutdown -t now
      +
      +

      This module does not support change hooks and returns the return code from the program as well as timing information about how long the command was running for.

      +
      +
      +

      copy

      +

      The copy module moves a file on the local box to remote locations.

      +

      src:

      +

      Local absolute path to a file to copy to the remote server

      +

      dest:

      +

      Remote absolute path where the file should end up

      +

      This module also returns md5sum information about the resultant file.

      +
      +
      +

      facter

      +

      Runs the discovery program ‘facter’ on the remote system, returning +JSON data that can be useful for inventory purposes.

      +

      Requires that ‘facter’ and ‘ruby-json’ be installed on the remote end.

      +

      This module is informative only - it takes no parameters & does not support change hooks, +nor does it make any changes on the system.

      +
      +
      +

      git

      +

      Deploys software from git checkouts.

      +

      repo:

      +

      git or http protocol address of the repo to checkout

      +

      dest:

      +

      where to check it out, an absolute directory path

      +

      version:

      +

      what version to check out – either the git SHA, the literal string ‘HEAD’, or a tag name

      +
      +
      +

      ohai

      +

      Similar to the facter module, this returns JSON inventory data. Ohai +data is a bit more verbose and nested than facter.

      +

      Requires that ‘ohai’ be installed on the remote end.

      +

      This module is information only - it takes no parameters & does not +support change hooks, nor does it make any changes on the system.

      +
      +
      +

      ping

      +

      A trivial test module, this module always returns the integer ‘1’ on +successful contact.

      +

      This module does not support change hooks.

      +

      This module is informative only - it takes no parameters & does not +support change hooks, nor does it make any changes on the system.

      +
      +
      +

      service

      +

      Controls services on remote machines.

      +

      state

      +

      Values are ‘started’, ‘stopped’, or ‘restarted’. Started/stopped +are idempotent actions that will not run commands unless neccessary. +‘restarted’ will always bounce the service

      +

      name

      +

      The name of the service

      +
      +
      +

      setup

      +

      Writes a JSON file containing key/value data, for use in templating. +Call this once before using the template modules. Playbooks will +execute this module automatically as the first step in each play.

      +

      If facter or ohai are installed, variables from these programs will also +be snapshotted into the JSON file for usage in templating. These variables +are prefixed with ‘facter‘ and ‘ohai” so it’s easy to tell their source.

      +

      metadata

      +

      Optionally overrides the default JSON file location of /etc/ansible/setup or ~/ansible/setup +depending on what remote user has been specified.

      +

      If used, also supply the metadata parameter to the template module.

      +

      anything

      +

      any other parameters can be named basically anything, and set a key=value +pair in the JSON file for use in templating.

      +
      +
      +

      template

      +

      Templates a file out to a remote server. Call the setup module prior to usage.

      +

      src

      +

      path of a Jinja2 formatted template on the local server

      +

      dest

      +

      location to render the template on the remote server

      +

      metadata

      +

      location of a JSON file to use to supply template data. Default is /etc/ansible/setup +which is the same as the default for the setup module. Change if running as a non-root +remote user who does not have permissions on /etc/ansible.

      +

      This module also returns md5sum information about the resultant file.

      +
      +
      +

      user

      +

      This module is in plan.

      +
      +
      +

      yum

      +

      This module is in plan.

      +
      +
      +

      WRITING YOUR OWN MODULES

      +

      To write your own modules, simply follow the convention of those already available in +/usr/share/ansible. Modules must return JSON but can be written in any language. +Modules should return hashes, but hashes can be nested. +To support change hooks, modules should return hashes with a changed: True/False +element at the top level. Modules can also choose to indicate a failure scenario +by returning a top level ‘failure’ element with a True value, and a ‘msg’ element +describing the nature of the failure. Other values are up to the module.

      +
      @@ -106,12 +189,33 @@ hendrerit mi tincidunt dui fermentum placerat.

      \ No newline at end of file diff --git a/html/patterns.html b/html/patterns.html index 2a4d00a68a7..b421d63923b 100644 --- a/html/patterns.html +++ b/html/patterns.html @@ -23,8 +23,8 @@ - - + +
    • - next |
    • - previous |
    • Ansible v0.0.1 documentation »
    @@ -50,54 +50,64 @@

    Patterns

    -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor.

    -

    Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra.

    -

    Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue.

    -

    In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper.

    -

    Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat.

    +

    How to select hosts you wish to manage

    +
    +

    See also

    +
    +
    Examples
    +
    Examples of basic commands
    +
    Playbooks
    +
    Learning ansible’s configuration management language
    +
    +
    +

    Ansible works against multiple systems in your infrastructure at the +same time. It does this by selecting portions of systems listed in Ansible’s inventory file, +which defaults to /etc/ansible/hosts, and looks like this:

    +
    mail.example.com
    +
    +[webservers]
    +foo.example.com
    +bar.example.com
    +
    +[dbservers]
    +one.example.com
    +two.example.com
    +three.example.com
    +
    +
    +
    +

    Targetting All Systems

    +

    The pattern ‘all’ or ‘*’ targets all systems in the inventory file.

    +
    +
    +

    Specific Hosts

    +

    It is possible to address specific hosts:

    +
    +
    one.example.com +one.example.com:two.example.com
    +
    +
    +

    Groups

    +

    The following patterns address one or more groups:

    +
    +
    webservers +webservers:dbservers
    +

    There is also a magic group ‘ungrouped’ which selects systems not in a group.

    +
    +
    +

    Wildcards

    +

    Individual hosts, but not groups, can also be referenced using wildcards:

    +
    +
    *.example.com +*.com
    +
    +
    +

    Mixing Things Up

    +

    Specific hosts, wildcards, and groups can all be mixed in the same pattern

    +
    +
    one*.com:dbservers
    +

    It is not possible to target a host not in the inventory file.

    +
    @@ -106,12 +116,24 @@ hendrerit mi tincidunt dui fermentum placerat.

    \ No newline at end of file diff --git a/html/playbooks.html b/html/playbooks.html index be57c481344..57231156664 100644 --- a/html/playbooks.html +++ b/html/playbooks.html @@ -24,7 +24,7 @@ - +
    +

    Table Of Contents

    + +

    Previous topic

    -

    Modules

    +

    YAML Scripts

    Next topic

    Examples

    @@ -120,7 +202,7 @@ hendrerit mi tincidunt dui fermentum placerat.

    \ No newline at end of file diff --git a/html/search.html b/html/search.html index 66351de19bc..e870053d704 100644 --- a/html/search.html +++ b/html/search.html @@ -90,8 +90,8 @@
    \ No newline at end of file diff --git a/html/searchindex.js b/html/searchindex.js index a0bf1f8f129..418bbdb16db 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:5,rhoncu:[0,2,3,4,6,7,8],donec:[0,2,3,4,6,7,8],mcollect:1,code:1,lacu:[0,2,3,4,6,7,8],nunc:[0,2,3,4,6,7,8],vel:[0,2,3,4,6,7,8],blindingli:1,sourc:1,everi:5,fals:5,consequat:[0,2,3,4,6,7,8],veri:1,risu:[0,2,3,4,6,7,8],luctu:[0,2,3,4,6,7,8],level:5,list:[5,1],vivamu:[0,2,3,4,6,7,8],item:5,dotnet:5,saltstack:1,phasellu:[0,2,3,4,6,7,8],ornar:[0,2,3,4,6,7,8],second:5,design:1,eleifend:[0,2,3,4,6,7,8],further:1,what:[0,1],diam:[0,2,3,4,6,7,8],abl:1,nec:[0,2,3,4,6,7,8],abbrevi:5,ever:1,elimin:1,eckersberg:5,leo:[0,2,3,4,6,7,8],valu:5,aliquam:[0,2,3,4,6,7,8],box:1,larger:1,adipisc:[0,2,3,4,6,7,8],venenati:[0,2,3,4,6,7,8],permit:5,nulla:[0,2,3,4,6,7,8],iaculi:[0,2,3,4,6,7,8],via:1,regardless:[5,1],tempu:[0,2,3,4,6,7,8],extra:1,modul:[1,2,9],prefer:1,qui:[0,2,3,4,6,7,8],api:[1,7],instal:1,should:5,from:1,tar:1,commun:[1,3],visit:1,two:[5,1],noarch:1,sagitti:[0,2,3,4,6,7,8],until:1,more:1,nequ:[0,2,3,4,6,7,8],sshd:1,easiest:1,must:5,join:1,habitass:[0,2,3,4,6,7,8],setup:1,can:[5,1],ero:[0,2,3,4,6,7,8],root:[5,1],employe:5,yamllint:5,ultric:[0,2,3,4,6,7,8],sudo:1,templat:1,knows_oop:5,tag:1,want:1,nullam:[0,2,3,4,6,7,8],alwai:1,newlin:5,puru:[0,2,3,4,6,7,8],lame:5,capistrano:1,write:5,how:0,etiam:[0,2,3,4,6,7,8],config:1,arcu:[0,2,3,4,6,7,8],clone:1,usabl:1,tristiqu:[0,2,3,4,6,7,8],mai:1,associ:5,grow:1,man:[1,9],github:1,sit:[0,2,3,4,6,7,8],favorit:1,turpi:[0,2,3,4,6,7,8],element:5,issu:1,mango:5,combin:5,talk:1,help:9,over:1,orang:5,becaus:1,elit:[0,2,3,4,5,6,7,8],rpmbuild:1,comma:5,vita:[0,2,3,4,6,7,8],still:1,overlord:1,group:1,fit:1,yaml:[5,0,1],infrastructur:1,mail:1,sapien:[0,2,3,4,6,7,8],non:[0,1,2,3,4,6,7,8],thei:1,food:5,nibh:[0,2,3,4,6,7,8],egesta:[0,2,3,4,6,7,8],jinja2:1,choic:1,multiprocess:1,name:5,simpl:[5,1],viverra:[0,2,3,4,6,7,8],porta:[0,2,3,4,6,7,8],separ:5,each:5,metu:[0,2,3,4,6,7,8],auctor:[0,2,3,4,6,7,8],realli:5,backport:1,connect:1,out:5,network:1,content:1,correct:[5,1],hendrerit:[0,2,3,4,6,7,8],base:1,dictionari:5,morbi:[0,2,3,4,6,7,8],molli:[0,2,3,4,6,7,8],bash:1,care:1,vestibulum:[0,2,3,4,6,7,8],pyyaml:1,indent:5,maecena:[0,2,3,4,6,7,8],thing:1,principl:1,fusc:[0,2,3,4,6,7,8],softwar:1,obviou:1,yourself:1,instruct:1,"long":1,enim:[0,2,3,4,6,7,8],differ:1,script:[5,0,1],data:5,system:1,parallel:1,molesti:[0,2,3,4,6,7,8],john:5,banana:5,option:5,tool:1,specifi:5,quam:[0,2,3,4,6,7,8],accumsan:[0,2,3,4,6,7,8],serv:1,provid:5,sollicitudin:[0,2,3,4,6,7,8],structur:5,charact:5,faucibu:[0,2,3,4,6,7,8],uses_cv:5,pre:1,ani:1,ant:[0,2,3,4,6,7,8],download:1,have:1,need:[5,0,1],tellu:[0,2,3,4,6,7,8],paramiko:1,built:1,also:[5,0,1],client:1,massa:[0,2,3,4,6,7,8],take:1,which:1,pulvinar:[0,2,3,4,6,7,8],begin:5,distribut:1,deploy:1,most:5,why:1,augu:[0,2,3,4,6,7,8],doc:1,lectu:[0,2,3,4,6,7,8],sodal:[0,2,3,4,6,7,8],likes_emac:5,clojur:1,dolor:[0,2,3,4,6,7,8],modularli:1,awesom:1,laoreet:[0,2,3,4,6,7,8],blandit:[0,2,3,4,6,7,8],syntax:[5,0],playbook:[1,4,9],hack:1,involv:1,onli:1,configur:1,releas:1,than:1,consectetur:[0,2,3,4,6,7,8],variu:[0,2,3,4,6,7,8],variou:1,get:[5,0,1],bibendum:[0,2,3,4,6,7,8],ssh:1,malesuada:[0,2,3,4,6,7,8],requir:1,uvh:1,nisi:[0,2,3,4,6,7,8],nisl:[0,2,3,4,6,7,8],remot:1,cra:[0,2,3,4,6,7,8],orci:[0,2,3,4,6,7,8],wrote:1,view:[1,9],suscipit:[0,2,3,4,6,7,8],see:[5,0,1],sed:[0,2,3,4,6,7,8],sem:[0,2,3,4,6,7,8],project:1,manpag:9,pattern:[1,6],someth:1,written:1,ligula:[0,2,3,4,6,7,8],between:5,irc:1,elementum:[0,2,3,4,6,7,8],kei:5,handful:9,aspir:1,job:5,magna:[0,2,3,4,6,7,8],amet:[0,2,3,4,6,7,8],addit:[5,1],plugin:1,tempor:[0,2,3,4,6,7,8],etc:1,placerat:[0,2,3,4,6,7,8],com:1,proin:[0,2,3,4,6,7,8],overview:5,rpm:1,matti:[0,2,3,4,6,7,8],quit:1,pretium:[0,2,3,4,6,7,8],suspendiss:[0,2,3,4,6,7,8],basic:[5,1],feugiat:[0,2,3,4,6,7,8],scelerisqu:[0,2,3,4,6,7,8],rubi:5,vulput:[0,2,3,4,6,7,8],understand:0,pellentesqu:[0,2,3,4,6,7,8],func:1,emploi:5,tortor:[0,2,3,4,6,7,8],"while":1,dictum:[0,2,3,4,6,7,8],erat:[0,2,3,4,6,7,8],sever:5,develop:5,minim:1,make:1,platea:[0,2,3,4,6,7,8],same:5,member:5,python:[5,1],document:[0,1],ansibl:[5,0,9,1],complet:0,pick:1,fruit:5,user:1,extrem:1,distutil:1,squar:5,whole:1,exampl:[1,8],command:1,thi:[5,1],execut:1,less:1,skill:5,languag:[5,1],versu:1,hac:[0,2,3,4,6,7,8],simplejson:1,els:1,build:1,ipsum:[0,2,3,4,6,7,8],tincidunt:[0,2,3,4,6,7,8],know:5,daemon:1,like:5,integ:[0,2,3,4,6,7,8],server:1,"boolean":5,velit:[0,2,3,4,6,7,8],page:[5,1,9],dead:1,est:[0,2,3,4,6,7,8],avoid:1,ultrici:[0,2,3,4,6,7,8],tracker:1,machin:1,run:1,power:1,dui:[0,2,3,4,6,7,8],step:1,repositori:1,"super":1,aenean:[0,2,3,4,6,7,8],about:5,justo:[0,2,3,4,6,7,8],libero:[0,2,3,4,6,7,8],surround:5,manag:1,quisqu:[0,2,3,4,6,7,8],own:1,"final":5,your:[5,1,9],praesent:[0,2,3,4,6,7,8],git:1,fabric:1,wai:[5,1],interdum:[0,2,3,4,6,7,8],fast:1,avail:1,start:[5,0,1],appl:5,porttitor:[0,2,3,4,6,7,8],lot:1,form:5,eget:[0,2,3,4,6,7,8],lint:5,loborti:[0,2,3,4,6,7,8],ullamcorp:[0,2,3,4,6,7,8],line:5,"true":5,freenod:1,strawberri:5,whether:1,wish:1,record:5,problem:1,tasti:5,creat:1,doesn:1,repres:5,ansil:9,exist:1,file:[5,1],mauri:[0,2,3,4,6,7,8],ship:9,urna:[0,2,3,4,6,7,8],conval:[0,2,3,4,6,7,8],googl:1,nam:[0,2,3,4,6,7,8],"default":1,bracket:5,futur:1,dignissim:[0,2,3,4,6,7,8],test:1,you:[5,0,9,1],node:1,dapibu:[0,2,3,4,6,7,8],journei:9,gravida:[0,2,3,4,6,7,8],asciidoc:1,feli:[0,2,3,4,6,7,8],aliquet:[0,2,3,4,6,7,8],lorem:[0,2,3,4,6,7,8],dictumst:[0,2,3,4,6,7,8],rutrum:[0,2,3,4,6,7,8],time:1,far:1,fermentum:[0,2,3,4,6,7,8]},objtypes:{},titles:["Getting Started","Ansible","Modules","Communicate","Playbooks","YAML Scripts","Patterns","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","communicate","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,4,5,6,8],code:[1,2,8],donec:[],mcollect:1,prefix:[2,4,8],rhoncu:[],lacu:[],follow:[6,2,4],scp:8,nunc:[],bubbl:4,depend:2,fusc:[],program:[1,2,4],certain:4,vel:[],blindingli:1,spec:4,sourc:[1,2,4,8],everi:5,string:2,fals:[5,2],consequat:[],failur:[7,2],veri:[1,7,4],affect:4,risu:[],luctu:[],magic:6,level:[5,2],id_rsa:[0,8],list:[1,2,3,4,5,6,8,9],vivamu:[],item:5,ansible_librari:[],form:[5,4],dotnet:5,saltstack:1,mpdehaan:[],phasellu:[],ornar:[],natur:2,seper:4,chef:1,second:5,design:1,pass:4,eleifend:[],further:4,even:8,what:2,diam:[],favcolor:8,section:[1,4],abl:[],nec:[],abbrevi:5,version:[2,8],directori:2,ever:1,method:7,metadata:2,tar:0,suscipit:[],hash:2,eckersberg:5,here:[],leo:[],address:[6,2],path:2,sinc:8,valu:[5,2,4],aliquam:[],scelerisqu:[],great:1,purpos:[2,4],larger:[],host:[0,1,2,4,6,7,8],adipisc:[],prior:2,venenati:[],permit:5,action:[1,2,4],nulla:[],implement:7,iaculi:[],via:[0,1],regardless:[5,1],dictionari:5,accumsan:[],extra:4,apach:[4,8],modul:[0,1,2,4,7,8],prefer:[],put:[0,8],unix:4,api:[1,7,2],instal:[8,0,2,4,1],select:[6,4],httpd:4,from:[0,1,2,4,5,8],describ:2,would:8,commun:[1,3],visit:3,two:[5,0,6],noarch:0,dehaan:1,call:2,usr:[2,8],taken:4,sagitti:[],basi:4,checkout:2,until:0,more:[0,6,2,4,1],desir:[],idempot:[1,2,4],dbserver:[6,4],sbin:[2,8],agent:[0,8],particular:1,easiest:1,must:[5,2],none:[],join:3,ibm:[],module_arg:7,habitass:[],setup:[1,2,8],work:[6,8],critic:1,remain:1,tag:[0,2],can:[0,1,2,4,5,6,7,8],learn:[0,6,4,1],ero:[],root:[5,1,2,4],pick:5,employe:5,myapp:8,yamllint:5,ultric:[],process:[1,8],rpath:[],sudo:0,share:2,templat:[8,0,2,4,1],othervar:4,knows_oop:5,minimum:4,want:7,occur:4,nullam:[],alwai:2,multipl:[6,4,8],newlin:5,puru:[],sit:[],capistrano:1,ping:[0,7,2,1],write:[5,1,2,4,8],how:[0,1,2,4,5,6,7],etiam:[],yum:[1,2],simpl:[5,1,7,4,8],updat:8,arcu:[],express:[5,1,7,4],referenc:[6,4],clone:0,usabl:1,tristiqu:[],mai:[5,0],end:2,data:[5,7,2,8],parallel:[1,8],man:[1,9],repo:[2,8],github:[0,3],orchestr:[1,4],read:[5,0],bootstrap:1,favorit:1,turpi:[],element:[5,2],issu:3,inform:[2,4],mango:5,combin:5,asynchron:[1,4],order:4,talk:[],oper:[1,4,8],help:1,over:1,move:[2,4],orang:5,becaus:[],elit:5,rpmbuild:0,comma:5,vita:[],still:[],paramet:[2,4],jid:8,overlord:0,group:[1,7,3,4,6],cli:7,fit:[],yaml:[5,0,4,1],pend:[4,8],rapidli:7,infrastructur:[1,6],mail:[6,3],sapien:[],main:4,might:4,easier:[],non:[1,2],"return":[1,7,2],thei:[7,2,4,8],food:5,alist:4,nibh:[],egesta:[],"break":[],framework:[1,7],jinja2:[0,2,8],now:[0,2],nor:2,choic:1,multiprocess:0,name:[5,1,2,4],anyth:2,neccessari:[2,8],config:[1,4],viverra:[],datastructur:7,porta:[],separ:5,each:[5,2,4,8],stock:[],nearli:4,mean:2,metu:[],michael:1,auctor:[],realli:[5,4],contributor:[],backport:0,connect:[],our:5,todo:[],event:2,out:[5,1,2,4],variabl:[2,4,8],"try":0,shown:[],network:3,space:[1,2],reboot:8,content:[0,1],stuff:8,sshd:1,internet:1,correct:[5,1],red:8,state:[2,4,8],hendrerit:[],ntp:8,contain:[2,4],differ:[1,4,8],pub:8,control:[1,2,4,8],base:[1,4],lab:[],tempu:[],qui:[],org:0,molli:[],bash:[0,8],care:[],vestibulum:[],pyyaml:0,indent:5,maecena:[],could:7,fqdn:8,thing:[1,6],place:1,isn:1,principl:[],licens:1,first:[0,2,8,1],origin:[],softwar:[1,2],rang:1,notifi:[1,4,8],obviou:1,onc:2,number:2,yourself:0,hook:2,instruct:0,alreadi:[2,4],puppet:1,fast:1,enim:[],massiv:1,open:1,straight:8,given:8,convent:2,script:[0,1,4,5,7,8],associ:5,top:2,system:[0,1,2,4,6,8],messag:7,grow:[],too:1,statement:[1,4],molesti:[],john:5,banana:5,includ:[1,4],shell:[1,8],option:[5,9,2,4,8],tool:1,copi:[1,2,8],specifi:[5,2,8],quam:[],next:4,"short":1,kept:4,than:[0,2,8],serv:[],liter:2,target:[1,6],provid:5,sollicitudin:[],heavyweight:[],structur:5,charact:5,project:[0,3,8,1],architect:1,were:4,minut:[],uses_cv:5,pre:0,sai:4,runner:7,ani:[1,7,2,4,8],ant:[],download:0,have:[0,2,4,1],need:[5,0,2,8],tellu:[],seek:2,paramiko:0,engin:8,built:0,contact:[0,7,2],note:[2,8],also:[0,1,2,4,5,6,8],client:1,massa:[],build:[0,7],indic:2,environ:[],divers:1,pulvinar:[],begin:5,sure:[],unless:2,distribut:[0,1],deploy:[1,4],track:8,who:2,discov:4,most:[5,2],plai:2,regular:4,plan:2,deploi:[1,2,4,8],pair:2,why:1,porttitor:[],simplic:[],doc:1,later:8,cover:8,doe:[1,2,6],sodal:[],bracket:5,snapshot:2,clojur:[],wildcard:[1,6],dolor:[],someth:[1,8],awesom:[1,4],laoreet:[],blandit:[],verbos:2,syntax:[5,0,4],bring:[],directli:[2,4,8],raleigh:1,particularli:4,playbook:[0,1,2,4,5,6,7,8],permiss:2,hack:1,radic:1,pki:[],trivial:2,varnam:4,involv:[1,3],absolut:2,onli:[2,4],explicitli:4,locat:2,just:[8,0,4,1],pretti:7,configur:[5,0,6,4,1],releas:0,written:[1,2,4,8],should:[5,2],consectetur:[],somevar:4,congratul:0,variu:[],local:2,yml:4,long_running_oper:8,contribut:1,variou:[],get:[5,0,3,8,1],financ:1,stop:2,mission:1,bibendum:[],ssl:[],ssh:[0,8],malesuada:[],requir:[0,2,4,1],uvh:0,nisi:[],bar:6,lame:5,nisl:[],remot:[0,2,4,8],cra:[],orci:[],through:[0,2,1],where:[1,2,4],wrote:[],view:[3,9],set:[2,4],creator:[],elimin:[],see:[0,1,2,4,5,6,8],sed:[],result:[7,2],fail:4,sem:[],extend:1,ntp_server:8,faucibu:[],statu:8,kei:[5,0,2,4],databas:4,modularli:[],discoveri:2,restart:[2,4,8],behind:[],won:8,languag:[5,0,6,2,1],between:5,"import":7,irc:3,altern:8,elementum:[],manpag:[0,9],handful:[],aspir:[],style:2,job:[5,8],aserv:0,magna:[],webapp:8,amet:[],addit:[5,1],delimit:2,plugin:[],goal:1,against:[1,4,6],tempor:[],etc:[0,1,2,4,6,8],befor:[2,4],mani:8,placerat:[],com:[0,7,4,6],proin:[],sha:2,assur:4,simpli:2,author:1,overview:5,format:[2,4,8],inspir:[],colon:4,shutdown:2,linux:[1,4],poll:[1,4,8],rpm:[0,1],matti:[],dui:[],pretium:[],multiplay:1,morbi:[],three:6,been:[1,2],json:[1,7,2],much:1,basic:[5,0,6,2,1],ungroup:6,feugiat:[],quickli:[5,1],box:[1,2],fire:1,rubi:[5,2,8],vulput:[],argument:2,understand:0,pellentesqu:[],func:1,atlanta:8,job_statu:8,those:[5,2],emploi:5,authorized_kei:0,multi:[1,4],tortor:[],look:[6,4,8],nequ:[],hoc:[1,4],servic:[1,2,4],md5sum:2,batch:[],"while":4,overrid:2,ipsum:[],cobbler:1,real:0,motd:8,max_client:4,them:8,erat:[],conf:[4,8],module_nam:7,ship:[0,2],sever:5,http_port:4,develop:[5,0,1],inventori:[6,2],minim:0,make:[0,2,8],platea:[],same:[5,6,2,8],member:5,python:[0,1,2,5,7,8],complex:[1,4],success:2,fedora:[],document:[0,7,4],ansibl:[0,1,2,3,4,5,6,7,8,9],complet:[0,4],finish:[],http:2,webserv:[6,4,8],nest:2,painless:1,effect:4,dai:[],fruit:5,user:[1,2,4],ownership:[],extrem:0,php:8,distutil:[0,1],chang:[2,4,8],squar:5,exceedingli:[],task:[1,4,8],off:1,scenario:2,whole:[],well:[2,4],spent:[],exampl:[0,1,2,4,5,6,7,8],command:[0,1,2,4,6,8,9],thi:[0,1,2,4,5,6,8],choos:2,usual:4,comment:[1,4],protocol:2,execut:[1,2,4],less:[0,1],when:[2,4,8],skill:5,simultan:8,ligula:[],previous:[],web:[7,8],versu:1,easi:2,mix:[1,6],trigger:2,hac:[],except:4,littl:1,add:[0,8],other:[1,2,8],els:1,unlik:4,hat:[],match:4,take:2,bin:[2,8],applic:[7,4],which:[0,1,2,4,5,6],ohai:[1,2,4,8],dest:[2,4,8],tincidunt:[],dark:7,game:1,know:5,background:[1,8],world:0,bit:2,daemon:1,like:[5,6,4,8],specif:[1,7,8,6],signal:4,manual:[],integ:2,server:[1,2,4,8],edit:0,"boolean":5,either:2,velit:[],popular:1,async:[],page:[5,0,9,3,1],deal:[],suppli:2,some:0,back:4,dead:1,tumblr:[],home:[],librari:[],tmp:8,render:2,avoid:2,though:1,ultrici:[],per:7,tracker:3,unit:[],pattern:[1,7,4,6],foo:[6,4,8],complic:1,machin:[0,2,4,8],core:1,run:[0,7,2,4,8],power:[1,7],quit:[],lose:8,usag:[2,8],asciidoc:0,web2:7,step:[2,4],web1:7,repositori:0,"super":1,aenean:[],simpler:8,comparison:1,about:[5,0,2,4,1],gplv3:1,justo:[],libero:[],surround:5,manag:[5,0,6,4,1],srv:[4,8],quisqu:[],industri:1,own:[1,2,4],"final":5,bounc:2,automat:2,compos:4,down:4,ensur:4,perl:8,bserver:0,your:[0,1,2,4,5,6,8],praesent:[],git:[0,2,8,1],type:7,fabric:1,wai:[5,0,4,8],interdum:[],transfer:[1,8],dictum:[],support:[2,8],rotat:4,"long":[1,2,8],avail:[0,9,2,4,8],start:[5,0,2,4,1],appl:5,augu:[],lot:[1,8],suit:4,"var":[1,4],individu:6,fork:7,head:[2,8],doctyp:[],simplejson:0,eget:[],handler:[1,4,8],lint:5,msg:2,loborti:[],ullamcorp:[],line:[5,1,9,4,8],"true":[5,2],freenod:3,info:4,strawberri:5,made:[2,8],possibl:[6,4,8],whether:7,wish:[5,0,6],tell:[2,8],planet:1,record:5,below:8,limit:[1,8],suspendiss:[],otherwis:2,problem:[],similar:2,chip:1,facter:[1,2,4,8],curv:1,featur:[1,4],tasti:5,creat:1,lectu:[],doesn:1,repres:5,ansil:[],deferenc:4,file:[0,1,2,4,5,6,8],mauri:[],exist:[1,4],check:[2,8],urna:[],conval:[],googl:3,excel:1,nam:[],"default":[1,2,6],likes_emac:5,futur:0,dignissim:[],test:[0,2],you:[0,1,4,5,6,8],node:[0,1],dapibu:[],journei:[],gravida:[],sequenc:1,devop:1,push:4,est:[],feli:[],aliquet:[],src:[2,4,8],lorem:[],"60k":1,dictumst:[],sphinx:0,rutrum:[],anywher:[],descript:[],portion:6,time:[0,1,2,4,6,8],far:1,serious:[],fermentum:[]},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Communicate and Get Involved","Playbooks","YAML Scripts","Patterns","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","communicate","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file diff --git a/rst/YAMLScripts.rst b/rst/YAMLScripts.rst index de59528b785..32d76aff149 100644 --- a/rst/YAMLScripts.rst +++ b/rst/YAMLScripts.rst @@ -1,8 +1,9 @@ YAML Scripts ============ -This page provides a basic overview of correct YAML syntax. - +This page provides a basic overview of correct YAML syntax, which is how Ansible +playbooks (our configuration management language) are expressed. +You may also wish to read playbook examples and will quickly pick this up from those. YAML Basics ----------- @@ -74,7 +75,7 @@ Finally, you can combine these data structures:: dotnet: Lame That's all you really need to know about YAML to get started writing -`Ansible` scripts. +`Ansible` playbooks. .. seealso:: diff --git a/rst/api.rst b/rst/api.rst index 1cc8454a67d..a3ddea45951 100644 --- a/rst/api.rst +++ b/rst/api.rst @@ -1,55 +1,35 @@ API -=== - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +``` + +The Python API is very powerful, and is how the ansible CLI and ansible-playbook +are implemented. + +It's pretty simple:: + + import ansible.runner + + runner = ansible.runner.Runner( + module_name='ping', + module_args='', + pattern='web*', + forks=10 + ) + datastructure = runner.run() + +The run method returns results per host, grouped by whether they +could be contacted or not. Return types are module specific, as +expressed in the 'ansible-modules' documentation.:: + + { + "dark" : { + "web1.example.com" : "failure message" + } + "contacted" : { + "web2.example.com" : 1 + } + } + +A module can return any type of JSON data it wants, so Ansible can +be used as a framework to rapidly build powerful applications and scripts. + + diff --git a/rst/communicate.rst b/rst/communicate.rst index 8e4d12a3b0b..cd718ddcbfb 100644 --- a/rst/communicate.rst +++ b/rst/communicate.rst @@ -1,55 +1,9 @@ -Communicate -=========== +Communicate and Get Involved +=========================== -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. +* Join the `ansible-project mailing list `_ on Google Groups +* Join `#ansible `_ on the `freenode IRC network `_ +* Visit the `project page `_ on Github -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. + - View the `issue tracker `_ -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. diff --git a/rst/examples.rst b/rst/examples.rst index 44194c9ff0b..0a5df0d90d8 100644 --- a/rst/examples.rst +++ b/rst/examples.rst @@ -1,71 +1,65 @@ Examples ======== -Examples 1 -`````````` - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - - -Examples 2 -`````````` - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Examples 3 -`````````` - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -Examples 3 -`````````` - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Examples 4 -`````````` - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +.. seealso:: + + :doc:`modules` + A list of available modules + :doc:`playbooks` + Alternative ways to use ansible + + +Parallelism and Shell Commands +`````````````````````````````` + +Reboot all web servers in Atlanta, 10 at a time:: + + ssh-agent bash + ssh-add ~/.ssh/id_rsa.pub + + ansible atlanta -a "/sbin/reboot" -f 10 + +The -f 10 specifies the usage of 10 simultaneous processes. + +Note that other than the command module, ansible modules do not work like simple scripts. They make the remote system look like you state, and run the commands neccessary to get it there. + + +Example 2: Time Limited Background Operations +````````````````````````````````````````````` + + +Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won't lose track. Polling support is pending in the command line.:: + + ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff" + ansible all -n job_status -a jid=123456789 + +Any module other than 'copy' or 'template' can be backgrounded. + + +Examples 3: File Transfer & Templating +`````````````````````````````````````` + +Ansible can SCP lots of files to multiple machines in parallel, and optionally use them as template sources. + +To just transfer a file directly to many different servers:: + + ansible atlanta copy -a "/etc/hosts /tmp/hosts" + +To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the template module to write the files using the templates. Templates are written in Jinja2 format. Playbooks (covered below) will run the setup module for you, making this even simpler.:: + + ansible webservers -m setup -a "favcolor=red ntp_server=192.168.1.1" + ansible webservers -m template -a "src=/srv/motd.j2 dest=/etc/motd" + ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf" + +Need something like the fqdn in a template? If facter or ohai are installed, data from these projects will also be made available to the template engine, using 'facter' and 'ohai' prefixes for each. + +Examples 3: Deploying From Source Control +````````````````````````````````````````` + +Deploy your webapp straight from git:: + + ansible webservers -m git -a "repo=git://foo dest=/srv/myapp version=HEAD" + +Since ansible modules can notify change handlers (see 'Playbooks') it is possible to tell ansible to run specific tasks when the code is updated, such as deploying Perl/Python/PHP/Ruby directly from git and then restarting apache. + + diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index 247faf96c03..638039c4a93 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -1,67 +1,100 @@ Getting Started =============== -How to ansible - +How to download ansible and get started using it .. seealso:: + :doc:`examples` + Examples of basic commands :doc:`YAMLScripts` - Complete documentation of the YAML syntax `ansible` understands. - - -What you need -------------- - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. + Complete documentation of the YAML syntax `ansible` understands for playbooks. + :doc:`playbooks` + Learning ansible's configuration management language + :doc:`modules` + Learn about modules that ship with ansible + +Requirements +```````````` + +Requirements are extremely minimal. + +If you are running python 2.6 on the **overlord** machine, you will +need: + +* ``paramiko`` +* ``PyYAML`` +* ``python-jinja2`` (for playbooks) + +If you are running less than Python 2.6, you will also need: + +* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module + + - `Installation and Testing Instructions `_ + +* ``simplejson`` + +On the managed nodes, to use templating, you will need: + +* ``python-jinja2`` (you can install this with ansible) + +Developer Requirements +`````````````````````` + +For developers, you may wish to have: + +* ``asciidoc`` (for building manpage documentation) +* ``python-sphinx`` (for building content for ansible.github.com) + + +Getting Ansible +``````````````` + +Tagged releases are available as tar.gz files from the Ansible github +project page: + +* `Ansible/downloads `_ + +You can also clone the git repository yourself and install Ansible in +one of two ways: + + +Python Distutils +++++++++++++++++ + +You can also install Ansible using Python Distutils:: + + $ git clone git://github.com/ansible/ansible.git + $ cd ./ansible + $ sudo make install + +Via RPM ++++++++ + +In the near future, pre-built RPMs will be available through your distribution. Until that time you +can use the ``make rpm`` command:: + + $ git clone git://github.com/ansible/ansible.git + $ cd ./ansible + $ make rpm + $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm + +Your first commands +``````````````````` + +Edit /etc/ansible/hosts and put one or more remote systems in it, for which you have your SSH +key in ``authorized_keys``:: + + 192.168.1.50 + aserver.example.org + bserver.example.org + +Now try this: + + ssh-agent bash + ssh-add ~/.ssh/id_rsa + ansible all -m ping + +Congratulations. You've just contacted your nodes with Ansible. It's now time to read some +of the more real-world examples. + diff --git a/rst/index.rst b/rst/index.rst index c26aabef7b7..4ab721e4e24 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -5,102 +5,48 @@ Ansible ======= -Ansible is a extra-simple tool/API for doing 'parallel remote things' -over SSH -- whether executing commands, running "modules", or -executing larger 'playbooks' that can serve as a configuration -management or deployment system. +Ansible is a radically simple deployment, configuration, and command execution framework. +Other tools in this space have been too complicated for too long, require too much bootstrapping, +and have too much learning curve. Ansible is dead simple and painless to extend. For comparison, Puppet and Chef have about 60k lines of code. Ansible's core is a little over 1000 lines. -While `Func installation `_ which I -co-wrote, aspired to avoid using SSH and have it's own daemon -infrastructure, Ansible aspires to be quite different and more -minimal, but still able to grow more modularly over time. This is -based on talking to a lot of users of various tools and wishing to -eliminate problems with connectivity and long running daemons, or not -picking tool `X` because they preferred to code in `Y`. Further, -playbooks take things a whole step further, building the config and -deployment system I always wanted to build. +Ansible isn't just for configuration -- it's also great for Ad-Hoc tasks, +quickly firing off commands against nodes. Where Ansible excels though, is expressing complex multi-node deployment processes, executing complex sequences of commands on different hosts through the "playbooks" feature. -Why use Ansible versus something else? (Fabric, Capistrano, +Ansible does not require programming in any particular language -- you can write modules +as scripts or programs that return simple JSON. + +Why use Ansible versus something else? (Puppet, Chef, Fabric, Capistrano, mCollective, Func, SaltStack, etc?) It will have far less code, it will be more correct, and it will be the easiest thing to hack on and use you'll ever see -- regardless of your favorite language of choice. -Want to only code plugins in bash or clojure? Ansible doesn't care. -The docs will fit on one page and the source will be blindingly -obvious. +Systems management doesn't have to be complicated. Ansible's docs will remain +short & simple, and the source will be blindingly obvious. -Design Principles -````````````````` +Design Goals +```````````` * Dead simple setup * Super fast & parallel by default -* No server or client daemons; use existing SSHd +* No server or client daemons; use existing SSHd out of the box * No additional software required on client boxes * Modules can be written in ANY language * Awesome API for creating very powerful distributed scripts * Be usable as non-root * Create the easiest config management system to use, ever. +About the Author +```````````````` -Requirements -```````````` - -Requirements are extremely minimal. - -If you are running python 2.6 on the **overlord** machine, you will -need: - -* ``paramiko`` -* ``PyYAML`` -* ``python-jinja2`` (for playbooks) -* ``Asciidoc`` (for building documentation) - -If you are running less than Python 2.6, you will also need: - -* The Python 2.4 or 2.5 backport of the ``multiprocessing`` module - - - `Installation and Testing Instructions `_ - -* ``simplejson`` - -On the managed nodes, to use templating, you will need: - -* ``python-jinja2`` (you can install this with ansible) - - -Getting Ansible -``````````````` - -Tagged releases are available as tar.gz files from the Ansible github -project page: +Michael DeHaan is a Raleigh, NC based software developer and architect. He created other +DevOps programs such as Cobbler, the popular Linux install server. +Cobbler is used to deploy mission critical systems all over the planet, in industries +ranging from massively multiplayer gaming, core internet infrastructure, finance, +chip design, and more. Michael also helped co-author of Func, which is used +to orchestrate systems in lots of diverse places. -* `Ansible/downloads `_ - -You can also clone the git repository yourself and install Ansible in -one of two ways: - - -Python Distutils -++++++++++++++++ - -You can install Ansible using Python Distutils:: - - $ git clone git://github.com/ansible/ansible.git - $ cd ./ansible - $ sudo make install - - -Via RPM -+++++++ - -In the future, pre-built RPMs may be available. Until that time you -can use the ``make rpm`` command:: - - $ git clone git://github.com/ansible/ansible.git - $ cd ./ansible - $ make rpm - $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-1.0-1.noarch.rpm - +Ansible is an GPLv3 licensed open source project, so see the contributions section for how to +get involved. Contents ======== @@ -109,21 +55,11 @@ Contents :maxdepth: 3 gettingstarted - YAMLScripts patterns modules + YAMLScripts playbooks examples api communicate man - - -Communicate or Get Involved -=========================== - -* Join the `ansible-project mailing list `_ on Google Groups -* Join `#ansible `_ on the `freenode IRC network `_ -* Visit the `project page `_ on Github - - - View the `issue tracker `_ diff --git a/rst/man.rst b/rst/man.rst index d25477bf110..41dd4e650ee 100644 --- a/rst/man.rst +++ b/rst/man.rst @@ -3,19 +3,10 @@ Man Pages ========= -Ansile ships with a handfull of manpages to help you on your journey. +Ansible's manpage lists available command line options. ansible(1) ---------- * `View ansible.1 `_ -ansible-modules(5) ------------------- - -* `View ansible-modules.5 `_ - -ansible-playbook(5) -------------------- - -* `View ansible-playbook.5 `_ diff --git a/rst/modules.rst b/rst/modules.rst index b303ee6ccb2..540aad2bf7d 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -1,55 +1,201 @@ -Modules -======= - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +Ansible Modules +=============== + +.. seealso:: + + :doc:`examples` + Examples of using modules in /usr/bin/ansible + :doc:`playbooks` + Examples of using modules with /usr/bin/ansible-playbook + :doc:`api` + Examples of using modules with the Python API + + +About Modules +````````````` + +Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible playbooks. + + +Idempotence +``````````` + +Most modules other than command are idempotent, meaning they will seek to avoid changes +unless a change needs to be made. When using ansible playbooks, these modules can +trigger change events. Unless otherwise noted, all modules support change hooks. + + +command +``````` + +The command module takes the command name followed by a list of arguments, space delimited. +This is the only module that does not use key=value style parameters. + +Example usage:: + + /sbin/shutdown -t now + +This module does not support change hooks and returns the return code from the program as well as timing information about how long the command was running for. + + +copy +```` + +The copy module moves a file on the local box to remote locations. + +*src*:: + +Local absolute path to a file to copy to the remote server + + +*dest*:: + +Remote absolute path where the file should end up + + +This module also returns md5sum information about the resultant file. + + +facter +`````` + +Runs the discovery program 'facter' on the remote system, returning +JSON data that can be useful for inventory purposes. + +Requires that 'facter' and 'ruby-json' be installed on the remote end. + +This module is informative only - it takes no parameters & does not support change hooks, +nor does it make any changes on the system. + + +git +``` + +Deploys software from git checkouts. + +*repo*:: + +git or http protocol address of the repo to checkout + +*dest*:: + +where to check it out, an absolute directory path + +*version*:: + +what version to check out -- either the git SHA, the literal string 'HEAD', or a tag name + + +ohai +```` + +Similar to the facter module, this returns JSON inventory data. Ohai +data is a bit more verbose and nested than facter. + +Requires that 'ohai' be installed on the remote end. + +This module is information only - it takes no parameters & does not +support change hooks, nor does it make any changes on the system. + + +ping +```` + +A trivial test module, this module always returns the integer '1' on +successful contact. + +This module does not support change hooks. + +This module is informative only - it takes no parameters & does not +support change hooks, nor does it make any changes on the system. + + +service +``````` + +Controls services on remote machines. + +*state* + +Values are 'started', 'stopped', or 'restarted'. Started/stopped +are idempotent actions that will not run commands unless neccessary. +'restarted' will always bounce the service + + +*name* + +The name of the service + + +setup +````` + +Writes a JSON file containing key/value data, for use in templating. +Call this once before using the template modules. Playbooks will +execute this module automatically as the first step in each play. + +If facter or ohai are installed, variables from these programs will also +be snapshotted into the JSON file for usage in templating. These variables +are prefixed with 'facter_' and 'ohai_" so it's easy to tell their source. + +*metadata* + +Optionally overrides the default JSON file location of /etc/ansible/setup or ~/ansible/setup +depending on what remote user has been specified. + +If used, also supply the metadata parameter to the template module. + +*anything* + +any other parameters can be named basically anything, and set a key=value +pair in the JSON file for use in templating. + + +template +```````` + +Templates a file out to a remote server. Call the setup module prior to usage. + +*src* + +path of a Jinja2 formatted template on the local server + + +*dest* + +location to render the template on the remote server + + +*metadata* + +location of a JSON file to use to supply template data. Default is /etc/ansible/setup +which is the same as the default for the setup module. Change if running as a non-root +remote user who does not have permissions on /etc/ansible. + + +This module also returns md5sum information about the resultant file. + + +user +```` + +This module is in plan. + + +yum +``` + +This module is in plan. + + +WRITING YOUR OWN MODULES +```````````````````````` + +To write your own modules, simply follow the convention of those already available in +/usr/share/ansible. Modules must return JSON but can be written in any language. +Modules should return hashes, but hashes can be nested. +To support change hooks, modules should return hashes with a changed: True/False +element at the top level. Modules can also choose to indicate a failure scenario +by returning a top level 'failure' element with a True value, and a 'msg' element +describing the nature of the failure. Other values are up to the module. diff --git a/rst/patterns.rst b/rst/patterns.rst index d0ae6b5d37d..6b73114199e 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -1,55 +1,69 @@ Patterns ======== -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +How to select hosts you wish to manage + +.. seealso:: + + :doc:`examples` + Examples of basic commands + :doc:`playbooks` + Learning ansible's configuration management language + +Ansible works against multiple systems in your infrastructure at the +same time. It does this by selecting portions of systems listed in Ansible's inventory file, +which defaults to /etc/ansible/hosts, and looks like this:: + + mail.example.com + + [webservers] + foo.example.com + bar.example.com + + [dbservers] + one.example.com + two.example.com + three.example.com + +Targetting All Systems +`````````````````````` + +The pattern 'all' or '*' targets all systems in the inventory file. + +Specific Hosts +`````````````` + +It is possible to address specific hosts: + + one.example.com + one.example.com:two.example.com + +Groups +`````` + +The following patterns address one or more groups: + + webservers + webservers:dbservers + +There is also a magic group 'ungrouped' which selects systems not in a group. + +Wildcards +````````` + +Individual hosts, but not groups, can also be referenced using wildcards: + + *.example.com + *.com + +Mixing Things Up +```````````````` + +Specific hosts, wildcards, and groups can all be mixed in the same pattern + + one*.com:dbservers + +It is not possible to target a host not in the inventory file. + + + diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 677403b5bc6..75da6a66253 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -1,55 +1,118 @@ Playbooks ========= -Lorem ipsum dolor sit amet, consectetur adipiscing elit. In dignissim -placerat nibh, non feugiat risus varius vitae. Donec eu libero -lectus. Ut non orci felis, eget mattis mauris. Etiam ut tellus in -magna porta venenatis. Quisque scelerisque, sem non ultrices bibendum, -dolor diam rutrum lectus, sed luctus neque neque vitae eros. Vivamus -mattis, ipsum ut bibendum gravida, lectus arcu venenatis elit, vitae -luctus diam leo sit amet ligula. Nunc egestas justo in nulla sagittis -ut suscipit sapien gravida. Morbi id dui nibh. Nullam diam massa, -rhoncus a dignissim non, adipiscing vel arcu. Quisque ultricies -tincidunt purus ut sodales. Quisque scelerisque dapibus purus quis -egestas. Maecenas sagittis porttitor adipiscing. Duis eu magna -sem. Donec arcu felis, faucibus et malesuada non, blandit vitae -metus. Fusce nec sapien dolor. - -Aenean ac fermentum nisl. Integer leo sem, rutrum nec dictum at, -pretium quis sapien. Duis felis metus, sodales sit amet gravida in, -pretium ut arcu. Nulla ligula quam, aliquam sit amet sollicitudin -eget, molestie tincidunt ipsum. Nulla leo nunc, mattis sed auctor at, -suscipit ut metus. Suspendisse hendrerit, justo sagittis malesuada -molestie, nisi nunc placerat libero, vel vulputate elit tellus et -augue. Phasellus tempor lectus ac nisi aliquam faucibus. Donec feugiat -egestas nibh id mattis. In hac habitasse platea dictumst. Ut accumsan -lorem eget leo dictum viverra. - -Quisque egestas lorem sit amet felis tincidunt adipiscing. Aenean -ornare fermentum accumsan. Aenean eu mauris arcu, id pulvinar -quam. Suspendisse nec massa vel augue laoreet ultricies in convallis -dolor. Mauris sodales porta enim, non ultricies dolor luctus -in. Phasellus eu tortor lectus, vel porttitor nulla. Mauris vulputate, -erat id scelerisque lobortis, nibh ipsum tristique elit, ac viverra -arcu sem a ante. Praesent nec metus vestibulum augue eleifend -suscipit. In feugiat, sem nec dignissim consequat, velit tortor -scelerisque metus, sit amet mollis nisl sem eu nibh. Quisque in nibh -turpis. Proin ac nisi ligula, a pretium augue. - -In nibh eros, laoreet id interdum vel, sodales sed tortor. Sed -ullamcorper, sem vel mattis consectetur, nibh turpis molestie nisl, -eget lobortis mi magna sed metus. Cras justo est, tempus quis -adipiscing ut, hendrerit convallis sem. Mauris ullamcorper, sapien et -luctus iaculis, urna elit egestas ipsum, et tristique enim risus vitae -nunc. Vivamus aliquet lorem eu urna pulvinar hendrerit malesuada nunc -sollicitudin. Cras in mi rhoncus quam egestas dignissim vel sit amet -lacus. Maecenas interdum viverra laoreet. Quisque elementum -sollicitudin ullamcorper. - -Pellentesque mauris sem, malesuada at lobortis in, porta eget -urna. Duis aliquet quam eget risus elementum quis auctor ligula -gravida. Phasellus et ullamcorper libero. Nam elementum ultricies -tellus, in sagittis magna aliquet quis. Ut sit amet tellus id erat -tristique lobortis. Suspendisse est enim, tristique eu convallis id, -rutrum nec lacus. Fusce iaculis diam non felis rutrum lobortis. Proin -hendrerit mi tincidunt dui fermentum placerat. +.. seealso:: + + :doc:`YAMLScripts` + Learn about YAML syntax + :doc:`modules` + Learn about available modules and writing your own + :doc:`patterns` + Learn about how to select hosts + + +Playbooks are a completely different way to use ansible and are particularly awesome. + +They are the basis for a really simple configuration management and deployment system, unlike any that already exist, and one that is very well suited to deploying complex multi-machine applications. While you might run the main ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec. + + +Playbook Example +```````````````` + +Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed +of one or more patterns in a list. By composing a playbook of multiple patterns, it is possible +to orchestrate multi-machine deployments, running certain steps on all machines in +the webservers group, then certain steps on the database server group, then more commands +back on the webservers group, etc:: + + --- + - hosts: all + vars: + http_port: 80 + max_clients: 200 + user: root + tasks: + - include: base.yml somevar=3 othervar=4 + - name: write the apache config file + action: template src=/srv/httpd.j2 dest=/etc/httpd.conf + notify: + - restart apache + - name: ensure apache is running + action: service name=httpd state=started + handlers: + - include: handlers.yml + +Hosts line +`````````` + +The hosts line is alist of one or more groups or host patterns, seperated by colons.:: + + webservers:dbservers:*.foo.example.com + +Vars section +```````````` + +A list of variables that can be used in the 'action' lines of the template, or in +included templates. Variables are deferenced like this:: + + {{ varname }} + +These variables will be pushed down to the managed systems for use in templating operations. + +Further, if there are discovered variables about the system (say, if facter or ohai were +installed) these variables bubble up back into the playbook, and can be used on each +system just like explicitly set variables. Facter variables are prefixed with 'facter' +and Ohai variables are prefixed with 'ohai'. + +Tasks list +`````````` + +Tasks are executed in order, one at a time, against all machines matched by the host +pattern, before moving on to the next task. Failed tasks are taken out of the rotation. + +Task name and comment +````````` + +Each task has a name (required) and optional comment. This is for informational purposes only + +Task action +``````````` + +The action line is the name of an ansible module followed by parameters. Usually these +are expressed in key=value form, except for the command module, which looks just like a Linux/Unix +command line. See the module documentation for more info. + +Notify statements +````````````````` + +Nearly all modules are written to be 'idempotent' and can signal when they have affected a change +on the remote system. If a notify statement is used, the named handler will be run against +each system where a change was effected, but NOT on systems where no change occurred. + +Handlers +```````` + +Handlers are lists of tasks, not really any different from regular tasks, that are referenced +by name. + +Includes +```````` + +Not all tasks have to be listed directly in the main file. An include file can contain +a list of tasks (in YAML) as well, optionally passing extra variables into the file. +Variables passed in can be deferenced like this: + + {{ variable }} + +Asynchronous Actions and Polling +```````````````````````````````` + +(Information on this feature is pending) + +Executing A Playbook +```````````````````` + +To run a playbook:: + + ansible-playbook playbook.yml + From 2cafb8d221c2d855f76e567c5bf57923cfdf2166 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 8 Mar 2012 13:53:48 -0500 Subject: [PATCH 010/416] Minor docs restructuring --- html/YAMLScripts.html | 8 +-- html/_sources/index.txt | 11 +++- html/_sources/modules.txt | 17 ++---- html/_sources/patterns.txt | 40 ++++++-------- html/_sources/playbooks.txt | 75 +++++++++++++------------ html/api.html | 10 ++-- html/examples.html | 10 ++-- html/gettingstarted.html | 10 ++-- html/index.html | 32 ++++++----- html/man.html | 10 ++-- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/modules.html | 28 ++++------ html/patterns.html | 59 +++++++++----------- html/playbooks.html | 95 ++++++++++++++------------------ html/searchindex.js | 2 +- rst/communicate.rst | 9 --- rst/index.rst | 32 +++++++---- rst/modules.rst | 17 ++---- rst/patterns.rst | 40 ++++++-------- rst/playbooks.rst | 45 ++++++++------- 22 files changed, 261 insertions(+), 295 deletions(-) delete mode 100644 rst/communicate.rst diff --git a/html/YAMLScripts.html b/html/YAMLScripts.html index f252982648e..b1a23d87da7 100644 --- a/html/YAMLScripts.html +++ b/html/YAMLScripts.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • Ansible Modules

    Next topic

    Playbooks

    + title="next chapter">Playbooks: Ansible for Deployment, Configuration Management, and Orchestration

    This Page

  • @@ -119,7 +119,7 @@ ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf"

    Previous topic

    Playbooks

    + title="previous chapter">Playbooks: Ansible for Deployment, Configuration Management, and Orchestration

    Next topic

    API

    @@ -155,7 +155,7 @@ ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf" next |
  • - previous |
  • Ansible v0.0.1 documentation »
  • diff --git a/html/gettingstarted.html b/html/gettingstarted.html index 6b2e0498a09..a2b3d6a130e 100644 --- a/html/gettingstarted.html +++ b/html/gettingstarted.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • Examples of basic commands
    YAML Scripts
    Complete documentation of the YAML syntax ansible understands for playbooks.
    -
    Playbooks
    +
    Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
    Learning ansible’s configuration management language
    Ansible Modules
    Learn about modules that ship with ansible
    @@ -167,7 +167,7 @@ of the more real-world examples.

    title="previous chapter">Ansible

    Next topic

    Patterns

    + title="next chapter">The Inventory File, Patterns, and Groups

    This Page

  • +
    +

    Communicate and Get Involved

    + +

    Contents

    @@ -99,17 +110,13 @@ get involved.

  • Your first commands
  • -
  • Patterns diff --git a/html/patterns.html b/html/patterns.html index b421d63923b..9ea3280552a 100644 --- a/html/patterns.html +++ b/html/patterns.html @@ -7,7 +7,7 @@ - Patterns — Ansible v0.0.1 documentation + The Inventory File, Patterns, and Groups — Ansible v0.0.1 documentation - +
  • - previous |
  • Ansible v0.0.1 documentation »
  • @@ -87,8 +87,8 @@ be used as a framework to rapidly build powerful applications and scripts.

    Previous topic

    -

    Examples

    +

    Playbooks: Ansible for Deployment, Configuration Management, and Orchestration

    Next topic

    Man Pages

    @@ -124,7 +124,7 @@ be used as a framework to rapidly build powerful applications and scripts.

    next |
  • - previous |
  • Ansible v0.0.1 documentation »
  • diff --git a/html/examples.html b/html/examples.html index b16e78e7a98..d39b37a4b76 100644 --- a/html/examples.html +++ b/html/examples.html @@ -23,8 +23,8 @@ - - + +

    Parallelism and Shell Commands

    -

    Reboot all web servers in Atlanta, 10 at a time:

    +

    Let’s use ansible’s command line tool to reboot all web servers in Atlanta, 10 at a time:

    ssh-agent bash
     ssh-add ~/.ssh/id_rsa.pub
     
     ansible atlanta -a "/sbin/reboot" -f 10

    The -f 10 specifies the usage of 10 simultaneous processes.

    -

    Note that other than the command module, ansible modules do not work like simple scripts. They make the remote system look like you state, and run the commands neccessary to get it there.

    +

    Note that other than the command module, ansible modules do not work like simple scripts. They make the remote system look like you state, and run the commands neccessary to get it there. This is commonly refered to +as ‘idempotency’.

    -
    -

    Example 2: Time Limited Background Operations

    +
    +

    Time Limited Background Operations

    Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won’t lose track. Polling support is pending in the command line.:

    ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff"
     ansible all -n job_status -a jid=123456789
    -

    Any module other than ‘copy’ or ‘template’ can be backgrounded.

    +

    Any module other than ‘copy’ or ‘template’ can be backgrounded. Typically you’ll be backgrounding shell +commands or software upgrades only.

    +

    After the time limit (in seconds) runs out (-B), the process on the remote nodes will be killed.

    -
    -

    Examples 3: File Transfer & Templating

    +
    +

    File Transfer & Templating

    Ansible can SCP lots of files to multiple machines in parallel, and optionally use them as template sources.

    To just transfer a file directly to many different servers:

    ansible atlanta copy -a "/etc/hosts /tmp/hosts"
    -

    To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the template module to write the files using the templates. Templates are written in Jinja2 format. Playbooks (covered below) will run the setup module for you, making this even simpler.:

    +

    To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the template module to write the files using the templates. Templates are written in Jinja2 format. Playbooks (covered elsewhere in the documentation) will run the setup module for you, making this even simpler.:

    ansible webservers -m setup    -a "favcolor=red ntp_server=192.168.1.1"
     ansible webservers -m template -a "src=/srv/motd.j2 dest=/etc/motd"
     ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf"

    Need something like the fqdn in a template? If facter or ohai are installed, data from these projects will also be made available to the template engine, using ‘facter’ and ‘ohai’ prefixes for each.

    -
    -

    Examples 3: Deploying From Source Control

    +
    +

    Deploying From Source Control

    Deploy your webapp straight from git:

    ansible webservers -m git -a "repo=git://foo dest=/srv/myapp version=HEAD"

    Since ansible modules can notify change handlers (see ‘Playbooks’) it is possible to tell ansible to run specific tasks when the code is updated, such as deploying Perl/Python/PHP/Ruby directly from git and then restarting apache.

    +
    +

    Managing Services

    +

    Ensure a service is started on all webservers:

    +
    ansible webservers -m service name=httpd state=started
    +
    +

    Alternatively, restart a service on all webservers:

    +
    ansible webservers -m service name=httpd state=restarted
    +
    +
    @@ -110,19 +122,20 @@ ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf"

    Previous topic

    -

    Playbooks: Ansible for Deployment, Configuration Management, and Orchestration

    +

    The Inventory File, Patterns, and Groups

    Next topic

    -

    API

    +

    Ansible Modules

    This Page

    diff --git a/html/gettingstarted.html b/html/gettingstarted.html index a2b3d6a130e..e0e01f7e240 100644 --- a/html/gettingstarted.html +++ b/html/gettingstarted.html @@ -56,19 +56,14 @@
    Examples
    Examples of basic commands
    -
    YAML Scripts
    -
    Complete documentation of the YAML syntax ansible understands for playbooks.
    Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
    Learning ansible’s configuration management language
    -
    Ansible Modules
    -
    Learn about modules that ship with ansible

    Requirements

    -

    Requirements are extremely minimal.

    -

    If you are running python 2.6 on the overlord machine, you will -need:

    +

    Requirements for Ansible are extremely minimal.

    +

    If you are running python 2.6 on the overlord machine (the machine that you’ll be talking to the other machines from), you will need:

    • paramiko
    • PyYAML
    • @@ -92,7 +87,7 @@ need:

      For developers, you may wish to have:

      • asciidoc (for building manpage documentation)
      • -
      • python-sphinx (for building content for ansible.github.com)
      • +
      • python-sphinx (for building content for the ansible.github.com project only)
    @@ -137,7 +132,8 @@ bserver.example.org ssh-add ~/.ssh/id_rsa ansible all -m ping

    Congratulations. You’ve just contacted your nodes with Ansible. It’s now time to read some -of the more real-world examples.

    +of the more real-world examples, and explore what you can do with different modules, as well +as the Ansible playbooks language.

    diff --git a/html/index.html b/html/index.html index 377b2630635..0bc60bfb237 100644 --- a/html/index.html +++ b/html/index.html @@ -50,14 +50,15 @@ Other tools in this space have been too complicated for too long, require too much bootstrapping, and have too much learning curve. Ansible is dead simple and painless to extend. For comparison, Puppet and Chef have about 60k lines of code. Ansible’s core is a little over 1000 lines.

    Ansible isn’t just for configuration – it’s also great for Ad-Hoc tasks, -quickly firing off commands against nodes. Where Ansible excels though, is expressing complex multi-node deployment processes, executing complex sequences of commands on different hosts through the “playbooks” feature.

    -

    Ansible does not require programming in any particular language – you can write modules -as scripts or programs that return simple JSON.

    +quickly firing off commands against nodes. Where Ansible excels though, is expressing complex multi-node deployment processes, executing complex sequences of commands on different hosts through “playbooks”.

    +

    Extending ansible does not require programming in any particular language – you can write modules +as scripts or programs that return simple JSON. It’s also trivially easy to just execute +useful shell commands.

    Why use Ansible versus something else? (Puppet, Chef, Fabric, Capistrano, -mCollective, Func, SaltStack, etc?) It will have far less code, it -will be more correct, and it will be the easiest thing to hack on and -use you’ll ever see – regardless of your favorite language of choice. -Systems management doesn’t have to be complicated. Ansible’s docs will remain +mCollective, Func, SaltStack, etc?) Ansible will have far less code, it +will be (by extension) more correct, and it will be the easiest thing to hack on and +use you’ll ever see – regardless of your favorite language of choice.

    +

    Systems management doesn’t have to be complicated. Ansible’s docs will remain short & simple, and the source will be blindingly obvious.

    Design Goals

    @@ -68,7 +69,7 @@ short & simple, and the source will be blindingly obvious.

  • No additional software required on client boxes
  • Modules can be written in ANY language
  • Awesome API for creating very powerful distributed scripts
  • -
  • Be usable as non-root
  • +
  • Be very usable as non-root
  • Create the easiest config management system to use, ever.
  • @@ -105,8 +106,15 @@ short & simple, and the source will be blindingly obvious.

  • Selecting Targets
  • +
  • Examples +
  • Ansible Modules
  • YAML Scripts
      @@ -138,13 +144,6 @@ short & simple, and the source will be blindingly obvious.

    • Executing A Playbook
  • -
  • Examples -
  • API
  • Man Pages
    • ansible(1)
    • @@ -158,9 +157,9 @@ short & simple, and the source will be blindingly obvious.

      He created other popular DevOps programs such as Cobbler, the popular Linux install server. Cobbler is used to deploy mission critical systems all over the planet, in industries ranging from massively multiplayer gaming, core internet infrastructure, finance, -chip design, and more. Michael also helped co-author of Func, which is used +chip design, and more. Michael also helped co-author of Func, a precursor to Ansible, which is used to orchestrate systems in lots of diverse places. He’s worked on systems software for -IBM, Motorola, Red Hat’s Emerging Technologies Group, and rPath.

      +IBM, Motorola, Red Hat’s Emerging Technologies Group, Puppet Labs, and rPath.

  • diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index cc599383227..0a2d3aef42f 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index 08433495646..e495756d929 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index 3e3a035d46b..eecdce5def4 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/modules.html b/html/modules.html index 9744dfea548..dd0d3c284f0 100644 --- a/html/modules.html +++ b/html/modules.html @@ -24,7 +24,7 @@ - +
    • - previous |
    • Ansible v0.0.1 documentation »
    @@ -63,12 +63,14 @@ ansible playbooks.

    Examples of using modules with the Python API
    -
    -

    Module Idempotence

    +

    Nearly all modules take key=value parameters. Some modules take no parameters, and the command +module just takes arguments for the command you want to run.

    +

    All modules return JSON format data, thoug if you are using the command line or playbooks, you +don’t really need to know much about that.

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events. Unless otherwise noted, all modules support change hooks.

    -
    +

    Stock modules:

    command

    The command module takes the command name followed by a list of arguments, space delimited. @@ -76,15 +78,16 @@ This is the only module that does not use key=value style parameters.

    Example usage:

    /sbin/shutdown -t now
    +

    The given shell command will be executed on all selected nodes.

    This module does not support change hooks and returns the return code from the program as well as timing information about how long the command was running for.

    copy

    The copy module moves a file on the local box to remote locations.

    src:

    -

    Local absolute path to a file to copy to the remote server

    +

    Local path to a file to copy to the remote server. This can be an absolute or relative path.

    dest:

    -

    Remote absolute path where the file should end up

    +

    Remote absolute path where the file should end up.

    This module also returns md5sum information about the resultant file.

    @@ -93,11 +96,12 @@ This is the only module that does not use key=value style parameters.

    JSON data that can be useful for inventory purposes.

    Requires that ‘facter’ and ‘ruby-json’ be installed on the remote end.

    This module is informative only - it takes no parameters & does not support change hooks, -nor does it make any changes on the system.

    +nor does it make any changes on the system. Playbooks do not actually use +this module, they use the ‘setup’ module behind the scenes.

    git

    -

    Deploys software from git checkouts.

    +

    Deploys software (or files) from git checkouts.

    repo:

    git or http protocol address of the repo to checkout

    dest:

    @@ -112,13 +116,14 @@ data is a bit more verbose and nested than facter.

    Requires that ‘ohai’ be installed on the remote end.

    This module is information only - it takes no parameters & does not support change hooks, nor does it make any changes on the system.

    +

    Playbooks should not call the ohai module, playbooks call the ‘setup’ +module behind the scenes instead.

    ping

    A trivial test module, this module always returns the integer ‘1’ on successful contact.

    -

    This module does not support change hooks.

    -

    This module is informative only - it takes no parameters & does not +

    This module does not support change hooks and is informative only - it takes no parameters & does not support change hooks, nor does it make any changes on the system.

    @@ -135,14 +140,13 @@ are idempotent actions that will not run commands unless neccessary.

    setup

    Writes a JSON file containing key/value data, for use in templating. Call this once before using the template modules. Playbooks will -execute this module automatically as the first step in each play.

    +execute this module automatically as the first step in each play using +the variables section, so it is unneccessary to make explicit calls to +setup within a playbook.

    If facter or ohai are installed, variables from these programs will also be snapshotted into the JSON file for usage in templating. These variables -are prefixed with ‘facter‘ and ‘ohai” so it’s easy to tell their source.

    -

    metadata

    -

    Optionally overrides the default JSON file location of /etc/ansible/setup or ~/ansible/setup -depending on what remote user has been specified.

    -

    If used, also supply the metadata parameter to the template module.

    +are prefixed with ‘facter‘ and ‘ohai” so it’s easy to tell their source. +All variables are then bubbled up to the caller.

    anything

    any other parameters can be named basically anything, and set a key=value pair in the JSON file for use in templating.

    @@ -151,32 +155,39 @@ pair in the JSON file for use in templating.

    template

    Templates a file out to a remote server. Call the setup module prior to usage.

    src

    -

    path of a Jinja2 formatted template on the local server

    +

    path of a Jinja2 formatted template on the local server. This can be a relative +or absolute path.

    dest

    location to render the template on the remote server

    -

    metadata

    -

    location of a JSON file to use to supply template data. Default is /etc/ansible/setup -which is the same as the default for the setup module. Change if running as a non-root -remote user who does not have permissions on /etc/ansible.

    This module also returns md5sum information about the resultant file.

    -
    -

    user

    -

    This module is in plan.

    -
    -
    -

    yum

    -

    This module is in plan.

    -
    -

    writing your own modules

    +

    Writing your own modules

    To write your own modules, simply follow the convention of those already available in /usr/share/ansible. Modules must return JSON but can be written in any language. -Modules should return hashes, but hashes can be nested. -To support change hooks, modules should return hashes with a changed: True/False -element at the top level. Modules can also choose to indicate a failure scenario -by returning a top level ‘failure’ element with a True value, and a ‘msg’ element -describing the nature of the failure. Other values are up to the module.

    +Modules should return hashes, but hashes can be nested.

    +

    To support change hooks, modules should return hashes with a changed: True/False +element at the top level:

    +
    {
    +    'changed'   : True,
    +    'something' : 42
    +}
    +
    +
    +

    Modules can also choose to indicate a failure scenario by returning a top level ‘failure’ +element with a True value, and a ‘msg’ element describing the nature of the failure. +Other return values are up to the module.

    +
    +
    +
    {
    +
    ‘failure’ : True, +‘msg’ : “here is what happened...”
    +
    +

    }

    +
    +

    When shipping modules, drop them in /usr/share/ansible, or specify the module path to the +command line tool or API. It is easy to test modules by running them directly on +the command line, passing them arguments just like they would be passed with ansible.

    @@ -189,7 +200,6 @@ describing the nature of the failure. Other values are up to the module.

    Table Of Contents

    Previous topic

    -

    The Inventory File, Patterns, and Groups

    +

    Examples

    Next topic

    YAML Scripts

    @@ -244,7 +252,7 @@ describing the nature of the failure. Other values are up to the module.

    next |
  • - previous |
  • Ansible v0.0.1 documentation »
  • diff --git a/html/patterns.html b/html/patterns.html index 9ea3280552a..321977cee65 100644 --- a/html/patterns.html +++ b/html/patterns.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • Getting Started

    Next topic

    -

    Ansible Modules

    +

    Examples

    This Page

  • -

    Playbooks are a completely different way to use ansible and are particularly awesome. They are the basis for a really simple configuration management and deployment system, unlike any that already exist, and one that is very well suited to deploying complex multi-machine applications. While you might run the main ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec.

    +

    Playbooks are a completely different way to use ansible and are particularly awesome.

    +

    They are the basis for a really simple configuration management and multi-machine deployment system, unlike any that already exist, and one that is very well suited to deploying complex applications.

    +

    While you might run the main /usr/bin/ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec.

    Playbook Example

    Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed @@ -89,30 +91,39 @@ back on the webservers group, etc:

    Hosts line

    -

    The hosts line is alist of one or more groups or host patterns, seperated by colons, as -described in the ‘patterns’ documentation.

    +

    The hosts line is a list of one or more groups or host patterns, seperated by colons, as +described in the ‘patterns’ documentation. This is just like the first parameter to /usr/bin/ansible.

    Vars section

    -

    A list of variables that can be used in the templates, action lines, or included files. -Variables are deferenced using jinja2 syntax like this:

    -
    {{ varname }}
    -
    -

    These variables will be pushed down to the managed systems for use in templating operations, where -the way to dereference them in templates is exactly the same.

    +

    A list of variables and values that can be used in the plays. These can be used in templates +or ‘action’ lines and are dereferenced using `jinja2` syntax like this:

    +
    +
    {{ varname }}

    Further, if there are discovered variables about the system (say, if facter or ohai were installed) these variables bubble up back into the playbook, and can be used on each system just like explicitly set variables. Facter variables are prefixed with ‘facter_‘ -and Ohai variables are prefixed with ‘ohai_‘.

    +and Ohai variables are prefixed with ‘ohai_‘. So for instance, if I wanted to write the +hostname into the /etc/motd file, I could say:

    +
    +
      +
    • name: write the motd
    • +
    • action: template src=/srv/templates/motd.j2 dest=/etc/motd
    • +
    +
    +

    And in /srv/templates/motd.j2::

    +
    You are logged into {{ facter_hostname }}
    +
    +

    But we’re getting ahead of ourselves. Let’s talk about tasks.

    Tasks list

    Each play contains a list of tasks. Tasks are executed in order, one at a time, against -all machines matched by the play’s host pattern, before moving on to the next task. -Hosts with failed tasks are taken out of the rotation for the entire playbook. If things fail, -correct the problem and rerun. Modules other than command are idempotent, meaning if you -run them again, they will make the changes they are told to make to bring the system to -the desired state.

    +all machines matched by the play’s host pattern, before moving on to the next task.

    +

    Hosts with failed tasks are taken out of the rotation for the entire playbook. If things fail, +simply correct the playbook file and rerun.

    +

    Modules other than command are idempotent, meaning if you run them again, they will make the +changes they are told to make to bring the system to the desired state.

    Task name and action

    @@ -120,25 +131,58 @@ the desired state.

    The action line is the name of an ansible module followed by parameters. Usually these are expressed in key=value form, except for the command module, which looks just like a Linux/Unix command line. See the module documentation for more info.

    +

    Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted +to make a directory on each system named after the hostname ... yeah, that’s I know silly ... you could +do it like so:

    +
    +
      +
    • name: make a directory
    • +
    • action: mkdir /tmp/{{ facter_hostname }}
    • +
    +

    Notify statements

    Nearly all modules are written to be ‘idempotent’ and can signal when they have affected a change on the remote system. If a notify statement is used, the named handler will be run against -each system where a change was effected, but NOT on systems where no change occurred.

    +each system where a change was effected, but NOT on systems where no change occurred. This happens +after all of the tasks are run. For example, if notifying Apache and potentially replacing lots of +configuration files, you could have Apache restart just once, at the end of a run. If you need +Apache restarted in the middle of a run, you could just make a task for it, no harm done. Notifiers +are optional.

    Handlers

    Handlers are lists of tasks, not really any different from regular tasks, that are referenced -by name.

    +by name. Handlers are what notifiers notify. If nothing notifies a handler, it will not run. +Regardless of how many things notify a handler, it will run only once, after all of the tasks +complete in a particular play.

    Includes

    Not all tasks have to be listed directly in the main file. An include file can contain a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this:

    +Variables passed in can be deferenced like this (assume a variable named ‘user’)

    +
    +
    {{ user }}
    +

    For instance, if deploying multiple wordpress instances, I could contain all of my tasks +in a wordpress.yml file, and use it like so:

    -
    {{ variable }}
    +
      +
    • +
      tasks:
      +
        +
      • include: wordpress.yml user=timmy
      • +
      • include: wordpress.yml user=alice
      • +
      • include: wordpress.yml user=bob
      • +
      +
      +
      +
    • +
    +
    +

    In addition to the explicitly passed in parameters, all variables from the vars section +are also available.

    Asynchronous Actions and Polling

    @@ -179,8 +223,8 @@ Variables passed in can be deferenced like this:

    YAML Scripts

    Next topic

    -

    Examples

    +

    API

    This Page

    diff --git a/html/searchindex.js b/html/searchindex.js index bc24daf1e4a..8a94e8983ab 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,7],rhoncu:[],donec:[],mcollect:1,prefix:[2,3,7],code:[1,2,7],lacu:[],follow:[5,2,3],scp:7,nunc:[],content:[0,1],middl:3,depend:[],fusc:[],elsewher:7,program:[1,2,3],certain:3,vel:[],blindingli:1,spec:3,sourc:[1,2,3,7],everi:[4,3],string:2,fals:[4,2],consequat:[],failur:[6,2],veri:[1,6,3],affect:3,risu:[],luctu:[],magic:[],level:[4,2],id_rsa:[0,7],list:[1,2,3,4,5,7,8],vivamu:[],item:4,ansible_librari:[],form:[4,3],dotnet:4,saltstack:1,mpdehaan:[],phasellu:[],ornar:[],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],eleifend:[],further:3,even:7,what:[0,2,3],diam:[],favcolor:7,section:[1,2,3],abl:[],nec:[],abbrevi:4,version:[2,7],directori:[2,3],ever:1,method:6,metadata:[],tar:0,suscipit:[],hash:2,facter_hostnam:3,eckersberg:4,here:2,leo:[],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],aliquam:[],scelerisqu:[],great:1,purpos:2,plai:[2,3],ahead:3,precursor:1,larger:[],technolog:1,host:[0,1,2,3,5,6,7],adipisc:[],prior:2,venenati:[],web1:6,permit:4,action:[1,2,3],nulla:[],bob:3,commonli:7,ourselv:3,iaculi:[],via:[0,1],regardless:[4,1,3],dictionari:4,accumsan:[],extra:3,modul:[0,1,2,3,6,7],prefer:[],put:[0,7],unix:3,api:[1,6,2],instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,suit:3,dehaan:1,call:2,usr:[2,3,7],taken:3,sagitti:[],basi:3,checkout:2,until:0,more:[0,5,2,3,1],desir:3,idempot:[2,3,7],dbserver:5,unneccessari:2,about:[4,1,2,3],agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],sshd:1,none:[],join:1,ibm:1,module_arg:6,habitass:[],setup:[1,2,7],work:[1,7,5],critic:1,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],ero:[],root:[4,1,3],pick:4,control:[1,2,3,7],myapp:7,yamllint:4,ultric:[],process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],othervar:3,knows_oop:4,minimum:3,want:[6,2,3],occur:3,nullam:[],alwai:2,multipl:[5,3,7],newlin:4,puru:[],sit:[],capistrano:1,ping:[0,6,2,1],write:[4,1,2,3,7],how:[0,2,3,4,5,6],etiam:[],yum:[],simpl:[4,1,6,3,7],updat:7,arcu:[],express:[4,1,6,3],referenc:[5,3],clone:0,after:[3,7],usabl:1,tristiqu:[],ohai_:3,mai:[4,0],end:[2,3],data:[4,6,2,7],grow:[],man:[1,8],repo:[2,7],"short":1,orchestr:[0,1,2,3,5,7],thoug:2,read:[4,0],bootstrap:1,favorit:1,turpi:[],element:[4,2],issu:1,inform:[2,3],mango:4,combin:4,asynchron:[1,3],order:3,talk:[0,3],origin:1,help:1,over:1,move:[2,3],orang:4,becaus:[],elit:4,rpmbuild:0,comma:4,vita:[],still:[],paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,fit:[],befor:[2,3],yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[1,5],mail:[1,5],sapien:[],main:3,might:3,easier:[],non:1,"return":[1,6,2],thei:[6,2,3,7],food:4,alist:[],nibh:[],egesta:[],"break":[],framework:[1,6],jinja2:[0,2,3,7],instead:2,now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],config:[1,3],viverra:[],drop:2,datastructur:6,porta:[],separ:4,each:[4,2,3,7],puppet:1,stock:2,nearli:[2,3],mean:[2,3],harm:3,metu:[],michael:1,auctor:[],idea:1,realli:[4,2,3],contributor:[],backport:0,connect:[],our:4,happen:[2,3],todo:[],event:2,out:[4,1,2,3,7],variabl:[2,3,7],"try":0,shown:[],network:1,space:[1,2],reboot:7,bubbl:[2,3],stuff:7,rel:2,internet:1,correct:[4,1,3],red:[1,7],rotat:3,state:[2,3,7],hendrerit:[],ntp:7,contain:[2,3],given:[2,7],pub:7,base:[1,3],lab:1,tempu:[],qui:[],org:0,molli:[],bash:[0,7],care:[],vestibulum:[],pyyaml:0,indent:4,maecena:[],could:[6,3],fqdn:7,thing:[1,3],place:1,isn:1,releas:0,principl:[],licens:[],first:[7,0,2,3,1],oper:[1,7],softwar:[1,2,7],rang:1,notifi:[1,3,7],obviou:1,onc:[2,3],number:2,yourself:0,hook:2,instruct:0,alreadi:[2,3],done:3,fast:1,enim:[],massiv:1,open:[],straight:7,differ:[7,0,3,1],convent:2,script:[4,1,6,3,7],associ:4,top:2,mkdir:3,system:[0,1,2,3,5,7],messag:6,parallel:[1,7],too:1,statement:[1,3],molesti:[],john:4,banana:4,includ:[1,3],shell:[1,2,7],option:[4,8,3,7],welcom:1,tool:[1,2,7],copi:[1,2,7],specifi:[4,2,7],quam:[],next:3,github:[0,1],kept:3,exactli:[],than:[0,2,3,7],serv:[],liter:2,silli:3,target:[1,5],provid:4,sollicitudin:[],heavyweight:[],structur:4,charact:4,project:[0,7,1],architect:1,were:3,minut:[],uses_cv:4,pre:0,sai:3,runner:6,explicit:2,ani:[1,6,2,3,7],spent:[],ant:[],download:0,have:[0,3,1],need:[4,0,2,3,7],tellu:[],seek:2,paramiko:0,engin:7,built:0,contact:[0,6,2],note:[5,2,7],also:[0,1,2,3,4,5,7],client:1,massa:[],build:[0,6],indic:2,environ:[],divers:1,pulvinar:[],begin:4,sure:[],unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,who:[],discov:3,most:[4,2],employe:4,regular:3,plan:[],deploi:[1,2,3,7],pair:2,why:1,porttitor:[],simplic:[],don:2,doc:1,later:7,lectu:[],doe:[1,2,5],sodal:[],bracket:[4,5],snapshot:2,clojur:[],wildcard:5,dolor:[],someth:[1,2,7],awesom:[1,3],laoreet:[],blandit:[],verbos:2,syntax:[4,3],bring:3,directli:[2,3,7],raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],permiss:[],hack:1,radic:1,pki:[],trivial:[1,2],varnam:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,just:[7,0,2,3,1],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],written:[1,2,3,7],should:[4,2],consectetur:[],somevar:3,congratul:0,variu:[],local:2,yml:3,long_running_oper:7,contribut:1,variou:[],get:[4,0,3,7,1],financ:1,stop:2,mission:1,bibendum:[],ssl:[],ssh:[0,7],malesuada:[],requir:[0,2,1],uvh:0,nisi:[],bar:5,lame:4,nisl:[],remot:[0,2,3,7],cra:[],orci:[],through:[0,2,1],told:3,where:[1,2,3],wrote:[],view:[1,8],set:[2,3],creator:[],elimin:[],see:[0,1,2,3,4,5,7],sed:[],result:[6,2],fail:3,sem:[],extend:1,ntp_server:7,faucibu:[],statu:7,kei:[4,0,2,3],databas:3,modularli:[],discoveri:2,restart:[2,3,7],behind:2,won:7,languag:[4,0,5,2,1],between:4,"import":6,irc:1,altern:7,elementum:[],manpag:[0,8],handful:[],aspir:[],style:2,extens:1,job:[4,7],entir:3,aserv:0,magna:[],webapp:7,amet:[],addit:[4,1,3],delimit:2,plugin:[],goal:1,against:[1,3,5],tempor:[],etc:[7,0,5,3,1],instanc:3,mani:[3,7],placerat:[],com:[0,6,5],proin:[],sha:2,assur:3,simpli:[2,3],author:1,overview:4,format:[7,1,2,3,5],inspir:[],header:5,colon:3,shutdown:2,linux:[1,3],typic:7,poll:[1,3,7],rpm:[0,1],matti:[],dui:[],compos:3,pretium:[],multiplay:1,morbi:[],three:5,been:1,timmi:3,json:[1,6,2],much:[1,2],basic:[4,0,5,2,1],ungroup:[],feugiat:[],quickli:[4,1],box:[1,2],derefer:[],fire:1,rubi:[4,2,7],vulput:[],argument:2,understand:[],pellentesqu:[],func:1,atlanta:7,job_statu:7,those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],tortor:[],look:[5,3,7],nequ:[],hoc:[1,3],servic:[1,2,3,7],md5sum:2,batch:[],"while":3,overrid:[],abov:3,ipsum:[],cobbler:1,scene:2,real:0,motd:[3,7],max_client:3,them:[2,3,7],erat:[],conf:[3,7],module_nam:6,ship:2,sever:4,http_port:3,develop:[4,0,1],inventori:[1,2,3,5],minim:0,make:[0,2,3,7],platea:[],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],success:2,fedora:[],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,finish:[],http:2,hostnam:3,again:3,nest:2,painless:1,effect:3,dai:[],fruit:4,user:3,ownership:[],extrem:0,php:7,distutil:[0,1],implement:6,squar:4,exceedingli:[],task:[1,3,7],off:1,scenario:2,mention:3,whole:[],well:[0,2,3],hypothet:3,exampl:[0,1,2,3,4,5,6,7],command:[0,1,2,3,5,7,8],thi:[0,1,2,3,4,5,7],choos:2,dereferenc:3,usual:3,comment:[],protocol:2,execut:[1,2,3],less:[0,1],when:[2,3,7],kill:7,skill:4,simultan:7,ligula:[],previous:[],web:[6,7],versu:1,easi:[1,2],mix:5,trigger:2,hac:[],except:3,littl:1,add:[0,7],other:[7,0,2,3,1],els:1,unlik:3,hat:1,match:3,take:2,bin:[2,3,7],applic:[6,3],which:[4,0,5,3,1],ohai:[1,2,3,7],dest:[2,3,7],tincidunt:[],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,daemon:1,motorola:1,like:[4,5,2,3,7],specif:[5,6,7],signal:3,manual:[],integ:2,noth:3,edit:0,"boolean":4,either:2,velit:[],popular:1,async:[],page:[4,0,8,1],deal:[],webserv:[5,3,7],suppli:[],some:[0,2],back:3,dead:1,tumblr:[],home:[],server:[1,2,3,7],librari:[],tmp:[3,7],render:2,assum:3,avoid:2,though:1,ultrici:[],per:6,tracker:1,unit:[],pattern:[1,6,3,5],foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],quit:[],lose:7,usag:[2,7],asciidoc:0,web2:6,step:[2,3],explor:0,repositori:0,output:3,"super":1,aenean:[],simpler:7,comparison:1,sbin:[2,7],actual:2,gplv3:[],justo:[],libero:[],surround:4,manag:[0,1,2,3,4,5,7],srv:[3,7],quisqu:[],industri:1,own:[1,2,3],"final":4,bounc:2,within:2,automat:2,upgrad:7,down:[],ensur:[3,7],chang:[2,3,7],perl:7,bserver:0,your:[0,1,2,3,4,5,7],praesent:[],git:[0,2,7,1],type:6,fabric:1,wai:[4,0,3,7],interdum:[],transfer:[1,7],dictum:[],support:[2,7],question:1,"long":[1,2,7],happi:1,avail:[0,8,2,3,7],start:[0,1,2,3,4,7],appl:4,wordpress:3,augu:[],lot:[1,3,7],replac:3,"var":[1,3],individu:5,fork:6,head:[2,7],doctyp:[],simplejson:0,eget:[],handler:[1,3,7],lint:4,yeah:3,msg:2,loborti:[],ullamcorp:[],line:[1,2,3,4,7,8],"true":[4,2],freenod:1,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,wish:[4,0,5],caller:2,tell:[2,7],planet:1,record:4,below:[],limit:[1,7],suspendiss:[],rerun:3,otherwis:2,problem:[],similar:2,chip:1,facter:[1,2,3,7],curv:1,featur:3,tasti:4,creat:1,cover:7,doesn:1,repres:4,ansil:[],deferenc:3,file:[0,1,2,3,4,5,7],mauri:[],exist:[1,3],check:[2,7],urna:[],conval:[],denot:5,googl:1,excel:1,nam:[],"default":[1,5],likes_emac:4,futur:0,dignissim:[],test:[0,2],you:[0,1,2,3,4,5,7],node:[0,2,7,1],dapibu:[],journei:[],gravida:[],sequenc:1,devop:1,push:3,est:[],log:3,feli:[],aliquet:[],src:[2,3,7],lorem:[],"60k":1,dictumst:[],sphinx:0,rutrum:[],anywher:[],descript:[],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],far:1,serious:[],fermentum:[]},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Scripts","The Inventory File, Patterns, and Groups","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,7],rhoncu:[],func:1,perl:7,mcollect:1,prefix:[2,3,7],code:[1,2,7],lacu:[],follow:[5,2,3],scp:7,nunc:[],content:[0,1],middl:3,depend:[],elsewher:7,specif:[5,6,7],program:[1,2,3],vel:[],blindingli:1,spec:3,sourc:[1,2,3,7],everi:[4,3],string:2,fals:[4,2],consequat:[],failur:[6,2],veri:[1,6,3],affect:3,risu:[],luctu:[],mauri:[],magic:[],max_client:3,level:[4,2],id_rsa:[0,7],list:[1,2,3,4,5,7,8],vivamu:[],item:4,ansible_librari:[],dotnet:4,saltstack:1,phasellu:[],ornar:[],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],eleifend:[],further:3,even:7,what:[0,2,3],diam:[],favcolor:7,section:[1,2,3],abl:[],nec:[],abbrevi:4,version:[2,7],directori:[2,3],ever:1,method:6,metadata:[],suscipit:[],hash:2,abov:3,eckersberg:4,lectu:[],here:2,leo:[],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],aliquam:[],scelerisqu:[],great:1,purpos:2,plai:[2,3],ahead:3,precursor:1,larger:[],technolog:1,step:[2,3],adipisc:[],prior:2,venenati:[],permit:4,action:[1,2,3],nulla:[],implement:6,commonli:7,ourselv:3,iaculi:[],via:[0,1],regardless:[4,1,3],tempu:[],extra:3,modul:[0,1,2,3,6,7],prefer:[],releas:0,unix:3,api:[1,6,2],instal:[7,0,2,3,1],should:[4,2],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,ohai:[1,2,3,7],dehaan:1,call:2,usr:[2,3,7],taken:3,sagitti:[],care:[],checkout:2,until:0,more:[0,5,2,3,1],desir:3,idempot:[2,3,7],dbserver:5,unneccessari:2,sbin:[2,7],agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:[],join:1,ibm:1,module_arg:6,dest:[2,3,7],habitass:[],setup:[1,2,7],work:[1,7,5],critic:1,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,1,2,3],ero:[],root:[4,1,3],control:[1,2,3,7],conf:[3,7],yamllint:4,ultric:[],process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],libero:[],knows_oop:4,minimum:3,want:[6,2,3],occur:3,nullam:[],alwai:2,multipl:[5,3,7],newlin:4,puru:[],sit:[],capistrano:1,ping:[0,6,2,1],write:[4,1,2,3,7],how:[0,2,3,4,5,6],etiam:[],instead:2,config:[1,3],stock:2,arcu:[],financ:1,referenc:[5,3],clone:0,after:[3,7],lab:1,befor:[2,3],ohai_:3,contribut:1,mai:[4,0],end:[2,3],associ:4,grow:[],man:[1,8],bibendum:[],"short":1,orchestr:[0,1,2,3,5,7],thoug:2,bootstrap:1,favorit:1,turpi:[],element:[4,2],issu:1,inform:[2,3],mango:4,combin:4,order:3,talk:[0,3],origin:1,help:1,over:1,move:[2,3],orang:4,becaus:[],elit:4,rpmbuild:0,comma:4,vita:[],still:[],paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,fit:[],conval:[],yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[1,5],mail:[1,5],sapien:[],main:3,might:3,easier:[],non:1,"return":[1,6,2],thei:[6,2,3,7],food:4,alist:[],nibh:[],egesta:[],"break":[],framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],simpl:[4,1,6,3,7],viverra:[],drop:2,instruct:0,porta:[],separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],puppet:1,updat:7,rotat:3,mean:[2,3],harm:3,metu:[],michael:1,auctor:[],idea:1,realli:[4,2,3],ensur:[3,7],backport:0,connect:[],our:4,happen:[2,3],todo:[],event:2,out:[4,1,2,3,7],variabl:[2,3,7],"try":0,shown:[],network:1,space:[1,2],reboot:7,bubbl:[2,3],cra:[],rel:2,internet:1,correct:[4,1,3],red:[1,7],painless:1,hendrerit:[],ntp:7,orci:[],given:[2,7],pub:7,base:[1,3],usabl:1,dictionari:4,qui:[],org:0,molli:[],bash:[0,7],basi:3,vestibulum:[],pyyaml:0,indent:[],maecena:[],could:[6,3],put:[0,7],fqdn:7,thing:[1,3],yum:[],isn:1,principl:[],top:2,first:[7,0,2,3,1],oper:[1,7],softwar:[1,2,7],rang:1,notifi:[1,3,7],obviou:1,onc:[2,3],number:2,yourself:0,hook:2,datastructur:6,alreadi:[2,3],done:3,"long":[1,2,7],enim:[],massiv:1,open:[],differ:[7,0,3,1],praesent:[],convent:2,script:[1,6,7],data:[4,6,2,7],licens:[],mkdir:3,system:[0,1,2,3,5,7],messag:6,parallel:[1,7],inventori:[1,2,3,5],appl:4,too:1,statement:[1,3],molesti:[],john:4,banana:4,shell:[1,2,7],option:[4,8,3,7],behind:2,tool:[1,2,7],copi:[1,2,7],specifi:[4,2,7],quam:[],github:[0,1],off:1,exactli:[],than:[0,2,3,7],serv:[],liter:2,silli:3,target:[1,5],provid:4,sollicitudin:[],heavyweight:[],structur:4,charact:4,project:[0,7,1],architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,argument:2,hypothet:3,ant:[],download:0,have:[0,3,1],need:[4,0,2,3,7],tellu:[],seek:2,paramiko:0,engin:7,built:0,note:[5,2,7],also:[0,1,2,3,4,5,7],client:1,massa:[],build:[0,6],indic:2,environ:[],divers:1,pulvinar:[],begin:4,sure:[],unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,who:[],discov:3,most:[4,2],employe:4,regular:3,plan:[],deploi:[1,2,3,7],pair:2,why:1,porttitor:[],simplic:[],don:2,doc:1,later:7,cover:7,doe:[1,2,5],sodal:[],bracket:[4,5],snapshot:2,place:1,wildcard:5,dolor:[],modularli:[],awesom:[1,3],laoreet:[],blandit:[],verbos:2,syntax:[4,3],bring:3,directli:[2,3,7],raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],permiss:[],hack:1,radic:1,pki:[],trivial:[1,2],varnam:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,execut:[1,2,3],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],written:[1,2,3,7],accumsan:[],consectetur:[],somevar:3,freenod:1,variu:[],local:2,yml:3,long_running_oper:7,nearli:[2,3],variou:[],get:[4,0,3,7,1],express:[4,1,6,3],stop:2,mission:1,repo:[2,7],ssl:[],timmi:3,ssh:[0,7],malesuada:[],requir:[0,2,1],uvh:0,nisi:[],bar:5,lame:4,nisl:[],remot:[0,2,3,7],stuff:7,contain:[2,3],through:[0,2,1],told:3,where:[1,2,3],wrote:[],view:[1,8],user:3,set:[2,3],creator:[],elimin:[],see:[0,1,2,3,4,5,7],sed:[],result:[6,2],fail:3,sem:[],extend:1,servic:[1,2,3,7],faucibu:[],statu:7,manpag:[0,8],databas:3,someth:[1,2,7],discoveri:2,restart:[2,3,7],state:[2,3,7],won:7,ligula:[],between:4,"import":6,irc:1,altern:7,elementum:[],kei:[4,0,2,3],handful:[],aspir:[],style:2,extens:1,job:[4,7],entir:3,aserv:0,magna:[],webapp:7,minut:[],addit:[4,1,3],delimit:2,plugin:[],goal:1,against:[1,3,5],tempor:[],etc:[7,0,5,3,1],instanc:3,mani:[3,7],placerat:[],planet:1,com:[0,6,5],proin:[],sha:2,skill:4,assur:3,simpli:[2,3],overview:4,inspir:[],header:5,colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],matti:[],dui:[],pretium:[],multiplay:1,morbi:[],three:5,been:1,amet:[],json:[1,6,2],much:[1,2],far:1,basic:[4,0,5,2,1],ungroup:[],feugiat:[],quickli:[4,1],indenta:4,box:[1,2],wish:[4,0,5],derefer:[],fire:1,rubi:[4,2,7],vulput:[],ani:[1,6,2,3,7],upgrad:7,likes_emac:4,understand:[],pellentesqu:[],donec:[],minim:0,atlanta:7,job_statu:7,those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],tortor:[],look:[5,3,7],replac:3,hoc:[1,3],straight:7,md5sum:2,batch:[],"while":3,overrid:[],facter_hostnam:3,ipsum:[],cobbler:1,scene:2,bin:[2,3,7],motd:[3,7],tar:0,them:[2,3,7],erat:[],myapp:7,module_nam:6,ship:2,sever:4,http_port:3,develop:[4,0,1],welcom:1,author:1,make:[0,2,3,7],platea:[],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],fedora:[],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,finish:[],http:2,hostnam:3,denot:5,nest:2,pick:4,effect:3,dai:[],fruit:4,fusc:[],ownership:[],extrem:0,php:7,distutil:[0,1],typic:7,squar:4,exceedingli:[],task:[1,3,7],kept:3,scenario:2,mention:3,whole:[],well:[0,2,3],spent:[],contact:[0,6,2],command:[0,1,2,3,5,7,8],thi:[0,1,2,3,4,5,7],choos:2,dereferenc:3,usual:3,explor:0,comment:[],protocol:2,just:[7,0,2,3,1],less:[0,1],excel:1,kill:7,ntp_server:7,simultan:7,languag:[4,0,5,2,1],previous:[],web:[6,7],versu:1,easi:[1,2],mix:5,hac:[],except:3,littl:1,add:[0,7],simplejson:0,els:1,unlik:3,hat:1,match:3,take:2,real:0,applic:[6,3],which:[4,0,5,3,1],format:[1,2,3,4,5,7],read:[4,0],tincidunt:[],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,daemon:1,motorola:1,like:[4,5,2,3,7],success:2,signal:3,manual:[],integ:2,noth:3,edit:0,"boolean":4,either:2,velit:[],popular:1,async:[],page:[4,0,8,1],deal:[],webserv:[5,3,7],suppli:[],some:[0,2],back:3,dead:1,tumblr:[],home:[],server:[1,2,3,7],librari:[],tmp:[3,7],render:2,augu:[],assum:3,avoid:2,though:1,ultrici:[],per:6,tracker:1,unit:[],pattern:[1,6,3,5],foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],quit:[],lose:7,usag:[2,7],devop:1,web2:6,host:[0,1,2,3,5,6,7],web1:6,repositori:0,output:3,"super":1,aenean:[],simpler:7,comparison:1,sshd:1,actual:2,gplv3:[],justo:[],othervar:3,surround:4,manag:[0,1,2,3,4,5,7],srv:[3,7],quisqu:[],industri:1,own:[1,2,3],"final":4,bounc:2,within:2,automat:2,compos:3,down:[],contributor:[],chang:[2,3,7],next:3,bserver:0,your:[0,1,2,3,4,5,7],mpdehaan:[],git:[0,2,7,1],fabric:1,wai:[4,0,3,7],interdum:[],transfer:[1,7],dictum:[],support:[2,7],question:1,fast:1,happi:1,avail:[0,8,2,3,7],start:[0,1,2,3,4,7],trigger:2,wordpress:3,includ:[1,3],lot:[1,3,7],suit:3,"var":[1,3],individu:5,fork:6,head:[2,7],doctyp:[],form:[4,3],eget:[],handler:[1,3,7],lint:4,yeah:3,msg:2,loborti:[],ullamcorp:[],line:[1,2,3,4,7,8],"true":[4,2],tristiqu:[],congratul:0,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,type:6,caller:2,tell:[2,7],asynchron:[1,3],record:4,below:[],limit:[1,7],suspendiss:[],rerun:3,otherwis:2,problem:[],similar:2,chip:1,facter:[1,2,3,7],curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,ansil:[],deferenc:3,file:[0,1,2,3,4,5,7],bob:3,exist:[1,3],check:[2,7],urna:[],nequ:[],again:3,googl:1,when:[2,3,7],nam:[],"default":[1,5],other:[7,0,2,3,1],futur:0,dignissim:[],test:[0,2],you:[0,1,2,3,4,5,7],clojur:[],node:[0,2,7,1],dapibu:[],journei:[],gravida:[],sequenc:1,asciidoc:0,est:[],log:3,feli:[],aliquet:[],src:[2,3,7],lorem:[],"60k":1,dictumst:[],sphinx:0,rutrum:[],anywher:[],descript:[],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],push:3,serious:[],fermentum:[]},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file From 7a4df9e2fc4b827e785dc30e649a75c7ce621df7 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 8 Mar 2012 23:05:52 -0500 Subject: [PATCH 017/416] RST reformatting a few things --- rst/gettingstarted.rst | 12 ++++++++++-- rst/playbooks.rst | 12 ++++++------ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index 0024abcf716..6bbb3177243 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -84,13 +84,21 @@ key in ``authorized_keys``:: aserver.example.org bserver.example.org -Now try this: +Set up SSH agent to avoid retyping passwords:: ssh-agent bash ssh-add ~/.ssh/id_rsa + +Now ping all your nodes:: + ansible all -m ping +Now run a live command on all of your nodes:: + + ansible all /bin/echo hello + Congratulations. You've just contacted your nodes with Ansible. It's now time to read some of the more real-world examples, and explore what you can do with different modules, as well -as the Ansible playbooks language. +as the Ansible playbooks language. Ansible is not just about running commands, but you already +have a working infrastructure! diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 7cbdd48e74d..71d87d3ee03 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -54,7 +54,7 @@ Vars section ```````````` A list of variables and values that can be used in the plays. These can be used in templates -or 'action' lines and are dereferenced using ```jinja2``` syntax like this: +or 'action' lines and are dereferenced using ```jinja2``` syntax like this:: {{ varname }} @@ -62,12 +62,12 @@ Further, if there are discovered variables about the system (say, if facter or o installed) these variables bubble up back into the playbook, and can be used on each system just like explicitly set variables. Facter variables are prefixed with 'facter_' and Ohai variables are prefixed with 'ohai_'. So for instance, if I wanted to write the -hostname into the /etc/motd file, I could say: +hostname into the /etc/motd file, I could say:: - name: write the motd - action: template src=/srv/templates/motd.j2 dest=/etc/motd -And in /srv/templates/motd.j2::: +And in /srv/templates/motd.j2:: You are logged into {{ facter_hostname }} @@ -96,7 +96,7 @@ command line. See the module documentation for more info. Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted to make a directory on each system named after the hostname ... yeah, that's I know silly ... you could -do it like so: +do it like so:: - name: make a directory - action: mkdir /tmp/{{ facter_hostname }} @@ -125,12 +125,12 @@ Includes Not all tasks have to be listed directly in the main file. An include file can contain a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this (assume a variable named 'user') +Variables passed in can be deferenced like this (assume a variable named 'user'):: {{ user }} For instance, if deploying multiple wordpress instances, I could contain all of my tasks -in a wordpress.yml file, and use it like so: +in a wordpress.yml file, and use it like so:: - tasks: - include: wordpress.yml user=timmy From fe2d1c7cc962a4d85ed00de2785c226d3db81813 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 8 Mar 2012 23:06:07 -0500 Subject: [PATCH 018/416] Docs rebuild --- html/_sources/gettingstarted.txt | 12 ++++++-- html/_sources/playbooks.txt | 12 ++++---- html/gettingstarted.html | 18 ++++++++---- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/playbooks.html | 49 +++++++++++--------------------- html/searchindex.js | 2 +- 8 files changed, 49 insertions(+), 50 deletions(-) diff --git a/html/_sources/gettingstarted.txt b/html/_sources/gettingstarted.txt index 0024abcf716..6bbb3177243 100644 --- a/html/_sources/gettingstarted.txt +++ b/html/_sources/gettingstarted.txt @@ -84,13 +84,21 @@ key in ``authorized_keys``:: aserver.example.org bserver.example.org -Now try this: +Set up SSH agent to avoid retyping passwords:: ssh-agent bash ssh-add ~/.ssh/id_rsa + +Now ping all your nodes:: + ansible all -m ping +Now run a live command on all of your nodes:: + + ansible all /bin/echo hello + Congratulations. You've just contacted your nodes with Ansible. It's now time to read some of the more real-world examples, and explore what you can do with different modules, as well -as the Ansible playbooks language. +as the Ansible playbooks language. Ansible is not just about running commands, but you already +have a working infrastructure! diff --git a/html/_sources/playbooks.txt b/html/_sources/playbooks.txt index 7cbdd48e74d..71d87d3ee03 100644 --- a/html/_sources/playbooks.txt +++ b/html/_sources/playbooks.txt @@ -54,7 +54,7 @@ Vars section ```````````` A list of variables and values that can be used in the plays. These can be used in templates -or 'action' lines and are dereferenced using ```jinja2``` syntax like this: +or 'action' lines and are dereferenced using ```jinja2``` syntax like this:: {{ varname }} @@ -62,12 +62,12 @@ Further, if there are discovered variables about the system (say, if facter or o installed) these variables bubble up back into the playbook, and can be used on each system just like explicitly set variables. Facter variables are prefixed with 'facter_' and Ohai variables are prefixed with 'ohai_'. So for instance, if I wanted to write the -hostname into the /etc/motd file, I could say: +hostname into the /etc/motd file, I could say:: - name: write the motd - action: template src=/srv/templates/motd.j2 dest=/etc/motd -And in /srv/templates/motd.j2::: +And in /srv/templates/motd.j2:: You are logged into {{ facter_hostname }} @@ -96,7 +96,7 @@ command line. See the module documentation for more info. Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted to make a directory on each system named after the hostname ... yeah, that's I know silly ... you could -do it like so: +do it like so:: - name: make a directory - action: mkdir /tmp/{{ facter_hostname }} @@ -125,12 +125,12 @@ Includes Not all tasks have to be listed directly in the main file. An include file can contain a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this (assume a variable named 'user') +Variables passed in can be deferenced like this (assume a variable named 'user'):: {{ user }} For instance, if deploying multiple wordpress instances, I could contain all of my tasks -in a wordpress.yml file, and use it like so: +in a wordpress.yml file, and use it like so:: - tasks: - include: wordpress.yml user=timmy diff --git a/html/gettingstarted.html b/html/gettingstarted.html index e0e01f7e240..c8cec27bb3c 100644 --- a/html/gettingstarted.html +++ b/html/gettingstarted.html @@ -126,14 +126,20 @@ key in authorized_keys
    -

    Now try this:

    -
    -
    ssh-agent bash -ssh-add ~/.ssh/id_rsa -ansible all -m ping
    +

    Set up SSH agent to avoid retyping passwords:

    +
    ssh-agent bash
    +ssh-add ~/.ssh/id_rsa
    +
    +

    Now ping all your nodes:

    +
    ansible all -m ping
    +
    +

    Now run a live command on all of your nodes:

    +
    ansible all /bin/echo hello
    +

    Congratulations. You’ve just contacted your nodes with Ansible. It’s now time to read some of the more real-world examples, and explore what you can do with different modules, as well -as the Ansible playbooks language.

    +as the Ansible playbooks language. Ansible is not just about running commands, but you already +have a working infrastructure!

    diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index ce979082332..d450a830f1c 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index 2fdd2890af7..e2250d75800 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index f0fd9f02775..41f45554ae7 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/playbooks.html b/html/playbooks.html index f62c06cd07d..ab3394467ed 100644 --- a/html/playbooks.html +++ b/html/playbooks.html @@ -98,20 +98,17 @@ described in the ‘patterns’ documentation. This is just like the fi

      Vars section

      A list of variables and values that can be used in the plays. These can be used in templates or ‘action’ lines and are dereferenced using `jinja2` syntax like this:

      -
      -
      {{ varname }}
      +
      {{ varname }}
      +

      Further, if there are discovered variables about the system (say, if facter or ohai were installed) these variables bubble up back into the playbook, and can be used on each system just like explicitly set variables. Facter variables are prefixed with ‘facter_‘ and Ohai variables are prefixed with ‘ohai_‘. So for instance, if I wanted to write the hostname into the /etc/motd file, I could say:

      -
      -
        -
      • name: write the motd
      • -
      • action: template src=/srv/templates/motd.j2 dest=/etc/motd
      • -
      -
      -

      And in /srv/templates/motd.j2::

      +
      - name: write the motd
      +- action: template src=/srv/templates/motd.j2 dest=/etc/motd
      +
      +

      And in /srv/templates/motd.j2:

      You are logged into {{ facter_hostname }}

      But we’re getting ahead of ourselves. Let’s talk about tasks.

      @@ -134,12 +131,9 @@ command line. See the module documentation for more info.

      Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted to make a directory on each system named after the hostname ... yeah, that’s I know silly ... you could do it like so:

      -
      -
        -
      • name: make a directory
      • -
      • action: mkdir /tmp/{{ facter_hostname }}
      • -
      -
      +
      - name: make a directory
      +- action: mkdir /tmp/{{ facter_hostname }}
      +

      Notify statements

      @@ -162,25 +156,16 @@ complete in a particular play.

      Includes

      Not all tasks have to be listed directly in the main file. An include file can contain a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this (assume a variable named ‘user’)

      -
      -
      {{ user }}
      +Variables passed in can be deferenced like this (assume a variable named ‘user’):

      +
      {{ user }}
      +

      For instance, if deploying multiple wordpress instances, I could contain all of my tasks in a wordpress.yml file, and use it like so:

      -
      -
        -
      • -
        tasks:
        -
          -
        • include: wordpress.yml user=timmy
        • -
        • include: wordpress.yml user=alice
        • -
        • include: wordpress.yml user=bob
        • -
        -
        -
        -
      • -
      -
      +
      - tasks:
      +   - include: wordpress.yml user=timmy
      +   - include: wordpress.yml user=alice
      +   - include: wordpress.yml user=bob
      +

      In addition to the explicitly passed in parameters, all variables from the vars section are also available.

      diff --git a/html/searchindex.js b/html/searchindex.js index 8a94e8983ab..af354f31d25 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,7],rhoncu:[],func:1,perl:7,mcollect:1,prefix:[2,3,7],code:[1,2,7],lacu:[],follow:[5,2,3],scp:7,nunc:[],content:[0,1],middl:3,depend:[],elsewher:7,specif:[5,6,7],program:[1,2,3],vel:[],blindingli:1,spec:3,sourc:[1,2,3,7],everi:[4,3],string:2,fals:[4,2],consequat:[],failur:[6,2],veri:[1,6,3],affect:3,risu:[],luctu:[],mauri:[],magic:[],max_client:3,level:[4,2],id_rsa:[0,7],list:[1,2,3,4,5,7,8],vivamu:[],item:4,ansible_librari:[],dotnet:4,saltstack:1,phasellu:[],ornar:[],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],eleifend:[],further:3,even:7,what:[0,2,3],diam:[],favcolor:7,section:[1,2,3],abl:[],nec:[],abbrevi:4,version:[2,7],directori:[2,3],ever:1,method:6,metadata:[],suscipit:[],hash:2,abov:3,eckersberg:4,lectu:[],here:2,leo:[],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],aliquam:[],scelerisqu:[],great:1,purpos:2,plai:[2,3],ahead:3,precursor:1,larger:[],technolog:1,step:[2,3],adipisc:[],prior:2,venenati:[],permit:4,action:[1,2,3],nulla:[],implement:6,commonli:7,ourselv:3,iaculi:[],via:[0,1],regardless:[4,1,3],tempu:[],extra:3,modul:[0,1,2,3,6,7],prefer:[],releas:0,unix:3,api:[1,6,2],instal:[7,0,2,3,1],should:[4,2],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,ohai:[1,2,3,7],dehaan:1,call:2,usr:[2,3,7],taken:3,sagitti:[],care:[],checkout:2,until:0,more:[0,5,2,3,1],desir:3,idempot:[2,3,7],dbserver:5,unneccessari:2,sbin:[2,7],agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:[],join:1,ibm:1,module_arg:6,dest:[2,3,7],habitass:[],setup:[1,2,7],work:[1,7,5],critic:1,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,1,2,3],ero:[],root:[4,1,3],control:[1,2,3,7],conf:[3,7],yamllint:4,ultric:[],process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],libero:[],knows_oop:4,minimum:3,want:[6,2,3],occur:3,nullam:[],alwai:2,multipl:[5,3,7],newlin:4,puru:[],sit:[],capistrano:1,ping:[0,6,2,1],write:[4,1,2,3,7],how:[0,2,3,4,5,6],etiam:[],instead:2,config:[1,3],stock:2,arcu:[],financ:1,referenc:[5,3],clone:0,after:[3,7],lab:1,befor:[2,3],ohai_:3,contribut:1,mai:[4,0],end:[2,3],associ:4,grow:[],man:[1,8],bibendum:[],"short":1,orchestr:[0,1,2,3,5,7],thoug:2,bootstrap:1,favorit:1,turpi:[],element:[4,2],issu:1,inform:[2,3],mango:4,combin:4,order:3,talk:[0,3],origin:1,help:1,over:1,move:[2,3],orang:4,becaus:[],elit:4,rpmbuild:0,comma:4,vita:[],still:[],paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,fit:[],conval:[],yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[1,5],mail:[1,5],sapien:[],main:3,might:3,easier:[],non:1,"return":[1,6,2],thei:[6,2,3,7],food:4,alist:[],nibh:[],egesta:[],"break":[],framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],simpl:[4,1,6,3,7],viverra:[],drop:2,instruct:0,porta:[],separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],puppet:1,updat:7,rotat:3,mean:[2,3],harm:3,metu:[],michael:1,auctor:[],idea:1,realli:[4,2,3],ensur:[3,7],backport:0,connect:[],our:4,happen:[2,3],todo:[],event:2,out:[4,1,2,3,7],variabl:[2,3,7],"try":0,shown:[],network:1,space:[1,2],reboot:7,bubbl:[2,3],cra:[],rel:2,internet:1,correct:[4,1,3],red:[1,7],painless:1,hendrerit:[],ntp:7,orci:[],given:[2,7],pub:7,base:[1,3],usabl:1,dictionari:4,qui:[],org:0,molli:[],bash:[0,7],basi:3,vestibulum:[],pyyaml:0,indent:[],maecena:[],could:[6,3],put:[0,7],fqdn:7,thing:[1,3],yum:[],isn:1,principl:[],top:2,first:[7,0,2,3,1],oper:[1,7],softwar:[1,2,7],rang:1,notifi:[1,3,7],obviou:1,onc:[2,3],number:2,yourself:0,hook:2,datastructur:6,alreadi:[2,3],done:3,"long":[1,2,7],enim:[],massiv:1,open:[],differ:[7,0,3,1],praesent:[],convent:2,script:[1,6,7],data:[4,6,2,7],licens:[],mkdir:3,system:[0,1,2,3,5,7],messag:6,parallel:[1,7],inventori:[1,2,3,5],appl:4,too:1,statement:[1,3],molesti:[],john:4,banana:4,shell:[1,2,7],option:[4,8,3,7],behind:2,tool:[1,2,7],copi:[1,2,7],specifi:[4,2,7],quam:[],github:[0,1],off:1,exactli:[],than:[0,2,3,7],serv:[],liter:2,silli:3,target:[1,5],provid:4,sollicitudin:[],heavyweight:[],structur:4,charact:4,project:[0,7,1],architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,argument:2,hypothet:3,ant:[],download:0,have:[0,3,1],need:[4,0,2,3,7],tellu:[],seek:2,paramiko:0,engin:7,built:0,note:[5,2,7],also:[0,1,2,3,4,5,7],client:1,massa:[],build:[0,6],indic:2,environ:[],divers:1,pulvinar:[],begin:4,sure:[],unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,who:[],discov:3,most:[4,2],employe:4,regular:3,plan:[],deploi:[1,2,3,7],pair:2,why:1,porttitor:[],simplic:[],don:2,doc:1,later:7,cover:7,doe:[1,2,5],sodal:[],bracket:[4,5],snapshot:2,place:1,wildcard:5,dolor:[],modularli:[],awesom:[1,3],laoreet:[],blandit:[],verbos:2,syntax:[4,3],bring:3,directli:[2,3,7],raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],permiss:[],hack:1,radic:1,pki:[],trivial:[1,2],varnam:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,execut:[1,2,3],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],written:[1,2,3,7],accumsan:[],consectetur:[],somevar:3,freenod:1,variu:[],local:2,yml:3,long_running_oper:7,nearli:[2,3],variou:[],get:[4,0,3,7,1],express:[4,1,6,3],stop:2,mission:1,repo:[2,7],ssl:[],timmi:3,ssh:[0,7],malesuada:[],requir:[0,2,1],uvh:0,nisi:[],bar:5,lame:4,nisl:[],remot:[0,2,3,7],stuff:7,contain:[2,3],through:[0,2,1],told:3,where:[1,2,3],wrote:[],view:[1,8],user:3,set:[2,3],creator:[],elimin:[],see:[0,1,2,3,4,5,7],sed:[],result:[6,2],fail:3,sem:[],extend:1,servic:[1,2,3,7],faucibu:[],statu:7,manpag:[0,8],databas:3,someth:[1,2,7],discoveri:2,restart:[2,3,7],state:[2,3,7],won:7,ligula:[],between:4,"import":6,irc:1,altern:7,elementum:[],kei:[4,0,2,3],handful:[],aspir:[],style:2,extens:1,job:[4,7],entir:3,aserv:0,magna:[],webapp:7,minut:[],addit:[4,1,3],delimit:2,plugin:[],goal:1,against:[1,3,5],tempor:[],etc:[7,0,5,3,1],instanc:3,mani:[3,7],placerat:[],planet:1,com:[0,6,5],proin:[],sha:2,skill:4,assur:3,simpli:[2,3],overview:4,inspir:[],header:5,colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],matti:[],dui:[],pretium:[],multiplay:1,morbi:[],three:5,been:1,amet:[],json:[1,6,2],much:[1,2],far:1,basic:[4,0,5,2,1],ungroup:[],feugiat:[],quickli:[4,1],indenta:4,box:[1,2],wish:[4,0,5],derefer:[],fire:1,rubi:[4,2,7],vulput:[],ani:[1,6,2,3,7],upgrad:7,likes_emac:4,understand:[],pellentesqu:[],donec:[],minim:0,atlanta:7,job_statu:7,those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],tortor:[],look:[5,3,7],replac:3,hoc:[1,3],straight:7,md5sum:2,batch:[],"while":3,overrid:[],facter_hostnam:3,ipsum:[],cobbler:1,scene:2,bin:[2,3,7],motd:[3,7],tar:0,them:[2,3,7],erat:[],myapp:7,module_nam:6,ship:2,sever:4,http_port:3,develop:[4,0,1],welcom:1,author:1,make:[0,2,3,7],platea:[],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],fedora:[],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,finish:[],http:2,hostnam:3,denot:5,nest:2,pick:4,effect:3,dai:[],fruit:4,fusc:[],ownership:[],extrem:0,php:7,distutil:[0,1],typic:7,squar:4,exceedingli:[],task:[1,3,7],kept:3,scenario:2,mention:3,whole:[],well:[0,2,3],spent:[],contact:[0,6,2],command:[0,1,2,3,5,7,8],thi:[0,1,2,3,4,5,7],choos:2,dereferenc:3,usual:3,explor:0,comment:[],protocol:2,just:[7,0,2,3,1],less:[0,1],excel:1,kill:7,ntp_server:7,simultan:7,languag:[4,0,5,2,1],previous:[],web:[6,7],versu:1,easi:[1,2],mix:5,hac:[],except:3,littl:1,add:[0,7],simplejson:0,els:1,unlik:3,hat:1,match:3,take:2,real:0,applic:[6,3],which:[4,0,5,3,1],format:[1,2,3,4,5,7],read:[4,0],tincidunt:[],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,daemon:1,motorola:1,like:[4,5,2,3,7],success:2,signal:3,manual:[],integ:2,noth:3,edit:0,"boolean":4,either:2,velit:[],popular:1,async:[],page:[4,0,8,1],deal:[],webserv:[5,3,7],suppli:[],some:[0,2],back:3,dead:1,tumblr:[],home:[],server:[1,2,3,7],librari:[],tmp:[3,7],render:2,augu:[],assum:3,avoid:2,though:1,ultrici:[],per:6,tracker:1,unit:[],pattern:[1,6,3,5],foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],quit:[],lose:7,usag:[2,7],devop:1,web2:6,host:[0,1,2,3,5,6,7],web1:6,repositori:0,output:3,"super":1,aenean:[],simpler:7,comparison:1,sshd:1,actual:2,gplv3:[],justo:[],othervar:3,surround:4,manag:[0,1,2,3,4,5,7],srv:[3,7],quisqu:[],industri:1,own:[1,2,3],"final":4,bounc:2,within:2,automat:2,compos:3,down:[],contributor:[],chang:[2,3,7],next:3,bserver:0,your:[0,1,2,3,4,5,7],mpdehaan:[],git:[0,2,7,1],fabric:1,wai:[4,0,3,7],interdum:[],transfer:[1,7],dictum:[],support:[2,7],question:1,fast:1,happi:1,avail:[0,8,2,3,7],start:[0,1,2,3,4,7],trigger:2,wordpress:3,includ:[1,3],lot:[1,3,7],suit:3,"var":[1,3],individu:5,fork:6,head:[2,7],doctyp:[],form:[4,3],eget:[],handler:[1,3,7],lint:4,yeah:3,msg:2,loborti:[],ullamcorp:[],line:[1,2,3,4,7,8],"true":[4,2],tristiqu:[],congratul:0,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,type:6,caller:2,tell:[2,7],asynchron:[1,3],record:4,below:[],limit:[1,7],suspendiss:[],rerun:3,otherwis:2,problem:[],similar:2,chip:1,facter:[1,2,3,7],curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,ansil:[],deferenc:3,file:[0,1,2,3,4,5,7],bob:3,exist:[1,3],check:[2,7],urna:[],nequ:[],again:3,googl:1,when:[2,3,7],nam:[],"default":[1,5],other:[7,0,2,3,1],futur:0,dignissim:[],test:[0,2],you:[0,1,2,3,4,5,7],clojur:[],node:[0,2,7,1],dapibu:[],journei:[],gravida:[],sequenc:1,asciidoc:0,est:[],log:3,feli:[],aliquet:[],src:[2,3,7],lorem:[],"60k":1,dictumst:[],sphinx:0,rutrum:[],anywher:[],descript:[],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],push:3,serious:[],fermentum:[]},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,7],rhoncu:[],donec:[],mcollect:1,prefix:[2,3,7],code:[1,2,7],lacu:[],follow:[5,2,3],scp:7,nunc:[],content:[0,1],middl:3,depend:[],fusc:[],elsewher:7,program:[1,2,3],certain:3,vel:[],blindingli:1,spec:3,sourc:[1,2,3,7],everi:[4,3],string:2,fals:[4,2],than:[0,2,3,7],consequat:[],failur:[6,2],veri:[1,6,3],affect:3,risu:[],luctu:[],implement:6,magic:[],level:[4,2],id_rsa:[0,7],list:[1,2,3,4,5,7,8],vivamu:[],item:4,ansible_librari:[],form:[4,3],dotnet:4,saltstack:1,mpdehaan:[],phasellu:[],ornar:[],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],eleifend:[],further:3,even:7,what:[0,2,3],diam:[],favcolor:7,section:[1,2,3],abl:[],nec:[],abbrevi:4,version:[2,7],directori:[2,3],ever:1,method:6,metadata:[],tar:0,suscipit:[],hash:2,facter_hostnam:3,eckersberg:4,here:2,leo:[],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],aliquam:[],scelerisqu:[],great:1,purpos:2,plai:[2,3],ahead:3,precursor:1,larger:[],technolog:1,host:[0,1,2,3,5,6,7],adipisc:[],prior:2,venenati:[],web1:6,permit:4,action:[1,2,3],nulla:[],bob:3,commonli:7,ourselv:3,iaculi:[],via:[0,1],regardless:[4,1,3],dictionari:4,extra:3,modul:[0,1,2,3,6,7],prefer:[],qui:[],unix:3,api:[1,6,2],instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,suit:3,live:0,dehaan:1,call:2,usr:[2,3,7],taken:3,sagitti:[],basi:3,checkout:2,until:0,more:[0,5,2,3,1],desir:3,idempot:[2,3,7],dbserver:5,unneccessari:2,sbin:[2,7],agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],sshd:1,none:[],join:1,ibm:1,module_arg:6,habitass:[],setup:[1,2,7],work:[0,5,7,1],critic:1,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],ero:[],root:[4,1,3],pick:4,control:[1,2,3,7],myapp:7,yamllint:4,ultric:[],process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],othervar:3,knows_oop:4,minimum:3,want:[6,2,3],occur:3,nullam:[],alwai:2,multipl:[5,3,7],newlin:4,puru:[],sit:[],capistrano:1,ping:[0,6,2,1],write:[4,1,2,3,7],how:[0,2,3,4,5,6],etiam:[],instead:2,simpl:[4,1,6,3,7],updat:7,arcu:[],express:[4,1,6,3],referenc:[5,3],clone:0,after:[3,7],usabl:1,befor:[2,3],ohai_:3,mai:[4,0],end:[2,3],data:[4,6,2,7],parallel:[1,7],man:[1,8],repo:[2,7],"short":1,orchestr:[0,1,2,3,5,7],thoug:2,read:[4,0],bootstrap:1,favorit:1,turpi:[],element:[4,2],issu:1,inform:[2,3],mango:4,combin:4,asynchron:[1,3],order:3,talk:[0,3],oper:[1,7],help:1,over:1,move:[2,3],orang:4,becaus:[],elit:4,rpmbuild:0,comma:4,vita:[],still:[],paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,fit:[],yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,1],mail:[1,5],sapien:[],main:3,might:3,easier:[],non:1,"return":[1,6,2],thei:[6,2,3,7],food:4,alist:[],nibh:[],egesta:[],"break":[],framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],config:[1,3],viverra:[],drop:2,datastructur:6,porta:[],separ:4,each:[4,2,3,7],puppet:1,stock:2,nearli:[2,3],mean:[2,3],harm:3,metu:[],michael:1,auctor:[],idea:1,realli:[4,2,3],contributor:[],backport:0,connect:[],our:4,happen:[2,3],todo:[],event:2,out:[4,1,2,3,7],variabl:[2,3,7],"try":[],shown:[],network:1,space:[1,2],reboot:7,bubbl:[2,3],stuff:7,rel:2,internet:1,correct:[4,1,3],red:[1,7],rotat:3,state:[2,3,7],hendrerit:[],ntp:7,contain:[2,3],differ:[7,0,3,1],pub:7,base:[1,3],lab:1,tempu:[],releas:0,org:0,molli:[],bash:[0,7],care:[],vestibulum:[],pyyaml:0,indent:[],maecena:[],could:[6,3],put:[0,7],fqdn:7,thing:[1,3],yum:[],isn:1,principl:[],top:2,first:[7,0,2,3,1],origin:1,softwar:[1,2,7],rang:1,notifi:[1,3,7],obviou:1,onc:[2,3],number:2,yourself:0,hook:2,instruct:0,alreadi:[0,2,3],done:3,fast:1,enim:[],massiv:1,open:[],straight:7,given:[2,7],convent:2,script:[1,6,7],associ:4,licens:[],mkdir:3,system:[0,1,2,3,5,7],messag:6,grow:[],too:1,statement:[1,3],molesti:[],john:4,banana:4,includ:[1,3],shell:[1,2,7],option:[4,8,3,7],welcom:1,tool:[1,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,quam:[],next:3,github:[0,1],kept:3,exactli:[],accumsan:[],serv:[],liter:2,silli:3,target:[1,5],provid:4,sollicitudin:[],heavyweight:[],structur:4,charact:4,project:[0,7,1],architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,ani:[1,6,2,3,7],spent:[],ant:[],download:0,have:[0,3,1],need:[4,0,2,3,7],tellu:[],seek:2,paramiko:0,engin:7,built:0,contact:[0,6,2],note:[5,2,7],also:[0,1,2,3,4,5,7],client:1,massa:[],build:[0,6],indic:2,environ:[],divers:1,pulvinar:[],begin:4,sure:[],unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,who:[],discov:3,most:[4,2],employe:4,regular:3,plan:[],deploi:[1,2,3,7],pair:2,why:1,porttitor:[],simplic:[],don:2,doc:1,later:7,cover:7,doe:[1,2,5],sodal:[],bracket:[4,5],snapshot:2,place:1,wildcard:5,dolor:[],someth:[1,2,7],awesom:[1,3],laoreet:[],blandit:[],verbos:2,syntax:[4,3],bring:3,directli:[2,3,7],raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],permiss:[],hack:1,radic:1,pki:[],trivial:[1,2],varnam:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,just:[7,0,2,3,1],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],written:[1,2,3,7],should:[4,2],consectetur:[],somevar:3,congratul:0,variu:[],local:2,yml:3,long_running_oper:7,contribut:1,variou:[],get:[4,0,3,7,1],financ:1,stop:2,mission:1,bibendum:[],ssl:[],ssh:[0,7],malesuada:[],requir:[0,2,1],uvh:0,nisi:[],bar:5,lame:4,nisl:[],remot:[0,2,3,7],cra:[],orci:[],through:[0,2,1],told:3,where:[1,2,3],wrote:[],view:[1,8],set:[0,2,3],creator:[],elimin:[],see:[0,1,2,3,4,5,7],sed:[],result:[6,2],fail:3,sem:[],extend:1,ntp_server:7,faucibu:[],statu:7,kei:[4,0,2,3],databas:3,modularli:[],discoveri:2,restart:[2,3,7],behind:2,won:7,languag:[4,0,5,2,1],between:4,"import":6,irc:1,altern:7,elementum:[],manpag:[0,8],handful:[],aspir:[],style:2,extens:1,job:[4,7],entir:3,aserv:0,magna:[],webapp:7,timmi:3,addit:[4,1,3],delimit:2,plugin:[],goal:1,against:[1,3,5],tempor:[],etc:[7,0,5,3,1],instanc:3,mani:[3,7],placerat:[],com:[0,6,5],proin:[],sha:2,minut:[],assur:3,simpli:[2,3],author:1,overview:4,format:[1,2,3,4,5,7],inspir:[],header:5,colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],matti:[],dui:[],three:5,pretium:[],multiplay:1,morbi:[],compos:3,been:1,amet:[],json:[1,6,2],much:[1,2],basic:[4,0,5,2,1],ungroup:[],feugiat:[],quickli:[4,1],indenta:4,box:[1,2],derefer:[],fire:1,rubi:[4,2,7],vulput:[],argument:2,understand:[],pellentesqu:[],func:1,atlanta:7,job_statu:7,those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],tortor:[],look:[5,3,7],nequ:[],hoc:[1,3],servic:[1,2,3,7],md5sum:2,batch:[],"while":3,overrid:[],abov:3,ipsum:[],cobbler:1,scene:2,real:0,motd:[3,7],max_client:3,them:[2,3,7],erat:[],conf:[3,7],module_nam:6,ship:2,sever:4,http_port:3,develop:[4,0,1],inventori:[1,2,3,5],minim:0,make:[0,2,3,7],platea:[],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],success:2,fedora:[],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,finish:[],http:2,hostnam:3,again:3,nest:2,painless:1,effect:3,dai:[],fruit:4,user:3,ownership:[],extrem:0,php:7,distutil:[0,1],typic:7,squar:4,exceedingli:[],task:[1,3,7],off:1,scenario:2,mention:3,whole:[],well:[0,2,3],hypothet:3,exampl:[0,1,2,3,4,5,6,7],command:[0,1,2,3,5,7,8],thi:[0,1,2,3,4,5,7],choos:2,dereferenc:3,usual:3,comment:[],protocol:2,execut:[1,2,3],less:[0,1],when:[2,3,7],kill:7,skill:4,simultan:7,ligula:[],previous:[],web:[6,7],versu:1,easi:[1,2],mix:5,trigger:2,hac:[],except:3,littl:1,add:[0,7],other:[7,0,2,3,1],els:1,unlik:3,hat:1,match:3,take:2,bin:[0,2,3,7],applic:[6,3],which:[4,0,5,3,1],ohai:[1,2,3,7],dest:[2,3,7],tincidunt:[],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],specif:[5,6,7],signal:3,manual:[],integ:2,noth:3,edit:0,"boolean":4,either:2,velit:[],popular:1,async:[],page:[4,0,8,1],deal:[],webserv:[5,3,7],suppli:[],some:[0,2],back:3,dead:1,tumblr:[],home:[],server:[1,2,3,7],librari:[],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,ultrici:[],per:6,tracker:1,unit:[],pattern:[1,6,3,5],foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],quit:[],lose:7,usag:[2,7],asciidoc:0,web2:6,step:[2,3],explor:0,repositori:0,output:3,"super":1,aenean:[],simpler:7,comparison:1,about:[4,0,2,3,1],actual:2,gplv3:[],justo:[],libero:[],surround:4,manag:[0,1,2,3,4,5,7],srv:[3,7],quisqu:[],industri:1,own:[1,2,3],"final":4,bounc:2,within:2,automat:2,upgrad:7,down:[],ensur:[3,7],chang:[2,3,7],perl:7,bserver:0,your:[0,1,2,3,4,5,7],praesent:[],git:[0,2,7,1],type:6,fabric:1,wai:[4,0,3,7],interdum:[],transfer:[1,7],dictum:[],support:[2,7],question:1,"long":[1,2,7],happi:1,avail:[0,8,2,3,7],start:[0,1,2,3,4,7],appl:4,wordpress:3,augu:[],lot:[1,3,7],replac:3,"var":[1,3],individu:5,fork:6,head:[2,7],doctyp:[],simplejson:0,eget:[],handler:[1,3,7],lint:4,yeah:3,msg:2,loborti:[],ullamcorp:[],line:[1,2,3,4,7,8],"true":[4,2],tristiqu:[],freenod:1,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,wish:[4,0,5],caller:2,tell:[2,7],planet:1,record:4,below:[],limit:[1,7],suspendiss:[],rerun:3,otherwis:2,problem:[],similar:2,chip:1,facter:[1,2,3,7],curv:1,featur:3,tasti:4,creat:1,lectu:[],doesn:1,repres:4,ansil:[],deferenc:3,file:[0,1,2,3,4,5,7],mauri:[],exist:[1,3],check:[2,7],urna:[],conval:[],echo:0,denot:5,googl:1,excel:1,nam:[],"default":[1,5],likes_emac:4,futur:0,dignissim:[],test:[0,2],you:[0,1,2,3,4,5,7],clojur:[],node:[0,2,7,1],dapibu:[],journei:[],gravida:[],sequenc:1,devop:1,push:3,est:[],log:3,feli:[],aliquet:[],src:[2,3,7],lorem:[],"60k":1,dictumst:[],sphinx:0,rutrum:[],anywher:[],descript:[],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],far:1,serious:[],fermentum:[],hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file From e8eb7ab5ed723501fab33e4822c27cad64f63eb7 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 9 Mar 2012 07:42:53 -0500 Subject: [PATCH 019/416] Update docs --- html/YAMLScripts.html | 2 +- html/_sources/api.txt | 42 ++++++++++- html/_sources/examples.txt | 34 +++++---- html/_sources/playbooks.txt | 55 +++++++++++++- html/api.html | 53 ++++++++++++-- html/communicate.html | 118 ------------------------------- html/examples.html | 35 ++++----- html/genindex.html | 2 +- html/gettingstarted.html | 4 +- html/index.html | 12 ++-- html/man.html | 10 +-- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/modules.html | 14 ++-- html/patterns.html | 12 ++-- html/playbooks.html | 59 ++++++++++++++-- html/search.html | 2 +- html/searchindex.js | 2 +- rst/api.rst | 42 ++++++++++- rst/examples.rst | 34 +++++---- rst/playbooks.rst | 55 +++++++++++++- 22 files changed, 379 insertions(+), 214 deletions(-) delete mode 100644 html/communicate.html diff --git a/html/YAMLScripts.html b/html/YAMLScripts.html index 09db73f8aea..ec72607e3ca 100644 --- a/html/YAMLScripts.html +++ b/html/YAMLScripts.html @@ -183,7 +183,7 @@ languages:
      diff --git a/html/_sources/api.txt b/html/_sources/api.txt index a3ddea45951..7eb71cf1f96 100644 --- a/html/_sources/api.txt +++ b/html/_sources/api.txt @@ -1,5 +1,5 @@ -API -``` +Using the Python API +==================== The Python API is very powerful, and is how the ansible CLI and ansible-playbook are implemented. @@ -32,4 +32,42 @@ expressed in the 'ansible-modules' documentation.:: A module can return any type of JSON data it wants, so Ansible can be used as a framework to rapidly build powerful applications and scripts. +Detailed API Example +```````````````````` + +The following script prints out the uptime information for all hosts:: + + #!/usr/bin/python + + import ansible.runner + import sys + + # construct the ansible runner and execute on all hosts + results = ansible.runner.Runner( + pattern='*', forks=10, + module_name='command', module_args=['/usr/bin/uptime'], + ).run() + + if results is None: + print "No hosts found" + sys.exit(1) + + print "UP ***********" + for (hostname, result) in results['contacted'].items(): + if not 'failed' in result: + print "%s >>> %s" % (hostname, result['stdout']) + + print "FAILED *******" + for (hostname, result) in results['contacted'].items(): + if 'failed' in result: + print "%s >>> %s" % (hostname, result['msg']) + + print "DOWN *********" + for (hostname, result) in results['dark'].items(): + print "%s >>> %s" % (hostname, result) + +Advanced programmers may also wish to read the source to ansible itself, for +it uses the Runner() API (with all available options) to implement the +command line tools ``ansible`` and ``ansible-playbook``. + diff --git a/html/_sources/examples.txt b/html/_sources/examples.txt index b061f31eaac..4adeeed94db 100644 --- a/html/_sources/examples.txt +++ b/html/_sources/examples.txt @@ -1,5 +1,9 @@ -Examples -======== +Command Line Examples +===================== + +The following examples show how to use `/usr/bin/ansible` for running ad-hoc tasks. +Start here. For configuration management and deployments, you'll want to pick up on +using `/usr/bin/ansible-playbook` -- the concepts port over directly. .. seealso:: @@ -24,19 +28,6 @@ The -f 10 specifies the usage of 10 simultaneous processes. Note that other than the command module, ansible modules do not work like simple scripts. They make the remote system look like you state, and run the commands neccessary to get it there. This is commonly refered to as 'idempotency'. -Time Limited Background Operations -`````````````````````````````````` - -Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won't lose track. Polling support is pending in the command line.:: - - ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff" - ansible all -n job_status -a jid=123456789 - -Any module other than 'copy' or 'template' can be backgrounded. Typically you'll be backgrounding shell -commands or software upgrades only. - -After the time limit (in seconds) runs out (-B), the process on the remote nodes will be killed. - File Transfer & Templating `````````````````````````` @@ -74,4 +65,17 @@ Alternatively, restart a service on all webservers:: ansible webservers -m service name=httpd state=restarted +Time Limited Background Operations +`````````````````````````````````` + +Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won't lose track. Polling support is pending in the command line.:: + + ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff" + ansible all -n job_status -a jid=123456789 + +Any module other than 'copy' or 'template' can be backgrounded. Typically you'll be backgrounding shell +commands or software upgrades only. + +After the time limit (in seconds) runs out (-B), the process on the remote nodes will be killed. + diff --git a/html/_sources/playbooks.txt b/html/_sources/playbooks.txt index 71d87d3ee03..890768c5894 100644 --- a/html/_sources/playbooks.txt +++ b/html/_sources/playbooks.txt @@ -47,8 +47,7 @@ back on the webservers group, etc:: Hosts line `````````` -The hosts line is a list of one or more groups or host patterns, seperated by colons, as -described in the 'patterns' documentation. This is just like the first parameter to /usr/bin/ansible. +The hosts line is a list of one or more groups or host patterns, seperated by colons, asdescribed in the 'patterns' documentation. This is just like the first parameter to /usr/bin/ansible. Vars section ```````````` @@ -140,6 +139,58 @@ in a wordpress.yml file, and use it like so:: In addition to the explicitly passed in parameters, all variables from the vars section are also available. +The format of an included list of tasks or handlers looks just like a flat list of tasks. Here +is an example of what base.yml might look like:: + + --- + - name: no selinux + action: command /usr/sbin/setenforce 0 + - name: no iptables + action: service name=iptables state=stopped + - name: this is just to show variables work here, favcolor={{ favcolor }} + action: command /bin/true + +As you can see above, variables in include files work just like they do in the main file. +Including a variable in the name of a task is a contrived example, you could also +pass them to the action command line or use them inside a template file. + +Note that include statements are only usable from the top level playbook file. +At this time, includes can not include other includes. + +Using Includes To Assign Classes of Systems +``````````````````````````````````````````` + +Include files are best used to reuse logic between playbooks. You could imagine +a playbook describing your entire infrastructure like this:: + + --- + - hosts: atlanta-webservers + vars: + datacenter: atlanta + tasks: + - include: base.yml + - include: webservers.yml database=db.atlanta.com + handlers: + - include: generic-handlers.yml + - hosts: atlanta-dbservers + vars: + datacenter: atlanta + tasks: + - include: base.yml + - include: dbservers.yml + handlers: + - include: generic-handlers.yml + +There is one (or more) play defined for each group of systems, and each play maps +each group includes one or more 'class definitions' telling the systems what they +are supposed to do or be. + +Using a common handlers file could allow one task in 'webservers' to define 'restart apache', +and it could be reused between multiple plays. + +Variables like 'database' above can be used in templates referenced from the +configuration file to generate machine specific variables. + Asynchronous Actions and Polling ```````````````````````````````` diff --git a/html/api.html b/html/api.html index 685a15f8c4c..cd965fc710b 100644 --- a/html/api.html +++ b/html/api.html @@ -7,7 +7,7 @@ - API — Ansible v0.0.1 documentation + Using the Python API — Ansible v0.0.1 documentation - - - - - - - - - - -
      -
      -
      -
      - -
      -

      Communicate and Get Involved

      - -
      - - -
      -
      -
      -
      -
      -

      Previous topic

      -

      API

      -

      Next topic

      -

      Man Pages

      -

      This Page

      - - - -
      -
      -
      -
      - - - - \ No newline at end of file diff --git a/html/examples.html b/html/examples.html index d39b37a4b76..d60197c19f8 100644 --- a/html/examples.html +++ b/html/examples.html @@ -7,7 +7,7 @@ - Examples — Ansible v0.0.1 documentation + Command Line Examples — Ansible v0.0.1 documentation - +
    • - previous |
    • Ansible v0.0.1 documentation »
    @@ -71,7 +71,7 @@

    Previous topic

    API

    + title="previous chapter">Using the Python API

    This Page

    diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index d450a830f1c..f1676121f63 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index e2250d75800..de6d091b1fd 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index 41f45554ae7..dab3740bd3b 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/modules.html b/html/modules.html index 6b91a5d7ee0..3b01f52e5cc 100644 --- a/html/modules.html +++ b/html/modules.html @@ -24,7 +24,7 @@ - +
    • - previous |
    • Ansible v0.0.1 documentation »
    @@ -55,11 +55,11 @@ ansible playbooks.

    See also

    -
    Examples
    +
    Command Line Examples
    Examples of using modules in /usr/bin/ansible
    Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
    Examples of using modules with /usr/bin/ansible-playbook
    -
    API
    +
    Using the Python API
    Examples of using modules with the Python API
    @@ -216,7 +216,7 @@ the command line, passing them arguments just like they would be passed with ans

    Previous topic

    Examples

    + title="previous chapter">Command Line Examples

    Next topic

    YAML Format

    @@ -252,14 +252,14 @@ the command line, passing them arguments just like they would be passed with ans next |
  • - previous |
  • Ansible v0.0.1 documentation »
  • diff --git a/html/patterns.html b/html/patterns.html index 321977cee65..230ca331748 100644 --- a/html/patterns.html +++ b/html/patterns.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • See also

    -
    Examples
    +
    Command Line Examples
    Examples of basic commands
    Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
    Learning ansible’s configuration management language
    @@ -124,7 +124,7 @@ webservers:dbservers title="previous chapter">Getting Started

    Next topic

    Examples

    + title="next chapter">Command Line Examples

    This Page

  • diff --git a/html/playbooks.html b/html/playbooks.html index ab3394467ed..58baa5b5a38 100644 --- a/html/playbooks.html +++ b/html/playbooks.html @@ -23,7 +23,7 @@ - + @@ -34,7 +34,7 @@ index
  • - next |
  • Hosts line

    -

    The hosts line is a list of one or more groups or host patterns, seperated by colons, as -described in the ‘patterns’ documentation. This is just like the first parameter to /usr/bin/ansible.

    +

    The hosts line is a list of one or more groups or host patterns, seperated by colons, asdescribed in the ‘patterns’ documentation. This is just like the first parameter to /usr/bin/ansible.

    Vars section

    @@ -168,6 +167,51 @@ in a wordpress.yml file, and use it like so:

    In addition to the explicitly passed in parameters, all variables from the vars section are also available.

    +

    The format of an included list of tasks or handlers looks just like a flat list of tasks. Here +is an example of what base.yml might look like:

    +
    ---
    +- name: no selinux
    +  action: command /usr/sbin/setenforce 0
    +- name: no iptables
    +  action: service name=iptables state=stopped
    +- name: this is just to show variables work here, favcolor={{ favcolor }}
    +  action: command /bin/true
    +
    +

    As you can see above, variables in include files work just like they do in the main file. +Including a variable in the name of a task is a contrived example, you could also +pass them to the action command line or use them inside a template file.

    +

    Note that include statements are only usable from the top level playbook file. +At this time, includes can not include other includes.

    +
    +
    +

    Using Includes To Assign Classes of Systems

    +

    Include files are best used to reuse logic between playbooks. You could imagine +a playbook describing your entire infrastructure like this:

    +
    ---
    +- hosts: atlanta-webservers
    +  vars:
    +    datacenter: atlanta
    +  tasks:
    +  - include: base.yml
    +  - include: webservers.yml database=db.atlanta.com
    +  handlers:
    +    - include: generic-handlers.yml
    +- hosts: atlanta-dbservers
    +  vars:
    +    datacenter: atlanta
    +  tasks:
    +  - include: base.yml
    +  - include: dbservers.yml
    +  handlers:
    +    - include: generic-handlers.yml
    +
    +

    There is one (or more) play defined for each group of systems, and each play maps +each group includes one or more ‘class definitions’ telling the systems what they +are supposed to do or be.

    +

    Using a common handlers file could allow one task in ‘webservers’ to define ‘restart apache’, +and it could be reused between multiple plays.

    +

    Variables like ‘database’ above can be used in templates referenced from the +configuration file to generate machine specific variables.

    Asynchronous Actions and Polling

    @@ -198,6 +242,7 @@ are also available.

  • Notify statements
  • Handlers
  • Includes
  • +
  • Using Includes To Assign Classes of Systems
  • Asynchronous Actions and Polling
  • Executing A Playbook
  • @@ -209,7 +254,7 @@ are also available.

    title="previous chapter">YAML Format

    Next topic

    API

    + title="next chapter">Using the Python API

    This Page

    diff --git a/html/search.html b/html/search.html index e870053d704..f3f87515708 100644 --- a/html/search.html +++ b/html/search.html @@ -90,7 +90,7 @@
    diff --git a/html/searchindex.js b/html/searchindex.js index af354f31d25..918c86baa63 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,7],rhoncu:[],donec:[],mcollect:1,prefix:[2,3,7],code:[1,2,7],lacu:[],follow:[5,2,3],scp:7,nunc:[],content:[0,1],middl:3,depend:[],fusc:[],elsewher:7,program:[1,2,3],certain:3,vel:[],blindingli:1,spec:3,sourc:[1,2,3,7],everi:[4,3],string:2,fals:[4,2],than:[0,2,3,7],consequat:[],failur:[6,2],veri:[1,6,3],affect:3,risu:[],luctu:[],implement:6,magic:[],level:[4,2],id_rsa:[0,7],list:[1,2,3,4,5,7,8],vivamu:[],item:4,ansible_librari:[],form:[4,3],dotnet:4,saltstack:1,mpdehaan:[],phasellu:[],ornar:[],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],eleifend:[],further:3,even:7,what:[0,2,3],diam:[],favcolor:7,section:[1,2,3],abl:[],nec:[],abbrevi:4,version:[2,7],directori:[2,3],ever:1,method:6,metadata:[],tar:0,suscipit:[],hash:2,facter_hostnam:3,eckersberg:4,here:2,leo:[],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],aliquam:[],scelerisqu:[],great:1,purpos:2,plai:[2,3],ahead:3,precursor:1,larger:[],technolog:1,host:[0,1,2,3,5,6,7],adipisc:[],prior:2,venenati:[],web1:6,permit:4,action:[1,2,3],nulla:[],bob:3,commonli:7,ourselv:3,iaculi:[],via:[0,1],regardless:[4,1,3],dictionari:4,extra:3,modul:[0,1,2,3,6,7],prefer:[],qui:[],unix:3,api:[1,6,2],instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,suit:3,live:0,dehaan:1,call:2,usr:[2,3,7],taken:3,sagitti:[],basi:3,checkout:2,until:0,more:[0,5,2,3,1],desir:3,idempot:[2,3,7],dbserver:5,unneccessari:2,sbin:[2,7],agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],sshd:1,none:[],join:1,ibm:1,module_arg:6,habitass:[],setup:[1,2,7],work:[0,5,7,1],critic:1,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],ero:[],root:[4,1,3],pick:4,control:[1,2,3,7],myapp:7,yamllint:4,ultric:[],process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],othervar:3,knows_oop:4,minimum:3,want:[6,2,3],occur:3,nullam:[],alwai:2,multipl:[5,3,7],newlin:4,puru:[],sit:[],capistrano:1,ping:[0,6,2,1],write:[4,1,2,3,7],how:[0,2,3,4,5,6],etiam:[],instead:2,simpl:[4,1,6,3,7],updat:7,arcu:[],express:[4,1,6,3],referenc:[5,3],clone:0,after:[3,7],usabl:1,befor:[2,3],ohai_:3,mai:[4,0],end:[2,3],data:[4,6,2,7],parallel:[1,7],man:[1,8],repo:[2,7],"short":1,orchestr:[0,1,2,3,5,7],thoug:2,read:[4,0],bootstrap:1,favorit:1,turpi:[],element:[4,2],issu:1,inform:[2,3],mango:4,combin:4,asynchron:[1,3],order:3,talk:[0,3],oper:[1,7],help:1,over:1,move:[2,3],orang:4,becaus:[],elit:4,rpmbuild:0,comma:4,vita:[],still:[],paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,fit:[],yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,1],mail:[1,5],sapien:[],main:3,might:3,easier:[],non:1,"return":[1,6,2],thei:[6,2,3,7],food:4,alist:[],nibh:[],egesta:[],"break":[],framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],config:[1,3],viverra:[],drop:2,datastructur:6,porta:[],separ:4,each:[4,2,3,7],puppet:1,stock:2,nearli:[2,3],mean:[2,3],harm:3,metu:[],michael:1,auctor:[],idea:1,realli:[4,2,3],contributor:[],backport:0,connect:[],our:4,happen:[2,3],todo:[],event:2,out:[4,1,2,3,7],variabl:[2,3,7],"try":[],shown:[],network:1,space:[1,2],reboot:7,bubbl:[2,3],stuff:7,rel:2,internet:1,correct:[4,1,3],red:[1,7],rotat:3,state:[2,3,7],hendrerit:[],ntp:7,contain:[2,3],differ:[7,0,3,1],pub:7,base:[1,3],lab:1,tempu:[],releas:0,org:0,molli:[],bash:[0,7],care:[],vestibulum:[],pyyaml:0,indent:[],maecena:[],could:[6,3],put:[0,7],fqdn:7,thing:[1,3],yum:[],isn:1,principl:[],top:2,first:[7,0,2,3,1],origin:1,softwar:[1,2,7],rang:1,notifi:[1,3,7],obviou:1,onc:[2,3],number:2,yourself:0,hook:2,instruct:0,alreadi:[0,2,3],done:3,fast:1,enim:[],massiv:1,open:[],straight:7,given:[2,7],convent:2,script:[1,6,7],associ:4,licens:[],mkdir:3,system:[0,1,2,3,5,7],messag:6,grow:[],too:1,statement:[1,3],molesti:[],john:4,banana:4,includ:[1,3],shell:[1,2,7],option:[4,8,3,7],welcom:1,tool:[1,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,quam:[],next:3,github:[0,1],kept:3,exactli:[],accumsan:[],serv:[],liter:2,silli:3,target:[1,5],provid:4,sollicitudin:[],heavyweight:[],structur:4,charact:4,project:[0,7,1],architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,ani:[1,6,2,3,7],spent:[],ant:[],download:0,have:[0,3,1],need:[4,0,2,3,7],tellu:[],seek:2,paramiko:0,engin:7,built:0,contact:[0,6,2],note:[5,2,7],also:[0,1,2,3,4,5,7],client:1,massa:[],build:[0,6],indic:2,environ:[],divers:1,pulvinar:[],begin:4,sure:[],unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,who:[],discov:3,most:[4,2],employe:4,regular:3,plan:[],deploi:[1,2,3,7],pair:2,why:1,porttitor:[],simplic:[],don:2,doc:1,later:7,cover:7,doe:[1,2,5],sodal:[],bracket:[4,5],snapshot:2,place:1,wildcard:5,dolor:[],someth:[1,2,7],awesom:[1,3],laoreet:[],blandit:[],verbos:2,syntax:[4,3],bring:3,directli:[2,3,7],raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],permiss:[],hack:1,radic:1,pki:[],trivial:[1,2],varnam:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,just:[7,0,2,3,1],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],written:[1,2,3,7],should:[4,2],consectetur:[],somevar:3,congratul:0,variu:[],local:2,yml:3,long_running_oper:7,contribut:1,variou:[],get:[4,0,3,7,1],financ:1,stop:2,mission:1,bibendum:[],ssl:[],ssh:[0,7],malesuada:[],requir:[0,2,1],uvh:0,nisi:[],bar:5,lame:4,nisl:[],remot:[0,2,3,7],cra:[],orci:[],through:[0,2,1],told:3,where:[1,2,3],wrote:[],view:[1,8],set:[0,2,3],creator:[],elimin:[],see:[0,1,2,3,4,5,7],sed:[],result:[6,2],fail:3,sem:[],extend:1,ntp_server:7,faucibu:[],statu:7,kei:[4,0,2,3],databas:3,modularli:[],discoveri:2,restart:[2,3,7],behind:2,won:7,languag:[4,0,5,2,1],between:4,"import":6,irc:1,altern:7,elementum:[],manpag:[0,8],handful:[],aspir:[],style:2,extens:1,job:[4,7],entir:3,aserv:0,magna:[],webapp:7,timmi:3,addit:[4,1,3],delimit:2,plugin:[],goal:1,against:[1,3,5],tempor:[],etc:[7,0,5,3,1],instanc:3,mani:[3,7],placerat:[],com:[0,6,5],proin:[],sha:2,minut:[],assur:3,simpli:[2,3],author:1,overview:4,format:[1,2,3,4,5,7],inspir:[],header:5,colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],matti:[],dui:[],three:5,pretium:[],multiplay:1,morbi:[],compos:3,been:1,amet:[],json:[1,6,2],much:[1,2],basic:[4,0,5,2,1],ungroup:[],feugiat:[],quickli:[4,1],indenta:4,box:[1,2],derefer:[],fire:1,rubi:[4,2,7],vulput:[],argument:2,understand:[],pellentesqu:[],func:1,atlanta:7,job_statu:7,those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],tortor:[],look:[5,3,7],nequ:[],hoc:[1,3],servic:[1,2,3,7],md5sum:2,batch:[],"while":3,overrid:[],abov:3,ipsum:[],cobbler:1,scene:2,real:0,motd:[3,7],max_client:3,them:[2,3,7],erat:[],conf:[3,7],module_nam:6,ship:2,sever:4,http_port:3,develop:[4,0,1],inventori:[1,2,3,5],minim:0,make:[0,2,3,7],platea:[],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],success:2,fedora:[],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,finish:[],http:2,hostnam:3,again:3,nest:2,painless:1,effect:3,dai:[],fruit:4,user:3,ownership:[],extrem:0,php:7,distutil:[0,1],typic:7,squar:4,exceedingli:[],task:[1,3,7],off:1,scenario:2,mention:3,whole:[],well:[0,2,3],hypothet:3,exampl:[0,1,2,3,4,5,6,7],command:[0,1,2,3,5,7,8],thi:[0,1,2,3,4,5,7],choos:2,dereferenc:3,usual:3,comment:[],protocol:2,execut:[1,2,3],less:[0,1],when:[2,3,7],kill:7,skill:4,simultan:7,ligula:[],previous:[],web:[6,7],versu:1,easi:[1,2],mix:5,trigger:2,hac:[],except:3,littl:1,add:[0,7],other:[7,0,2,3,1],els:1,unlik:3,hat:1,match:3,take:2,bin:[0,2,3,7],applic:[6,3],which:[4,0,5,3,1],ohai:[1,2,3,7],dest:[2,3,7],tincidunt:[],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],specif:[5,6,7],signal:3,manual:[],integ:2,noth:3,edit:0,"boolean":4,either:2,velit:[],popular:1,async:[],page:[4,0,8,1],deal:[],webserv:[5,3,7],suppli:[],some:[0,2],back:3,dead:1,tumblr:[],home:[],server:[1,2,3,7],librari:[],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,ultrici:[],per:6,tracker:1,unit:[],pattern:[1,6,3,5],foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],quit:[],lose:7,usag:[2,7],asciidoc:0,web2:6,step:[2,3],explor:0,repositori:0,output:3,"super":1,aenean:[],simpler:7,comparison:1,about:[4,0,2,3,1],actual:2,gplv3:[],justo:[],libero:[],surround:4,manag:[0,1,2,3,4,5,7],srv:[3,7],quisqu:[],industri:1,own:[1,2,3],"final":4,bounc:2,within:2,automat:2,upgrad:7,down:[],ensur:[3,7],chang:[2,3,7],perl:7,bserver:0,your:[0,1,2,3,4,5,7],praesent:[],git:[0,2,7,1],type:6,fabric:1,wai:[4,0,3,7],interdum:[],transfer:[1,7],dictum:[],support:[2,7],question:1,"long":[1,2,7],happi:1,avail:[0,8,2,3,7],start:[0,1,2,3,4,7],appl:4,wordpress:3,augu:[],lot:[1,3,7],replac:3,"var":[1,3],individu:5,fork:6,head:[2,7],doctyp:[],simplejson:0,eget:[],handler:[1,3,7],lint:4,yeah:3,msg:2,loborti:[],ullamcorp:[],line:[1,2,3,4,7,8],"true":[4,2],tristiqu:[],freenod:1,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,wish:[4,0,5],caller:2,tell:[2,7],planet:1,record:4,below:[],limit:[1,7],suspendiss:[],rerun:3,otherwis:2,problem:[],similar:2,chip:1,facter:[1,2,3,7],curv:1,featur:3,tasti:4,creat:1,lectu:[],doesn:1,repres:4,ansil:[],deferenc:3,file:[0,1,2,3,4,5,7],mauri:[],exist:[1,3],check:[2,7],urna:[],conval:[],echo:0,denot:5,googl:1,excel:1,nam:[],"default":[1,5],likes_emac:4,futur:0,dignissim:[],test:[0,2],you:[0,1,2,3,4,5,7],clojur:[],node:[0,2,7,1],dapibu:[],journei:[],gravida:[],sequenc:1,devop:1,push:3,est:[],log:3,feli:[],aliquet:[],src:[2,3,7],lorem:[],"60k":1,dictumst:[],sphinx:0,rutrum:[],anywher:[],descript:[],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],far:1,serious:[],fermentum:[],hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","API","Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7],code:[1,2,7],myapp:7,perl:7,mcollect:1,prefix:[2,3,7],concept:7,upgrad:7,follow:[5,6,2,3,7],scp:7,content:[0,1],middl:3,elsewher:7,specif:[5,6,3,7],program:[1,2,3],selinux:3,blindingli:1,spec:3,sourc:[1,6,2,3,7],everi:[4,3],string:2,fals:[4,2],failur:[6,2],veri:[1,6,3],affect:3,max_client:3,level:[4,2,3],id_rsa:[0,7],list:[1,2,3,4,5,7,8],item:[4,6],dotnet:4,saltstack:1,servic:[1,2,3,7],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],download:0,further:3,port:7,even:7,what:[0,2,3],favcolor:[3,7],section:[1,2,3],abbrevi:4,version:[2,7],varnam:3,ever:1,method:6,told:3,hash:2,facter_hostnam:3,eckersberg:4,gener:3,here:[2,3,7],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],box:[1,2],great:1,ahead:3,precursor:1,technolog:1,host:[0,1,2,3,5,6,7],prior:2,pick:[4,7],action:[1,2,3],extrem:0,implement:6,commonli:7,ourselv:3,employe:4,via:[0,1],regardless:[4,1,3],extra:3,modul:[0,1,2,3,6,7],put:[0,7],unix:3,"boolean":4,instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,suit:3,live:0,handler:[1,3,7],call:2,usr:[6,2,3,7],msg:[6,2],somevar:3,type:6,tell:[2,3,7],more:[0,5,2,3,1],flat:3,desir:3,idempot:[2,3,7],src:[2,3,7],unneccessari:2,sshd:1,agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:6,join:1,ibm:1,module_arg:6,setup:[1,2,7],work:[7,0,5,3,1],knows_oop:4,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,0,2,3,1],purpos:2,root:[4,1,3],control:[1,2,3,7],want:[6,2,3,7],yamllint:4,process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],critic:1,minimum:3,explor:0,occur:3,contribut:1,alwai:2,multipl:[5,3,7],newlin:4,thoug:2,lame:4,capistrano:1,ping:[0,6,2,1],uptim:6,write:[4,1,2,3,7],how:[0,2,3,4,5,6,7],instead:2,config:[1,3],stock:2,map:3,express:[4,1,6,3],referenc:[5,3],clone:0,after:[3,7],lab:1,befor:[2,3],ohai_:3,mai:[4,0,6],end:[2,3],associ:4,parallel:[1,7],man:[1,8],"short":1,orchestr:[0,1,2,3,5,7],read:[4,0,6],bootstrap:1,explicit:2,element:[4,2],issu:1,inform:[6,2,3],mango:4,combin:4,allow:3,order:3,talk:[0,3],origin:1,help:1,over:[1,7],move:[2,3],orang:4,mission:1,elit:4,rpmbuild:0,comma:4,paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,3,1],mail:[1,5],job_statu:7,main:3,might:3,them:[2,3,7],"return":[1,6,2],thei:[6,2,3,7],food:4,scene:2,framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],simpl:[4,1,6,3,7],drop:2,instruct:0,separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],found:6,updat:7,mean:[2,3],harm:3,michael:1,individu:5,idea:1,realli:[4,2,3],backport:0,facter:[1,2,3,7],our:4,happen:[2,3],event:2,out:[1,2,3,4,6,7],variabl:[2,3,7],network:1,space:[1,2],reboot:7,bubbl:[2,3],rel:2,internet:1,print:6,correct:[4,1,3],red:[1,7],insid:3,advanc:6,ntp:7,given:[2,7],pub:7,base:[1,3],usabl:[1,3],dictionari:4,releas:0,org:0,bash:[0,7],basi:3,pyyaml:0,could:[6,3],fqdn:7,thing:[1,3],place:1,isn:1,assign:[1,3],first:[7,0,2,3,1],oper:[1,7],softwar:[1,2,7],rang:1,notifi:[1,3,7],directli:[2,3,7],onc:[2,3],number:2,yourself:0,hook:2,datastructur:6,alreadi:[0,2,3],puppet:1,construct:6,extend:1,massiv:1,differ:[7,0,3,1],"long":[1,2,7],convent:2,script:[1,6,7],data:[4,6,2,7],top:[2,3],mkdir:3,system:[0,1,2,3,5,7],messag:6,appl:4,too:1,statement:[1,3],john:4,banana:4,iptabl:3,shell:[1,2,7],option:[4,6,3,8,7],welcom:1,tool:[1,6,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,provid:4,github:[0,1],off:1,than:[0,2,3,7],liter:2,silli:3,target:[1,5],remot:[0,2,3,7],structur:4,"final":4,project:[0,7,1],reus:3,architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,favorit:1,ani:[1,6,2,3,7],have:[0,3,1],need:[4,0,2,3,7],seek:2,paramiko:0,imagin:3,engin:7,built:0,note:[5,2,3,7],also:[0,1,2,3,4,5,6,7],client:1,build:[0,6],indic:2,datacent:3,divers:1,begin:4,unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,discov:3,most:[4,2],plai:[2,3],regular:3,deploi:[1,2,3,7],pair:2,why:1,don:2,doc:1,later:7,cover:7,doe:[1,2,5],likes_emac:4,snapshot:2,wildcard:5,pattern:[1,6,3,5],awesom:[1,3],show:[3,7],verbos:2,syntax:[4,3],bring:3,raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],hack:1,radic:1,trivial:[1,2],rotat:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,execut:[1,6,2,3],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],state:[2,3,7],should:[4,2],suppos:3,congratul:0,local:2,yml:3,long_running_oper:7,nearli:[2,3],get:[4,0,3,7,1],financ:1,stop:[2,3],repo:[2,7],obviou:1,ssh:[0,7],requir:[0,2,1],uvh:0,bar:5,sha:2,stuff:7,common:3,contain:[2,3],through:[0,2,1],where:[1,2,3],view:[1,8],set:[0,2,3],see:[0,1,2,3,4,5,7],result:[6,2],fail:[6,3],charact:4,skill:4,best:3,asynchron:[1,3],statu:7,kei:[4,0,2,3],databas:3,someth:[1,2,7],discoveri:2,restart:[2,3,7],behind:2,won:7,between:[4,3],"import":6,irc:1,altern:7,manpag:[0,8],style:2,extens:1,job:[4,7],entir:3,aserv:0,webapp:7,asdescrib:3,timmi:3,addit:[4,1,3],delimit:2,goal:1,against:[1,3,5],etc:[7,0,5,3,1],instanc:3,logic:3,mani:[3,7],com:[0,6,3,5],assur:3,simpli:[2,3],overview:4,header:5,written:[1,2,3,7],colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],multiplay:1,three:5,been:1,json:[1,6,2],much:[1,2],far:1,basic:[4,0,5,2,1],quickli:[4,1],indenta:4,wish:[4,0,6,5],fire:1,rubi:[4,2,7],argument:2,func:1,minim:0,atlanta:[3,7],those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],look:[5,3,7],hoc:[1,3,7],straight:7,md5sum:2,permit:4,defin:3,"while":3,abov:3,exist:[1,3],dehaan:1,motd:[3,7],tar:0,stdout:6,non:1,itself:6,conf:[3,7],module_nam:6,sever:4,http_port:3,develop:[4,0,1],inventori:[1,2,3,5],author:1,make:[0,2,3,7],format:[1,2,3,4,5,7],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,http:2,hostnam:[6,3],denot:5,nest:2,painless:1,effect:3,fruit:4,user:3,php:7,distutil:[0,1],typic:7,squar:4,task:[1,3,7],kept:3,scenario:2,mention:3,setenforc:3,well:[0,2,3],hypothet:3,contact:[0,6,2],command:[0,1,2,3,5,6,7,8],thi:[0,1,2,3,4,5,7],choos:2,programm:6,dereferenc:3,usual:3,protocol:2,just:[7,0,2,3,1],less:[0,1],when:[2,3,7],kill:7,ntp_server:7,simultan:7,languag:[4,0,5,2,1],web:[6,7],versu:1,easi:[1,2],mix:5,except:3,littl:1,add:[0,7],other:[7,0,2,3,1],simplejson:0,els:1,unlik:3,hat:1,match:3,take:2,bin:[0,6,2,3,7],applic:[6,3],which:[4,0,5,3,1],ohai:[1,2,3,7],dest:[2,3,7],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],success:2,signal:3,integ:2,noth:3,edit:0,api:[1,6,2],either:2,lose:7,popular:1,output:3,manag:[0,1,2,3,4,5,7],webserv:[5,3,7],some:[0,2],back:3,dead:1,server:[1,2,3,7],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,definit:3,per:6,tracker:1,exit:6,foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],usag:[2,7],asciidoc:0,web2:6,step:[2,3],web1:6,repositori:0,"super":1,simpler:7,comparison:1,sbin:[2,3,7],actual:2,othervar:3,surround:4,page:[4,0,8,1],srv:[3,7],done:3,industri:1,own:[1,2,3],real:0,bounc:2,within:2,contriv:3,automat:2,compos:3,down:6,ensur:[3,7],chang:[2,3,7],next:3,bserver:0,your:[0,1,2,3,4,5,7],git:[0,2,7,1],fabric:1,wai:[4,0,3,7],transfer:[1,7],support:[2,7],question:1,fast:1,happi:1,avail:[0,2,3,6,7,8],start:[0,1,2,3,4,7],trigger:2,wordpress:3,includ:[1,3],lot:[1,3,7],replac:3,"var":[1,3],fork:6,head:[2,7],form:[4,3],lint:4,yeah:3,taken:3,line:[0,1,2,3,4,5,6,7,8],"true":[4,2,3],freenod:1,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,checkout:2,caller:2,until:0,planet:1,record:4,limit:[1,7],rerun:3,otherwis:2,similar:2,chip:1,curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,cobbler:1,file:[0,1,2,3,4,5,7],bob:3,ship:2,check:[2,7],echo:0,again:3,googl:1,dbserver:[5,3],excel:1,detail:[1,6],"default":[1,5],bracket:[4,5],futur:0,test:[0,2],you:[0,1,2,3,4,5,7],node:[0,2,7,1],sequenc:1,"class":[1,3],devop:1,log:3,deferenc:3,"60k":1,sphinx:0,directori:[2,3],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],push:3,hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file diff --git a/rst/api.rst b/rst/api.rst index a3ddea45951..7eb71cf1f96 100644 --- a/rst/api.rst +++ b/rst/api.rst @@ -1,5 +1,5 @@ -API -``` +Using the Python API +==================== The Python API is very powerful, and is how the ansible CLI and ansible-playbook are implemented. @@ -32,4 +32,42 @@ expressed in the 'ansible-modules' documentation.:: A module can return any type of JSON data it wants, so Ansible can be used as a framework to rapidly build powerful applications and scripts. +Detailed API Example +```````````````````` + +The following script prints out the uptime information for all hosts:: + + #!/usr/bin/python + + import ansible.runner + import sys + + # construct the ansible runner and execute on all hosts + results = ansible.runner.Runner( + pattern='*', forks=10, + module_name='command', module_args=['/usr/bin/uptime'], + ).run() + + if results is None: + print "No hosts found" + sys.exit(1) + + print "UP ***********" + for (hostname, result) in results['contacted'].items(): + if not 'failed' in result: + print "%s >>> %s" % (hostname, result['stdout']) + + print "FAILED *******" + for (hostname, result) in results['contacted'].items(): + if 'failed' in result: + print "%s >>> %s" % (hostname, result['msg']) + + print "DOWN *********" + for (hostname, result) in results['dark'].items(): + print "%s >>> %s" % (hostname, result) + +Advanced programmers may also wish to read the source to ansible itself, for +it uses the Runner() API (with all available options) to implement the +command line tools ``ansible`` and ``ansible-playbook``. + diff --git a/rst/examples.rst b/rst/examples.rst index b061f31eaac..4adeeed94db 100644 --- a/rst/examples.rst +++ b/rst/examples.rst @@ -1,5 +1,9 @@ -Examples -======== +Command Line Examples +===================== + +The following examples show how to use `/usr/bin/ansible` for running ad-hoc tasks. +Start here. For configuration management and deployments, you'll want to pick up on +using `/usr/bin/ansible-playbook` -- the concepts port over directly. .. seealso:: @@ -24,19 +28,6 @@ The -f 10 specifies the usage of 10 simultaneous processes. Note that other than the command module, ansible modules do not work like simple scripts. They make the remote system look like you state, and run the commands neccessary to get it there. This is commonly refered to as 'idempotency'. -Time Limited Background Operations -`````````````````````````````````` - -Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won't lose track. Polling support is pending in the command line.:: - - ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff" - ansible all -n job_status -a jid=123456789 - -Any module other than 'copy' or 'template' can be backgrounded. Typically you'll be backgrounding shell -commands or software upgrades only. - -After the time limit (in seconds) runs out (-B), the process on the remote nodes will be killed. - File Transfer & Templating `````````````````````````` @@ -74,4 +65,17 @@ Alternatively, restart a service on all webservers:: ansible webservers -m service name=httpd state=restarted +Time Limited Background Operations +`````````````````````````````````` + +Long running operations can be backgrounded, and their status can be checked on later. The same job ID is given to the same task on all hosts, so you won't lose track. Polling support is pending in the command line.:: + + ansible all -B 3600 -a "/usr/bin/long_running_operation --do-stuff" + ansible all -n job_status -a jid=123456789 + +Any module other than 'copy' or 'template' can be backgrounded. Typically you'll be backgrounding shell +commands or software upgrades only. + +After the time limit (in seconds) runs out (-B), the process on the remote nodes will be killed. + diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 71d87d3ee03..890768c5894 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -47,8 +47,7 @@ back on the webservers group, etc:: Hosts line `````````` -The hosts line is a list of one or more groups or host patterns, seperated by colons, as -described in the 'patterns' documentation. This is just like the first parameter to /usr/bin/ansible. +The hosts line is a list of one or more groups or host patterns, seperated by colons, asdescribed in the 'patterns' documentation. This is just like the first parameter to /usr/bin/ansible. Vars section ```````````` @@ -140,6 +139,58 @@ in a wordpress.yml file, and use it like so:: In addition to the explicitly passed in parameters, all variables from the vars section are also available. +The format of an included list of tasks or handlers looks just like a flat list of tasks. Here +is an example of what base.yml might look like:: + + --- + - name: no selinux + action: command /usr/sbin/setenforce 0 + - name: no iptables + action: service name=iptables state=stopped + - name: this is just to show variables work here, favcolor={{ favcolor }} + action: command /bin/true + +As you can see above, variables in include files work just like they do in the main file. +Including a variable in the name of a task is a contrived example, you could also +pass them to the action command line or use them inside a template file. + +Note that include statements are only usable from the top level playbook file. +At this time, includes can not include other includes. + +Using Includes To Assign Classes of Systems +``````````````````````````````````````````` + +Include files are best used to reuse logic between playbooks. You could imagine +a playbook describing your entire infrastructure like this:: + + --- + - hosts: atlanta-webservers + vars: + datacenter: atlanta + tasks: + - include: base.yml + - include: webservers.yml database=db.atlanta.com + handlers: + - include: generic-handlers.yml + - hosts: atlanta-dbservers + vars: + datacenter: atlanta + tasks: + - include: base.yml + - include: dbservers.yml + handlers: + - include: generic-handlers.yml + +There is one (or more) play defined for each group of systems, and each play maps +each group includes one or more 'class definitions' telling the systems what they +are supposed to do or be. + +Using a common handlers file could allow one task in 'webservers' to define 'restart apache', +and it could be reused between multiple plays. + +Variables like 'database' above can be used in templates referenced from the +configuration file to generate machine specific variables. + Asynchronous Actions and Polling ```````````````````````````````` From f3a0eb4b236b4d697bd28122a4d16cafbfdb90d8 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 9 Mar 2012 07:43:06 -0500 Subject: [PATCH 020/416] Docs build --- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/searchindex.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index f1676121f63..83ffc3628c4 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index de6d091b1fd..4ed86baa077 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index dab3740bd3b..972bc24aab6 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/searchindex.js b/html/searchindex.js index 918c86baa63..e8f431232da 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7],code:[1,2,7],myapp:7,perl:7,mcollect:1,prefix:[2,3,7],concept:7,upgrad:7,follow:[5,6,2,3,7],scp:7,content:[0,1],middl:3,elsewher:7,specif:[5,6,3,7],program:[1,2,3],selinux:3,blindingli:1,spec:3,sourc:[1,6,2,3,7],everi:[4,3],string:2,fals:[4,2],failur:[6,2],veri:[1,6,3],affect:3,max_client:3,level:[4,2,3],id_rsa:[0,7],list:[1,2,3,4,5,7,8],item:[4,6],dotnet:4,saltstack:1,servic:[1,2,3,7],alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],download:0,further:3,port:7,even:7,what:[0,2,3],favcolor:[3,7],section:[1,2,3],abbrevi:4,version:[2,7],varnam:3,ever:1,method:6,told:3,hash:2,facter_hostnam:3,eckersberg:4,gener:3,here:[2,3,7],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],box:[1,2],great:1,ahead:3,precursor:1,technolog:1,host:[0,1,2,3,5,6,7],prior:2,pick:[4,7],action:[1,2,3],extrem:0,implement:6,commonli:7,ourselv:3,employe:4,via:[0,1],regardless:[4,1,3],extra:3,modul:[0,1,2,3,6,7],put:[0,7],unix:3,"boolean":4,instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,suit:3,live:0,handler:[1,3,7],call:2,usr:[6,2,3,7],msg:[6,2],somevar:3,type:6,tell:[2,3,7],more:[0,5,2,3,1],flat:3,desir:3,idempot:[2,3,7],src:[2,3,7],unneccessari:2,sshd:1,agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:6,join:1,ibm:1,module_arg:6,setup:[1,2,7],work:[7,0,5,3,1],knows_oop:4,remain:1,tag:[0,2],can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,0,2,3,1],purpos:2,root:[4,1,3],control:[1,2,3,7],want:[6,2,3,7],yamllint:4,process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],critic:1,minimum:3,explor:0,occur:3,contribut:1,alwai:2,multipl:[5,3,7],newlin:4,thoug:2,lame:4,capistrano:1,ping:[0,6,2,1],uptim:6,write:[4,1,2,3,7],how:[0,2,3,4,5,6,7],instead:2,config:[1,3],stock:2,map:3,express:[4,1,6,3],referenc:[5,3],clone:0,after:[3,7],lab:1,befor:[2,3],ohai_:3,mai:[4,0,6],end:[2,3],associ:4,parallel:[1,7],man:[1,8],"short":1,orchestr:[0,1,2,3,5,7],read:[4,0,6],bootstrap:1,explicit:2,element:[4,2],issu:1,inform:[6,2,3],mango:4,combin:4,allow:3,order:3,talk:[0,3],origin:1,help:1,over:[1,7],move:[2,3],orang:4,mission:1,elit:4,rpmbuild:0,comma:4,paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,3,1],mail:[1,5],job_statu:7,main:3,might:3,them:[2,3,7],"return":[1,6,2],thei:[6,2,3,7],food:4,scene:2,framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],simpl:[4,1,6,3,7],drop:2,instruct:0,separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],found:6,updat:7,mean:[2,3],harm:3,michael:1,individu:5,idea:1,realli:[4,2,3],backport:0,facter:[1,2,3,7],our:4,happen:[2,3],event:2,out:[1,2,3,4,6,7],variabl:[2,3,7],network:1,space:[1,2],reboot:7,bubbl:[2,3],rel:2,internet:1,print:6,correct:[4,1,3],red:[1,7],insid:3,advanc:6,ntp:7,given:[2,7],pub:7,base:[1,3],usabl:[1,3],dictionari:4,releas:0,org:0,bash:[0,7],basi:3,pyyaml:0,could:[6,3],fqdn:7,thing:[1,3],place:1,isn:1,assign:[1,3],first:[7,0,2,3,1],oper:[1,7],softwar:[1,2,7],rang:1,notifi:[1,3,7],directli:[2,3,7],onc:[2,3],number:2,yourself:0,hook:2,datastructur:6,alreadi:[0,2,3],puppet:1,construct:6,extend:1,massiv:1,differ:[7,0,3,1],"long":[1,2,7],convent:2,script:[1,6,7],data:[4,6,2,7],top:[2,3],mkdir:3,system:[0,1,2,3,5,7],messag:6,appl:4,too:1,statement:[1,3],john:4,banana:4,iptabl:3,shell:[1,2,7],option:[4,6,3,8,7],welcom:1,tool:[1,6,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,provid:4,github:[0,1],off:1,than:[0,2,3,7],liter:2,silli:3,target:[1,5],remot:[0,2,3,7],structur:4,"final":4,project:[0,7,1],reus:3,architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,favorit:1,ani:[1,6,2,3,7],have:[0,3,1],need:[4,0,2,3,7],seek:2,paramiko:0,imagin:3,engin:7,built:0,note:[5,2,3,7],also:[0,1,2,3,4,5,6,7],client:1,build:[0,6],indic:2,datacent:3,divers:1,begin:4,unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,discov:3,most:[4,2],plai:[2,3],regular:3,deploi:[1,2,3,7],pair:2,why:1,don:2,doc:1,later:7,cover:7,doe:[1,2,5],likes_emac:4,snapshot:2,wildcard:5,pattern:[1,6,3,5],awesom:[1,3],show:[3,7],verbos:2,syntax:[4,3],bring:3,raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],hack:1,radic:1,trivial:[1,2],rotat:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,execut:[1,6,2,3],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],state:[2,3,7],should:[4,2],suppos:3,congratul:0,local:2,yml:3,long_running_oper:7,nearli:[2,3],get:[4,0,3,7,1],financ:1,stop:[2,3],repo:[2,7],obviou:1,ssh:[0,7],requir:[0,2,1],uvh:0,bar:5,sha:2,stuff:7,common:3,contain:[2,3],through:[0,2,1],where:[1,2,3],view:[1,8],set:[0,2,3],see:[0,1,2,3,4,5,7],result:[6,2],fail:[6,3],charact:4,skill:4,best:3,asynchron:[1,3],statu:7,kei:[4,0,2,3],databas:3,someth:[1,2,7],discoveri:2,restart:[2,3,7],behind:2,won:7,between:[4,3],"import":6,irc:1,altern:7,manpag:[0,8],style:2,extens:1,job:[4,7],entir:3,aserv:0,webapp:7,asdescrib:3,timmi:3,addit:[4,1,3],delimit:2,goal:1,against:[1,3,5],etc:[7,0,5,3,1],instanc:3,logic:3,mani:[3,7],com:[0,6,3,5],assur:3,simpli:[2,3],overview:4,header:5,written:[1,2,3,7],colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],multiplay:1,three:5,been:1,json:[1,6,2],much:[1,2],far:1,basic:[4,0,5,2,1],quickli:[4,1],indenta:4,wish:[4,0,6,5],fire:1,rubi:[4,2,7],argument:2,func:1,minim:0,atlanta:[3,7],those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],look:[5,3,7],hoc:[1,3,7],straight:7,md5sum:2,permit:4,defin:3,"while":3,abov:3,exist:[1,3],dehaan:1,motd:[3,7],tar:0,stdout:6,non:1,itself:6,conf:[3,7],module_nam:6,sever:4,http_port:3,develop:[4,0,1],inventori:[1,2,3,5],author:1,make:[0,2,3,7],format:[1,2,3,4,5,7],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,http:2,hostnam:[6,3],denot:5,nest:2,painless:1,effect:3,fruit:4,user:3,php:7,distutil:[0,1],typic:7,squar:4,task:[1,3,7],kept:3,scenario:2,mention:3,setenforc:3,well:[0,2,3],hypothet:3,contact:[0,6,2],command:[0,1,2,3,5,6,7,8],thi:[0,1,2,3,4,5,7],choos:2,programm:6,dereferenc:3,usual:3,protocol:2,just:[7,0,2,3,1],less:[0,1],when:[2,3,7],kill:7,ntp_server:7,simultan:7,languag:[4,0,5,2,1],web:[6,7],versu:1,easi:[1,2],mix:5,except:3,littl:1,add:[0,7],other:[7,0,2,3,1],simplejson:0,els:1,unlik:3,hat:1,match:3,take:2,bin:[0,6,2,3,7],applic:[6,3],which:[4,0,5,3,1],ohai:[1,2,3,7],dest:[2,3,7],dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],success:2,signal:3,integ:2,noth:3,edit:0,api:[1,6,2],either:2,lose:7,popular:1,output:3,manag:[0,1,2,3,4,5,7],webserv:[5,3,7],some:[0,2],back:3,dead:1,server:[1,2,3,7],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,definit:3,per:6,tracker:1,exit:6,foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],usag:[2,7],asciidoc:0,web2:6,step:[2,3],web1:6,repositori:0,"super":1,simpler:7,comparison:1,sbin:[2,3,7],actual:2,othervar:3,surround:4,page:[4,0,8,1],srv:[3,7],done:3,industri:1,own:[1,2,3],real:0,bounc:2,within:2,contriv:3,automat:2,compos:3,down:6,ensur:[3,7],chang:[2,3,7],next:3,bserver:0,your:[0,1,2,3,4,5,7],git:[0,2,7,1],fabric:1,wai:[4,0,3,7],transfer:[1,7],support:[2,7],question:1,fast:1,happi:1,avail:[0,2,3,6,7,8],start:[0,1,2,3,4,7],trigger:2,wordpress:3,includ:[1,3],lot:[1,3,7],replac:3,"var":[1,3],fork:6,head:[2,7],form:[4,3],lint:4,yeah:3,taken:3,line:[0,1,2,3,4,5,6,7,8],"true":[4,2,3],freenod:1,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,checkout:2,caller:2,until:0,planet:1,record:4,limit:[1,7],rerun:3,otherwis:2,similar:2,chip:1,curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,cobbler:1,file:[0,1,2,3,4,5,7],bob:3,ship:2,check:[2,7],echo:0,again:3,googl:1,dbserver:[5,3],excel:1,detail:[1,6],"default":[1,5],bracket:[4,5],futur:0,test:[0,2],you:[0,1,2,3,4,5,7],node:[0,2,7,1],sequenc:1,"class":[1,3],devop:1,log:3,deferenc:3,"60k":1,sphinx:0,directori:[2,3],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],push:3,hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7],concept:7,mcollect:1,prefix:[2,3,7],code:[1,2,7],follow:[5,6,2,3,7],scp:7,bubbl:[2,3],middl:3,elsewher:7,program:[1,2,3],selinux:3,blindingli:1,spec:3,sourc:[1,6,2,3,7],everi:[4,3],string:2,fals:[4,2],failur:[6,2],veri:[1,6,3],affect:3,level:[4,2,3],id_rsa:[0,7],list:[1,2,3,4,5,7,8],item:[4,6],form:[4,3],dotnet:4,saltstack:1,straight:7,alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],download:0,further:3,port:7,even:7,what:[0,2,3],favcolor:[3,7],section:[1,2,3],abbrevi:4,version:[2,7],varnam:3,ever:1,method:6,told:3,tar:0,hash:2,abov:3,conf:[3,7],eckersberg:4,gener:3,here:[2,3,7],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],box:[1,2],great:1,ahead:3,precursor:1,technolog:1,step:[2,3],prior:2,pick:[4,7],action:[1,2,3],extrem:0,implement:6,commonli:7,ourselv:3,employe:4,via:[0,1],regardless:[4,1,3],extra:3,modul:[0,1,2,3,6,7],releas:0,unix:3,"boolean":4,instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,live:0,handler:[1,3,7],call:2,usr:[6,2,3,7],msg:[6,2],suppos:3,checkout:2,tell:[2,3,7],more:[0,5,2,3,1],flat:3,desir:3,idempot:[2,3,7],comparison:1,unneccessari:2,sshd:1,agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:6,join:1,ibm:1,module_arg:6,dest:[2,3,7],setup:[1,2,7],work:[7,0,5,3,1],knows_oop:4,remain:1,minimum:3,can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,0,2,3,1],purpos:2,root:[4,1,3],control:[1,2,3,7],want:[6,2,3,7],yamllint:4,process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],critic:1,liter:2,explor:0,occur:3,nearli:[2,3],alwai:2,multipl:[5,3,7],newlin:4,thoug:2,lame:4,capistrano:1,ping:[0,6,2,1],uptim:6,write:[4,1,2,3,7],how:[0,2,3,4,5,6,7],instead:2,simpl:[4,1,6,3,7],updat:7,map:3,financ:1,referenc:[5,3],clone:0,after:[3,7],usabl:[1,3],befor:[2,3],ohai_:3,mai:[4,0,6],end:[2,3],data:[4,6,2,7],parallel:[1,7],man:[1,8],github:[0,1],orchestr:[0,1,2,3,5,7],bootstrap:1,favorit:1,element:[4,2],issu:1,inform:[6,2,3],mango:4,combin:4,allow:3,order:3,talk:[0,3],oper:[1,7],help:1,over:[1,7],move:[2,3],orang:4,mission:1,elit:4,rpmbuild:0,comma:4,paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,3,1],mail:[1,5],job_statu:7,main:3,might:3,them:[2,3,7],"return":[1,6,2],thei:[6,2,3,7],food:4,contriv:3,scene:2,framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],config:[1,3],drop:2,datastructur:6,separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],found:6,stock:2,mean:[2,3],harm:3,michael:1,individu:5,idea:1,realli:[4,2,3],backport:0,facter:[1,2,3,7],our:4,happen:[2,3],event:2,out:[1,2,3,4,6,7],variabl:[2,3,7],network:1,space:[1,2],reboot:7,content:[0,1],rel:2,internet:1,print:6,correct:[4,1,3],red:[1,7],painless:1,insid:3,advanc:6,ntp:7,given:[2,7],pub:7,base:[1,3],lab:1,dictionari:4,put:[0,7],org:0,bash:[0,7],basi:3,pyyaml:0,could:[6,3],fqdn:7,thing:[1,3],place:1,isn:1,assign:[1,3],first:[7,0,2,3,1],origin:1,softwar:[1,2,7],rang:1,notifi:[1,3,7],directli:[2,3,7],onc:[2,3],number:2,yourself:0,hook:2,instruct:0,alreadi:[0,2,3],puppet:1,construct:6,extend:1,massiv:1,differ:[7,0,3,1],convent:2,script:[1,6,7],associ:4,top:[2,3],mkdir:3,system:[0,1,2,3,5,7],messag:6,inventori:[1,2,3,5],too:1,statement:[1,3],john:4,"final":4,iptabl:3,shell:[1,2,7],option:[4,6,3,8,7],tool:[1,6,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,sha:2,"short":1,kept:3,than:[0,2,3,7],silli:3,target:[1,5],remot:[0,2,3,7],structur:4,banana:4,project:[0,7,1],reus:3,architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,ani:[1,6,2,3,7],have:[0,3,1],need:[4,0,2,3,7],seek:2,paramiko:0,imagin:3,engin:7,built:0,note:[5,2,3,7],also:[0,1,2,3,4,5,6,7],client:1,build:[0,6],indic:2,datacent:3,divers:1,begin:4,unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,discov:3,most:[4,2],plai:[2,3],regular:3,deploi:[1,2,3,7],pair:2,why:1,don:2,doc:1,later:7,cover:7,doe:[1,2,5],likes_emac:4,snapshot:2,wildcard:5,databas:3,awesom:[1,3],show:[3,7],verbos:2,syntax:[4,3],bring:3,raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],hack:1,radic:1,trivial:[1,2],rotat:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,just:[7,0,2,3,1],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],behind:2,should:[4,2],somevar:3,freenod:1,local:2,yml:3,long_running_oper:7,contribut:1,get:[4,0,3,7,1],express:[4,1,6,3],stop:[2,3],repo:[2,7],next:3,obviou:1,ssh:[0,7],requir:[0,2,1],uvh:0,bar:5,provid:4,stuff:7,common:3,contain:[2,3],through:[0,2,1],where:[1,2,3],view:[1,8],set:[0,2,3],see:[0,1,2,3,4,5,7],result:[6,2],fail:[6,3],charact:4,ntp_server:7,best:3,planet:1,statu:7,manpag:[0,8],pattern:[1,6,3,5],someth:[1,2,7],discoveri:2,restart:[2,3,7],state:[2,3,7],won:7,between:[4,3],"import":6,irc:1,altern:7,kei:[4,0,2,3],style:2,extens:1,job:[4,7],entir:3,aserv:0,webapp:7,asdescrib:3,timmi:3,addit:[4,1,3],delimit:2,goal:1,against:[1,3,5],etc:[7,0,5,3,1],instanc:3,logic:3,mani:[3,7],com:[0,6,3,5],assur:3,simpli:[2,3],author:1,overview:4,header:5,written:[1,2,3,7],colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],three:5,multiplay:1,compos:3,been:1,json:[1,6,2],much:[1,2],basic:[4,0,5,2,1],quickli:[4,1],indenta:4,fire:1,rubi:[4,2,7],argument:2,func:1,atlanta:[3,7],those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],look:[5,3,7],replac:3,hoc:[1,3,7],servic:[1,2,3,7],md5sum:2,defin:3,"while":3,facter_hostnam:3,cobbler:1,dehaan:1,motd:[3,7],max_client:3,stdout:6,non:1,itself:6,myapp:7,module_nam:6,sever:4,http_port:3,develop:[4,0,1],welcom:1,minim:0,make:[0,2,3,7],ohai:[1,2,3,7],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],success:2,document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,http:2,hostnam:[6,3],again:3,nest:2,permit:4,effect:3,fruit:4,user:3,php:7,distutil:[0,1],typic:7,squar:4,task:[1,3,7],off:1,scenario:2,mention:3,setenforc:3,well:[0,2,3],hypothet:3,contact:[0,6,2],command:[0,1,2,3,5,6,7,8],thi:[0,1,2,3,4,5,7],choos:2,programm:6,dereferenc:3,usual:3,protocol:2,execut:[1,6,2,3],less:[0,1],excel:1,kill:7,skill:4,simultan:7,languag:[4,0,5,2,1],web:[6,7],versu:1,easi:[1,2],mix:5,trigger:2,except:3,littl:1,add:[0,7],els:1,unlik:3,hat:1,match:3,take:2,bin:[0,6,2,3,7],applic:[6,3],which:[4,0,5,3,1],format:[1,2,3,4,5,7],read:[4,0,6],fast:1,dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],specif:[5,6,3,7],signal:3,integ:2,noth:3,edit:0,api:[1,6,2],either:2,lose:7,popular:1,output:3,manag:[0,1,2,3,4,5,7],webserv:[5,3,7],some:[0,2],back:3,dead:1,server:[1,2,3,7],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,definit:3,per:6,tracker:1,exit:6,foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],usag:[2,7],devop:1,web2:6,host:[0,1,2,3,5,6,7],web1:6,repositori:0,"super":1,simpler:7,src:[2,3,7],sbin:[2,3,7],actual:2,othervar:3,surround:4,page:[4,0,8,1],srv:[3,7],done:3,industri:1,own:[1,2,3],real:0,bounc:2,within:2,tag:[0,2],automat:2,upgrad:7,down:6,ensur:[3,7],chang:[2,3,7],perl:7,bserver:0,your:[0,1,2,3,4,5,7],git:[0,2,7,1],type:6,fabric:1,wai:[4,0,3,7],transfer:[1,7],support:[2,7],question:1,"long":[1,2,7],happi:1,avail:[0,2,3,6,7,8],start:[0,1,2,3,4,7],appl:4,wordpress:3,includ:[1,3],lot:[1,3,7],suit:3,"var":[1,3],fork:6,head:[2,7],simplejson:0,lint:4,yeah:3,taken:3,line:[0,1,2,3,4,5,6,7,8],"true":[4,2,3],congratul:0,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,wish:[4,0,6,5],caller:2,until:0,asynchron:[1,3],record:4,limit:[1,7],rerun:3,otherwis:2,similar:2,chip:1,curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,exist:[1,3],file:[0,1,2,3,4,5,7],bob:3,ship:2,check:[2,7],bracket:[4,5],echo:0,denot:5,googl:1,dbserver:[5,3],when:[2,3,7],detail:[1,6],"default":[1,5],other:[7,0,2,3,1],futur:0,test:[0,2],you:[0,1,2,3,4,5,7],node:[0,2,7,1],sequenc:1,"class":[1,3],asciidoc:0,push:3,log:3,deferenc:3,"60k":1,sphinx:0,directori:[2,3],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],far:1,hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file From f25b39b7ceea03cf2700a1bf5d4977da515b06db Mon Sep 17 00:00:00 2001 From: Tim Bielawa Date: Fri, 9 Mar 2012 11:44:14 -0500 Subject: [PATCH 021/416] Switch to the 'Sphinx Bootstrap' Theme: https://github.com/ryan-roemer/sphinx-bootstrap-theme Fix some rst related formatting. --- _themes/bootstrap/globaltoc.html | 5 + _themes/bootstrap/layout.html | 126 + _themes/bootstrap/localtoc.html | 5 + _themes/bootstrap/relations.html | 8 + _themes/bootstrap/searchbox.html | 7 + _themes/bootstrap/sourcelink.html | 4 + .../bootstrap/static/bootstrap-dropdown.js | 55 + .../bootstrap/static/bootstrap-scrollspy.js | 107 + .../bootstrap/static/bootstrap-sphinx.css_t | 24 + _themes/bootstrap/static/bootstrap.css | 2467 +++++++++++++++++ _themes/bootstrap/theme.conf | 5 + conf.py | 5 + html/YAMLScripts.html | 215 +- html/_sources/patterns.txt | 13 +- html/_sources/playbooks.txt | 155 +- html/_static/basic.css | 9 +- html/_static/bootstrap-dropdown.js | 55 + html/_static/bootstrap-scrollspy.js | 107 + html/_static/bootstrap-sphinx.css | 15 + html/_static/bootstrap.css | 2467 +++++++++++++++++ html/_static/searchtools.js | 13 +- html/api.html | 213 +- html/examples.html | 223 +- html/genindex.html | 176 +- html/gettingstarted.html | 229 +- html/index.html | 214 +- html/man.html | 202 +- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/modules.html | 233 +- html/objects.inv | Bin 222 -> 265 bytes html/patterns.html | 232 +- html/playbooks.html | 395 +-- html/search.html | 154 +- html/searchindex.js | 2 +- rst/patterns.rst | 13 +- rst/playbooks.rst | 156 +- 38 files changed, 7225 insertions(+), 1090 deletions(-) create mode 100644 _themes/bootstrap/globaltoc.html create mode 100644 _themes/bootstrap/layout.html create mode 100644 _themes/bootstrap/localtoc.html create mode 100644 _themes/bootstrap/relations.html create mode 100644 _themes/bootstrap/searchbox.html create mode 100644 _themes/bootstrap/sourcelink.html create mode 100644 _themes/bootstrap/static/bootstrap-dropdown.js create mode 100644 _themes/bootstrap/static/bootstrap-scrollspy.js create mode 100644 _themes/bootstrap/static/bootstrap-sphinx.css_t create mode 100644 _themes/bootstrap/static/bootstrap.css create mode 100644 _themes/bootstrap/theme.conf create mode 100644 html/_static/bootstrap-dropdown.js create mode 100644 html/_static/bootstrap-scrollspy.js create mode 100644 html/_static/bootstrap-sphinx.css create mode 100644 html/_static/bootstrap.css diff --git a/_themes/bootstrap/globaltoc.html b/_themes/bootstrap/globaltoc.html new file mode 100644 index 00000000000..936d3b9e002 --- /dev/null +++ b/_themes/bootstrap/globaltoc.html @@ -0,0 +1,5 @@ + diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html new file mode 100644 index 00000000000..7dd30999140 --- /dev/null +++ b/_themes/bootstrap/layout.html @@ -0,0 +1,126 @@ +{% extends "basic/layout.html" %} +{% set script_files = script_files + ['_static/bootstrap-dropdown.js', '_static/bootstrap-scrollspy.js'] %} +{% set css_files = ['_static/bootstrap.css', '_static/bootstrap-sphinx.css'] + css_files %} + +{# Sidebar: Rework into our Boostrap nav section. #} +{% macro navBar() %} +
      +
      +
      + {{ shorttitle|e }} + + +
      +
      +
      +{% endmacro %} + +{%- block extrahead %} + +{% endblock %} + +{% block header %}{{ navBar() }}{% endblock %} + +{# Silence the sidebar's, relbar's #} +{% block sidebar1 %}{% endblock %} +{% block sidebar2 %}{% endblock %} +{% block relbar1 %}{% endblock %} +{% block relbar2 %}{% endblock %} + +{%- block content %} +
      + {% block body %} {% endblock %} +
      +{%- endblock %} + +{%- block footer %} +
      +
      +

      Back to top

      +

      + {%- if show_copyright %} + {%- if hasdoc('copyright') %} + {% trans path=pathto('copyright'), copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
      + {%- else %} + {% trans copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
      + {%- endif %} + {%- endif %} + {%- if last_updated %} + {% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
      + {%- endif %} + {%- if show_sphinx %} + {% trans sphinx_version=sphinx_version|e %}Created using Sphinx {{ sphinx_version }}.{% endtrans %}
      + {%- endif %} +

      +
      +
      +{%- endblock %} + diff --git a/_themes/bootstrap/localtoc.html b/_themes/bootstrap/localtoc.html new file mode 100644 index 00000000000..6f1bc8433fc --- /dev/null +++ b/_themes/bootstrap/localtoc.html @@ -0,0 +1,5 @@ + diff --git a/_themes/bootstrap/relations.html b/_themes/bootstrap/relations.html new file mode 100644 index 00000000000..b3df68e3b54 --- /dev/null +++ b/_themes/bootstrap/relations.html @@ -0,0 +1,8 @@ +{%- if prev %} +
    • {{ "«"|safe }} {{ prev.title }}
    • +{%- endif %} +{%- if next %} +
    • {{ next.title }} {{ "»"|safe }}
    • +{%- endif %} diff --git a/_themes/bootstrap/searchbox.html b/_themes/bootstrap/searchbox.html new file mode 100644 index 00000000000..3063dde3d1a --- /dev/null +++ b/_themes/bootstrap/searchbox.html @@ -0,0 +1,7 @@ +{%- if pagename != "search" %} +
      + + + +
      +{%- endif %} diff --git a/_themes/bootstrap/sourcelink.html b/_themes/bootstrap/sourcelink.html new file mode 100644 index 00000000000..21ae2d8fef8 --- /dev/null +++ b/_themes/bootstrap/sourcelink.html @@ -0,0 +1,4 @@ +{%- if show_source and has_source and sourcename %} +
    • {{ _('Source') }}
    • +{%- endif %} diff --git a/_themes/bootstrap/static/bootstrap-dropdown.js b/_themes/bootstrap/static/bootstrap-dropdown.js new file mode 100644 index 00000000000..fda6da597e0 --- /dev/null +++ b/_themes/bootstrap/static/bootstrap-dropdown.js @@ -0,0 +1,55 @@ +/* ============================================================ + * bootstrap-dropdown.js v1.4.0 + * http://twitter.github.com/bootstrap/javascript.html#dropdown + * ============================================================ + * Copyright 2011 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================ */ + + +!function( $ ){ + + "use strict" + + /* DROPDOWN PLUGIN DEFINITION + * ========================== */ + + $.fn.dropdown = function ( selector ) { + return this.each(function () { + $(this).delegate(selector || d, 'click', function (e) { + var li = $(this).parent('li') + , isActive = li.hasClass('open') + + clearMenus() + !isActive && li.toggleClass('open') + return false + }) + }) + } + + /* APPLY TO STANDARD DROPDOWN ELEMENTS + * =================================== */ + + var d = 'a.menu, .dropdown-toggle' + + function clearMenus() { + $(d).parent('li').removeClass('open') + } + + $(function () { + $('html').bind("click", clearMenus) + $('body').dropdown( '[data-dropdown] a.menu, [data-dropdown] .dropdown-toggle' ) + }) + +}( window.jQuery || window.ender ); diff --git a/_themes/bootstrap/static/bootstrap-scrollspy.js b/_themes/bootstrap/static/bootstrap-scrollspy.js new file mode 100644 index 00000000000..efbc4329605 --- /dev/null +++ b/_themes/bootstrap/static/bootstrap-scrollspy.js @@ -0,0 +1,107 @@ +/* ============================================================= + * bootstrap-scrollspy.js v1.4.0 + * http://twitter.github.com/bootstrap/javascript.html#scrollspy + * ============================================================= + * Copyright 2011 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================== */ + + +!function ( $ ) { + + "use strict" + + var $window = $(window) + + function ScrollSpy( topbar, selector ) { + var processScroll = $.proxy(this.processScroll, this) + this.$topbar = $(topbar) + this.selector = selector || 'li > a' + this.refresh() + this.$topbar.delegate(this.selector, 'click', processScroll) + $window.scroll(processScroll) + this.processScroll() + } + + ScrollSpy.prototype = { + + refresh: function () { + this.targets = this.$topbar.find(this.selector).map(function () { + var href = $(this).attr('href') + return /^#\w/.test(href) && $(href).length ? href : null + }) + + this.offsets = $.map(this.targets, function (id) { + return $(id).offset().top + }) + } + + , processScroll: function () { + var scrollTop = $window.scrollTop() + 10 + , offsets = this.offsets + , targets = this.targets + , activeTarget = this.activeTarget + , i + + for (i = offsets.length; i--;) { + activeTarget != targets[i] + && scrollTop >= offsets[i] + && (!offsets[i + 1] || scrollTop <= offsets[i + 1]) + && this.activateButton( targets[i] ) + } + } + + , activateButton: function (target) { + this.activeTarget = target + + this.$topbar + .find(this.selector).parent('.active') + .removeClass('active') + + this.$topbar + .find(this.selector + '[href="' + target + '"]') + .parent('li') + .addClass('active') + } + + } + + /* SCROLLSPY PLUGIN DEFINITION + * =========================== */ + + $.fn.scrollSpy = function( options ) { + var scrollspy = this.data('scrollspy') + + if (!scrollspy) { + return this.each(function () { + $(this).data('scrollspy', new ScrollSpy( this, options )) + }) + } + + if ( options === true ) { + return scrollspy + } + + if ( typeof options == 'string' ) { + scrollspy[options]() + } + + return this + } + + $(document).ready(function () { + $('body').scrollSpy('[data-scrollspy] li > a') + }) + +}( window.jQuery || window.ender ); \ No newline at end of file diff --git a/_themes/bootstrap/static/bootstrap-sphinx.css_t b/_themes/bootstrap/static/bootstrap-sphinx.css_t new file mode 100644 index 00000000000..044eb4f2066 --- /dev/null +++ b/_themes/bootstrap/static/bootstrap-sphinx.css_t @@ -0,0 +1,24 @@ +/* +* bootstrap-sphinx.css +* ~~~~~~~~~~~~~~~~~~~~ +* +* Sphinx stylesheet -- Twitter Bootstrap theme. +*/ + +body { + padding-top: 42px; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +{%- block sidebarlogo %} + {%- if logo %} +.topbar h3 a, .topbar .brand { + background: transparent url("{{ logo }}") no-repeat 22px 3px; + padding-left: 62px; +} + {%- endif %} +{%- endblock %} diff --git a/_themes/bootstrap/static/bootstrap.css b/_themes/bootstrap/static/bootstrap.css new file mode 100644 index 00000000000..e5aa166089b --- /dev/null +++ b/_themes/bootstrap/static/bootstrap.css @@ -0,0 +1,2467 @@ +/*! + * Bootstrap v1.4.0 + * + * Copyright 2011 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + * Date: Sun Nov 20 21:42:29 PST 2011 + */ +/* Reset.less + * Props to Eric Meyer (meyerweb.com) for his CSS reset file. We're using an adapted version here that cuts out some of the reset HTML elements we will never need here (i.e., dfn, samp, etc). + * ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */ +html, body { + margin: 0; + padding: 0; +} +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +cite, +code, +del, +dfn, +em, +img, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +dd, +dl, +dt, +li, +ol, +ul, +fieldset, +form, +label, +legend, +button, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td { + margin: 0; + padding: 0; + border: 0; + font-weight: normal; + font-style: normal; + font-size: 100%; + line-height: 1; + font-family: inherit; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +ol, ul { + list-style: none; +} +q:before, +q:after, +blockquote:before, +blockquote:after { + content: ""; +} +html { + overflow-y: scroll; + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +a:focus { + outline: thin dotted; +} +a:hover, a:active { + outline: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section { + display: block; +} +audio, canvas, video { + display: inline-block; + *display: inline; + *zoom: 1; +} +audio:not([controls]) { + display: none; +} +sub, sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; + -ms-interpolation-mode: bicubic; +} +button, +input, +select, +textarea { + font-size: 100%; + margin: 0; + vertical-align: baseline; + *vertical-align: middle; +} +button, input { + line-height: normal; + *overflow: visible; +} +button::-moz-focus-inner, input::-moz-focus-inner { + border: 0; + padding: 0; +} +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} +input[type="search"] { + -webkit-appearance: textfield; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +textarea { + overflow: auto; + vertical-align: top; +} +/* Variables.less + * Variables to customize the look and feel of Bootstrap + * ----------------------------------------------------- */ +/* Mixins.less + * Snippets of reusable CSS to develop faster and keep code readable + * ----------------------------------------------------------------- */ +/* + * Scaffolding + * Basic and global styles for generating a grid system, structural layout, and page templates + * ------------------------------------------------------------------------------------------- */ +body { + background-color: #ffffff; + margin: 0; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: 18px; + color: #404040; +} +.container { + width: 940px; + margin-left: auto; + margin-right: auto; + zoom: 1; +} +.container:before, .container:after { + display: table; + content: ""; + zoom: 1; +} +.container:after { + clear: both; +} +.container-fluid { + position: relative; + min-width: 940px; + padding-left: 20px; + padding-right: 20px; + zoom: 1; +} +.container-fluid:before, .container-fluid:after { + display: table; + content: ""; + zoom: 1; +} +.container-fluid:after { + clear: both; +} +.container-fluid > .sidebar { + position: absolute; + top: 0; + left: 20px; + width: 220px; +} +.container-fluid > .content { + margin-left: 240px; +} +a { + color: #0069d6; + text-decoration: none; + line-height: inherit; + font-weight: inherit; +} +a:hover { + color: #00438a; + text-decoration: underline; +} +.pull-right { + float: right; +} +.pull-left { + float: left; +} +.hide { + display: none; +} +.show { + display: block; +} +.row { + zoom: 1; + margin-left: -20px; +} +.row:before, .row:after { + display: table; + content: ""; + zoom: 1; +} +.row:after { + clear: both; +} +.row > [class*="span"] { + display: inline; + float: left; + margin-left: 20px; +} +.span1 { + width: 40px; +} +.span2 { + width: 100px; +} +.span3 { + width: 160px; +} +.span4 { + width: 220px; +} +.span5 { + width: 280px; +} +.span6 { + width: 340px; +} +.span7 { + width: 400px; +} +.span8 { + width: 460px; +} +.span9 { + width: 520px; +} +.span10 { + width: 580px; +} +.span11 { + width: 640px; +} +.span12 { + width: 700px; +} +.span13 { + width: 760px; +} +.span14 { + width: 820px; +} +.span15 { + width: 880px; +} +.span16 { + width: 940px; +} +.span17 { + width: 1000px; +} +.span18 { + width: 1060px; +} +.span19 { + width: 1120px; +} +.span20 { + width: 1180px; +} +.span21 { + width: 1240px; +} +.span22 { + width: 1300px; +} +.span23 { + width: 1360px; +} +.span24 { + width: 1420px; +} +.row > .offset1 { + margin-left: 80px; +} +.row > .offset2 { + margin-left: 140px; +} +.row > .offset3 { + margin-left: 200px; +} +.row > .offset4 { + margin-left: 260px; +} +.row > .offset5 { + margin-left: 320px; +} +.row > .offset6 { + margin-left: 380px; +} +.row > .offset7 { + margin-left: 440px; +} +.row > .offset8 { + margin-left: 500px; +} +.row > .offset9 { + margin-left: 560px; +} +.row > .offset10 { + margin-left: 620px; +} +.row > .offset11 { + margin-left: 680px; +} +.row > .offset12 { + margin-left: 740px; +} +.span-one-third { + width: 300px; +} +.span-two-thirds { + width: 620px; +} +.row > .offset-one-third { + margin-left: 340px; +} +.row > .offset-two-thirds { + margin-left: 660px; +} +/* Typography.less + * Headings, body text, lists, code, and more for a versatile and durable typography system + * ---------------------------------------------------------------------------------------- */ +p { + font-size: 13px; + font-weight: normal; + line-height: 18px; + margin-bottom: 9px; +} +p small { + font-size: 11px; + color: #bfbfbf; +} +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: bold; + color: #404040; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small { + color: #bfbfbf; +} +h1 { + margin-bottom: 18px; + font-size: 30px; + line-height: 36px; +} +h1 small { + font-size: 18px; +} +h2 { + font-size: 24px; + line-height: 36px; +} +h2 small { + font-size: 14px; +} +h3, +h4, +h5, +h6 { + line-height: 36px; +} +h3 { + font-size: 18px; +} +h3 small { + font-size: 14px; +} +h4 { + font-size: 16px; +} +h4 small { + font-size: 12px; +} +h5 { + font-size: 14px; +} +h6 { + font-size: 13px; + color: #bfbfbf; + text-transform: uppercase; +} +ul, ol { + margin: 0 0 18px 25px; +} +ul ul, +ul ol, +ol ol, +ol ul { + margin-bottom: 0; +} +ul { + list-style: disc; +} +ol { + list-style: decimal; +} +li { + line-height: 18px; + color: #808080; +} +ul.unstyled { + list-style: none; + margin-left: 0; +} +dl { + margin-bottom: 18px; +} +dl dt, dl dd { + line-height: 18px; +} +dl dt { + font-weight: bold; +} +dl dd { + margin-left: 9px; +} +hr { + margin: 20px 0 19px; + border: 0; + border-bottom: 1px solid #eee; +} +strong { + font-style: inherit; + font-weight: bold; +} +em { + font-style: italic; + font-weight: inherit; + line-height: inherit; +} +.muted { + color: #bfbfbf; +} +blockquote { + margin-bottom: 18px; + border-left: 5px solid #eee; + padding-left: 15px; +} +blockquote p { + font-size: 14px; + font-weight: 300; + line-height: 18px; + margin-bottom: 0; +} +blockquote small { + display: block; + font-size: 12px; + font-weight: 300; + line-height: 18px; + color: #bfbfbf; +} +blockquote small:before { + content: '\2014 \00A0'; +} +address { + display: block; + line-height: 18px; + margin-bottom: 18px; +} +code, pre { + padding: 0 3px 2px; + font-family: Monaco, Andale Mono, Courier New, monospace; + font-size: 12px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +code { + background-color: #fee9cc; + color: rgba(0, 0, 0, 0.75); + padding: 1px 3px; +} +pre { + background-color: #f5f5f5; + display: block; + padding: 8.5px; + margin: 0 0 18px; + line-height: 18px; + font-size: 12px; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} +/* Forms.less + * Base styles for various input types, form layouts, and states + * ------------------------------------------------------------- */ +form { + margin-bottom: 18px; +} +fieldset { + margin-bottom: 18px; + padding-top: 18px; +} +fieldset legend { + display: block; + padding-left: 150px; + font-size: 19.5px; + line-height: 1; + color: #404040; + *padding: 0 0 5px 145px; + /* IE6-7 */ + + *line-height: 1.5; + /* IE6-7 */ + +} +form .clearfix { + margin-bottom: 18px; + zoom: 1; +} +form .clearfix:before, form .clearfix:after { + display: table; + content: ""; + zoom: 1; +} +form .clearfix:after { + clear: both; +} +label, +input, +select, +textarea { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: normal; +} +label { + padding-top: 6px; + font-size: 13px; + line-height: 18px; + float: left; + width: 130px; + text-align: right; + color: #404040; +} +form .input { + margin-left: 150px; +} +input[type=checkbox], input[type=radio] { + cursor: pointer; +} +input, +textarea, +select, +.uneditable-input { + display: inline-block; + width: 210px; + height: 18px; + padding: 4px; + font-size: 13px; + line-height: 18px; + color: #808080; + border: 1px solid #ccc; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +select { + padding: initial; +} +input[type=checkbox], input[type=radio] { + width: auto; + height: auto; + padding: 0; + margin: 3px 0; + *margin-top: 0; + /* IE6-7 */ + + line-height: normal; + border: none; +} +input[type=file] { + background-color: #ffffff; + padding: initial; + border: initial; + line-height: initial; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +input[type=button], input[type=reset], input[type=submit] { + width: auto; + height: auto; +} +select, input[type=file] { + height: 27px; + *height: auto; + line-height: 27px; + *margin-top: 4px; + /* For IE7, add top margin to align select with labels */ + +} +select[multiple] { + height: inherit; + background-color: #ffffff; +} +textarea { + height: auto; +} +.uneditable-input { + background-color: #ffffff; + display: block; + border-color: #eee; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + cursor: not-allowed; +} +:-moz-placeholder { + color: #bfbfbf; +} +::-webkit-input-placeholder { + color: #bfbfbf; +} +input, textarea { + -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; + -moz-transition: border linear 0.2s, box-shadow linear 0.2s; + -ms-transition: border linear 0.2s, box-shadow linear 0.2s; + -o-transition: border linear 0.2s, box-shadow linear 0.2s; + transition: border linear 0.2s, box-shadow linear 0.2s; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); +} +input:focus, textarea:focus { + outline: 0; + border-color: rgba(82, 168, 236, 0.8); + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); +} +input[type=file]:focus, input[type=checkbox]:focus, select:focus { + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + outline: 1px dotted #666; +} +form .clearfix.error > label, form .clearfix.error .help-block, form .clearfix.error .help-inline { + color: #b94a48; +} +form .clearfix.error input, form .clearfix.error textarea { + color: #b94a48; + border-color: #ee5f5b; +} +form .clearfix.error input:focus, form .clearfix.error textarea:focus { + border-color: #e9322d; + -webkit-box-shadow: 0 0 6px #f8b9b7; + -moz-box-shadow: 0 0 6px #f8b9b7; + box-shadow: 0 0 6px #f8b9b7; +} +form .clearfix.error .input-prepend .add-on, form .clearfix.error .input-append .add-on { + color: #b94a48; + background-color: #fce6e6; + border-color: #b94a48; +} +form .clearfix.warning > label, form .clearfix.warning .help-block, form .clearfix.warning .help-inline { + color: #c09853; +} +form .clearfix.warning input, form .clearfix.warning textarea { + color: #c09853; + border-color: #ccae64; +} +form .clearfix.warning input:focus, form .clearfix.warning textarea:focus { + border-color: #be9a3f; + -webkit-box-shadow: 0 0 6px #e5d6b1; + -moz-box-shadow: 0 0 6px #e5d6b1; + box-shadow: 0 0 6px #e5d6b1; +} +form .clearfix.warning .input-prepend .add-on, form .clearfix.warning .input-append .add-on { + color: #c09853; + background-color: #d2b877; + border-color: #c09853; +} +form .clearfix.success > label, form .clearfix.success .help-block, form .clearfix.success .help-inline { + color: #468847; +} +form .clearfix.success input, form .clearfix.success textarea { + color: #468847; + border-color: #57a957; +} +form .clearfix.success input:focus, form .clearfix.success textarea:focus { + border-color: #458845; + -webkit-box-shadow: 0 0 6px #9acc9a; + -moz-box-shadow: 0 0 6px #9acc9a; + box-shadow: 0 0 6px #9acc9a; +} +form .clearfix.success .input-prepend .add-on, form .clearfix.success .input-append .add-on { + color: #468847; + background-color: #bcddbc; + border-color: #468847; +} +.input-mini, +input.mini, +textarea.mini, +select.mini { + width: 60px; +} +.input-small, +input.small, +textarea.small, +select.small { + width: 90px; +} +.input-medium, +input.medium, +textarea.medium, +select.medium { + width: 150px; +} +.input-large, +input.large, +textarea.large, +select.large { + width: 210px; +} +.input-xlarge, +input.xlarge, +textarea.xlarge, +select.xlarge { + width: 270px; +} +.input-xxlarge, +input.xxlarge, +textarea.xxlarge, +select.xxlarge { + width: 530px; +} +textarea.xxlarge { + overflow-y: auto; +} +input.span1, textarea.span1 { + display: inline-block; + float: none; + width: 30px; + margin-left: 0; +} +input.span2, textarea.span2 { + display: inline-block; + float: none; + width: 90px; + margin-left: 0; +} +input.span3, textarea.span3 { + display: inline-block; + float: none; + width: 150px; + margin-left: 0; +} +input.span4, textarea.span4 { + display: inline-block; + float: none; + width: 210px; + margin-left: 0; +} +input.span5, textarea.span5 { + display: inline-block; + float: none; + width: 270px; + margin-left: 0; +} +input.span6, textarea.span6 { + display: inline-block; + float: none; + width: 330px; + margin-left: 0; +} +input.span7, textarea.span7 { + display: inline-block; + float: none; + width: 390px; + margin-left: 0; +} +input.span8, textarea.span8 { + display: inline-block; + float: none; + width: 450px; + margin-left: 0; +} +input.span9, textarea.span9 { + display: inline-block; + float: none; + width: 510px; + margin-left: 0; +} +input.span10, textarea.span10 { + display: inline-block; + float: none; + width: 570px; + margin-left: 0; +} +input.span11, textarea.span11 { + display: inline-block; + float: none; + width: 630px; + margin-left: 0; +} +input.span12, textarea.span12 { + display: inline-block; + float: none; + width: 690px; + margin-left: 0; +} +input.span13, textarea.span13 { + display: inline-block; + float: none; + width: 750px; + margin-left: 0; +} +input.span14, textarea.span14 { + display: inline-block; + float: none; + width: 810px; + margin-left: 0; +} +input.span15, textarea.span15 { + display: inline-block; + float: none; + width: 870px; + margin-left: 0; +} +input.span16, textarea.span16 { + display: inline-block; + float: none; + width: 930px; + margin-left: 0; +} +input[disabled], +select[disabled], +textarea[disabled], +input[readonly], +select[readonly], +textarea[readonly] { + background-color: #f5f5f5; + border-color: #ddd; + cursor: not-allowed; +} +.actions { + background: #f5f5f5; + margin-top: 18px; + margin-bottom: 18px; + padding: 17px 20px 18px 150px; + border-top: 1px solid #ddd; + -webkit-border-radius: 0 0 3px 3px; + -moz-border-radius: 0 0 3px 3px; + border-radius: 0 0 3px 3px; +} +.actions .secondary-action { + float: right; +} +.actions .secondary-action a { + line-height: 30px; +} +.actions .secondary-action a:hover { + text-decoration: underline; +} +.help-inline, .help-block { + font-size: 13px; + line-height: 18px; + color: #bfbfbf; +} +.help-inline { + padding-left: 5px; + *position: relative; + /* IE6-7 */ + + *top: -5px; + /* IE6-7 */ + +} +.help-block { + display: block; + max-width: 600px; +} +.inline-inputs { + color: #808080; +} +.inline-inputs span { + padding: 0 2px 0 1px; +} +.input-prepend input, .input-append input { + -webkit-border-radius: 0 3px 3px 0; + -moz-border-radius: 0 3px 3px 0; + border-radius: 0 3px 3px 0; +} +.input-prepend .add-on, .input-append .add-on { + position: relative; + background: #f5f5f5; + border: 1px solid #ccc; + z-index: 2; + float: left; + display: block; + width: auto; + min-width: 16px; + height: 18px; + padding: 4px 4px 4px 5px; + margin-right: -1px; + font-weight: normal; + line-height: 18px; + color: #bfbfbf; + text-align: center; + text-shadow: 0 1px 0 #ffffff; + -webkit-border-radius: 3px 0 0 3px; + -moz-border-radius: 3px 0 0 3px; + border-radius: 3px 0 0 3px; +} +.input-prepend .active, .input-append .active { + background: #a9dba9; + border-color: #46a546; +} +.input-prepend .add-on { + *margin-top: 1px; + /* IE6-7 */ + +} +.input-append input { + float: left; + -webkit-border-radius: 3px 0 0 3px; + -moz-border-radius: 3px 0 0 3px; + border-radius: 3px 0 0 3px; +} +.input-append .add-on { + -webkit-border-radius: 0 3px 3px 0; + -moz-border-radius: 0 3px 3px 0; + border-radius: 0 3px 3px 0; + margin-right: 0; + margin-left: -1px; +} +.inputs-list { + margin: 0 0 5px; + width: 100%; +} +.inputs-list li { + display: block; + padding: 0; + width: 100%; +} +.inputs-list label { + display: block; + float: none; + width: auto; + padding: 0; + margin-left: 20px; + line-height: 18px; + text-align: left; + white-space: normal; +} +.inputs-list label strong { + color: #808080; +} +.inputs-list label small { + font-size: 11px; + font-weight: normal; +} +.inputs-list .inputs-list { + margin-left: 25px; + margin-bottom: 10px; + padding-top: 0; +} +.inputs-list:first-child { + padding-top: 6px; +} +.inputs-list li + li { + padding-top: 2px; +} +.inputs-list input[type=radio], .inputs-list input[type=checkbox] { + margin-bottom: 0; + margin-left: -20px; + float: left; +} +.form-stacked { + padding-left: 20px; +} +.form-stacked fieldset { + padding-top: 9px; +} +.form-stacked legend { + padding-left: 0; +} +.form-stacked label { + display: block; + float: none; + width: auto; + font-weight: bold; + text-align: left; + line-height: 20px; + padding-top: 0; +} +.form-stacked .clearfix { + margin-bottom: 9px; +} +.form-stacked .clearfix div.input { + margin-left: 0; +} +.form-stacked .inputs-list { + margin-bottom: 0; +} +.form-stacked .inputs-list li { + padding-top: 0; +} +.form-stacked .inputs-list li label { + font-weight: normal; + padding-top: 0; +} +.form-stacked div.clearfix.error { + padding-top: 10px; + padding-bottom: 10px; + padding-left: 10px; + margin-top: 0; + margin-left: -10px; +} +.form-stacked .actions { + margin-left: -20px; + padding-left: 20px; +} +/* + * Tables.less + * Tables for, you guessed it, tabular data + * ---------------------------------------- */ +table { + width: 100%; + margin-bottom: 18px; + padding: 0; + font-size: 13px; + border-collapse: collapse; +} +table th, table td { + padding: 10px 10px 9px; + line-height: 18px; + text-align: left; +} +table th { + padding-top: 9px; + font-weight: bold; + vertical-align: middle; +} +table td { + vertical-align: top; + border-top: 1px solid #ddd; +} +table tbody th { + border-top: 1px solid #ddd; + vertical-align: top; +} +.condensed-table th, .condensed-table td { + padding: 5px 5px 4px; +} +.bordered-table { + border: 1px solid #ddd; + border-collapse: separate; + *border-collapse: collapse; + /* IE7, collapse table to remove spacing */ + + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.bordered-table th + th, .bordered-table td + td, .bordered-table th + td { + border-left: 1px solid #ddd; +} +.bordered-table thead tr:first-child th:first-child, .bordered-table tbody tr:first-child td:first-child { + -webkit-border-radius: 4px 0 0 0; + -moz-border-radius: 4px 0 0 0; + border-radius: 4px 0 0 0; +} +.bordered-table thead tr:first-child th:last-child, .bordered-table tbody tr:first-child td:last-child { + -webkit-border-radius: 0 4px 0 0; + -moz-border-radius: 0 4px 0 0; + border-radius: 0 4px 0 0; +} +.bordered-table tbody tr:last-child td:first-child { + -webkit-border-radius: 0 0 0 4px; + -moz-border-radius: 0 0 0 4px; + border-radius: 0 0 0 4px; +} +.bordered-table tbody tr:last-child td:last-child { + -webkit-border-radius: 0 0 4px 0; + -moz-border-radius: 0 0 4px 0; + border-radius: 0 0 4px 0; +} +table .span1 { + width: 20px; +} +table .span2 { + width: 60px; +} +table .span3 { + width: 100px; +} +table .span4 { + width: 140px; +} +table .span5 { + width: 180px; +} +table .span6 { + width: 220px; +} +table .span7 { + width: 260px; +} +table .span8 { + width: 300px; +} +table .span9 { + width: 340px; +} +table .span10 { + width: 380px; +} +table .span11 { + width: 420px; +} +table .span12 { + width: 460px; +} +table .span13 { + width: 500px; +} +table .span14 { + width: 540px; +} +table .span15 { + width: 580px; +} +table .span16 { + width: 620px; +} +.zebra-striped tbody tr:nth-child(odd) td, .zebra-striped tbody tr:nth-child(odd) th { + background-color: #f9f9f9; +} +.zebra-striped tbody tr:hover td, .zebra-striped tbody tr:hover th { + background-color: #f5f5f5; +} +table .header { + cursor: pointer; +} +table .header:after { + content: ""; + float: right; + margin-top: 7px; + border-width: 0 4px 4px; + border-style: solid; + border-color: #000 transparent; + visibility: hidden; +} +table .headerSortUp, table .headerSortDown { + background-color: rgba(141, 192, 219, 0.25); + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); +} +table .header:hover:after { + visibility: visible; +} +table .headerSortDown:after, table .headerSortDown:hover:after { + visibility: visible; + filter: alpha(opacity=60); + -khtml-opacity: 0.6; + -moz-opacity: 0.6; + opacity: 0.6; +} +table .headerSortUp:after { + border-bottom: none; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 4px solid #000; + visibility: visible; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + filter: alpha(opacity=60); + -khtml-opacity: 0.6; + -moz-opacity: 0.6; + opacity: 0.6; +} +table .blue { + color: #049cdb; + border-bottom-color: #049cdb; +} +table .headerSortUp.blue, table .headerSortDown.blue { + background-color: #ade6fe; +} +table .green { + color: #46a546; + border-bottom-color: #46a546; +} +table .headerSortUp.green, table .headerSortDown.green { + background-color: #cdeacd; +} +table .red { + color: #9d261d; + border-bottom-color: #9d261d; +} +table .headerSortUp.red, table .headerSortDown.red { + background-color: #f4c8c5; +} +table .yellow { + color: #ffc40d; + border-bottom-color: #ffc40d; +} +table .headerSortUp.yellow, table .headerSortDown.yellow { + background-color: #fff6d9; +} +table .orange { + color: #f89406; + border-bottom-color: #f89406; +} +table .headerSortUp.orange, table .headerSortDown.orange { + background-color: #fee9cc; +} +table .purple { + color: #7a43b6; + border-bottom-color: #7a43b6; +} +table .headerSortUp.purple, table .headerSortDown.purple { + background-color: #e2d5f0; +} +/* Patterns.less + * Repeatable UI elements outside the base styles provided from the scaffolding + * ---------------------------------------------------------------------------- */ +.topbar { + height: 40px; + position: fixed; + top: 0; + left: 0; + right: 0; + z-index: 10000; + overflow: visible; +} +.topbar a { + color: #bfbfbf; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.topbar h3 a:hover, .topbar .brand:hover, .topbar ul .active > a { + background-color: #333; + background-color: rgba(255, 255, 255, 0.05); + color: #ffffff; + text-decoration: none; +} +.topbar h3 { + position: relative; +} +.topbar h3 a, .topbar .brand { + float: left; + display: block; + padding: 8px 20px 12px; + margin-left: -20px; + color: #ffffff; + font-size: 20px; + font-weight: 200; + line-height: 1; +} +.topbar p { + margin: 0; + line-height: 40px; +} +.topbar p a:hover { + background-color: transparent; + color: #ffffff; +} +.topbar form { + float: left; + margin: 5px 0 0 0; + position: relative; + filter: alpha(opacity=100); + -khtml-opacity: 1; + -moz-opacity: 1; + opacity: 1; +} +.topbar form.pull-right { + float: right; +} +.topbar input { + background-color: #444; + background-color: rgba(255, 255, 255, 0.3); + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: normal; + font-weight: 13px; + line-height: 1; + padding: 4px 9px; + color: #ffffff; + color: rgba(255, 255, 255, 0.75); + border: 1px solid #111; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25); + -webkit-transition: none; + -moz-transition: none; + -ms-transition: none; + -o-transition: none; + transition: none; +} +.topbar input:-moz-placeholder { + color: #e6e6e6; +} +.topbar input::-webkit-input-placeholder { + color: #e6e6e6; +} +.topbar input:hover { + background-color: #bfbfbf; + background-color: rgba(255, 255, 255, 0.5); + color: #ffffff; +} +.topbar input:focus, .topbar input.focused { + outline: 0; + background-color: #ffffff; + color: #404040; + text-shadow: 0 1px 0 #ffffff; + border: 0; + padding: 5px 10px; + -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); +} +.topbar-inner, .topbar .fill { + background-color: #222; + background-color: #222222; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#333333), to(#222222)); + background-image: -moz-linear-gradient(top, #333333, #222222); + background-image: -ms-linear-gradient(top, #333333, #222222); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #333333), color-stop(100%, #222222)); + background-image: -webkit-linear-gradient(top, #333333, #222222); + background-image: -o-linear-gradient(top, #333333, #222222); + background-image: linear-gradient(top, #333333, #222222); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0); + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1); +} +.topbar div > ul, .nav { + display: block; + float: left; + margin: 0 10px 0 0; + position: relative; + left: 0; +} +.topbar div > ul > li, .nav > li { + display: block; + float: left; +} +.topbar div > ul a, .nav a { + display: block; + float: none; + padding: 10px 10px 11px; + line-height: 19px; + text-decoration: none; +} +.topbar div > ul a:hover, .nav a:hover { + color: #ffffff; + text-decoration: none; +} +.topbar div > ul .active > a, .nav .active > a { + background-color: #222; + background-color: rgba(0, 0, 0, 0.5); +} +.topbar div > ul.secondary-nav, .nav.secondary-nav { + float: right; + margin-left: 10px; + margin-right: 0; +} +.topbar div > ul.secondary-nav .menu-dropdown, +.nav.secondary-nav .menu-dropdown, +.topbar div > ul.secondary-nav .dropdown-menu, +.nav.secondary-nav .dropdown-menu { + right: 0; + border: 0; +} +.topbar div > ul a.menu:hover, +.nav a.menu:hover, +.topbar div > ul li.open .menu, +.nav li.open .menu, +.topbar div > ul .dropdown-toggle:hover, +.nav .dropdown-toggle:hover, +.topbar div > ul .dropdown.open .dropdown-toggle, +.nav .dropdown.open .dropdown-toggle { + background: #444; + background: rgba(255, 255, 255, 0.05); +} +.topbar div > ul .menu-dropdown, +.nav .menu-dropdown, +.topbar div > ul .dropdown-menu, +.nav .dropdown-menu { + background-color: #333; +} +.topbar div > ul .menu-dropdown a.menu, +.nav .menu-dropdown a.menu, +.topbar div > ul .dropdown-menu a.menu, +.nav .dropdown-menu a.menu, +.topbar div > ul .menu-dropdown .dropdown-toggle, +.nav .menu-dropdown .dropdown-toggle, +.topbar div > ul .dropdown-menu .dropdown-toggle, +.nav .dropdown-menu .dropdown-toggle { + color: #ffffff; +} +.topbar div > ul .menu-dropdown a.menu.open, +.nav .menu-dropdown a.menu.open, +.topbar div > ul .dropdown-menu a.menu.open, +.nav .dropdown-menu a.menu.open, +.topbar div > ul .menu-dropdown .dropdown-toggle.open, +.nav .menu-dropdown .dropdown-toggle.open, +.topbar div > ul .dropdown-menu .dropdown-toggle.open, +.nav .dropdown-menu .dropdown-toggle.open { + background: #444; + background: rgba(255, 255, 255, 0.05); +} +.topbar div > ul .menu-dropdown li a, +.nav .menu-dropdown li a, +.topbar div > ul .dropdown-menu li a, +.nav .dropdown-menu li a { + color: #999; + text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5); +} +.topbar div > ul .menu-dropdown li a:hover, +.nav .menu-dropdown li a:hover, +.topbar div > ul .dropdown-menu li a:hover, +.nav .dropdown-menu li a:hover { + background-color: #191919; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#292929), to(#191919)); + background-image: -moz-linear-gradient(top, #292929, #191919); + background-image: -ms-linear-gradient(top, #292929, #191919); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #292929), color-stop(100%, #191919)); + background-image: -webkit-linear-gradient(top, #292929, #191919); + background-image: -o-linear-gradient(top, #292929, #191919); + background-image: linear-gradient(top, #292929, #191919); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#292929', endColorstr='#191919', GradientType=0); + color: #ffffff; +} +.topbar div > ul .menu-dropdown .active a, +.nav .menu-dropdown .active a, +.topbar div > ul .dropdown-menu .active a, +.nav .dropdown-menu .active a { + color: #ffffff; +} +.topbar div > ul .menu-dropdown .divider, +.nav .menu-dropdown .divider, +.topbar div > ul .dropdown-menu .divider, +.nav .dropdown-menu .divider { + background-color: #222; + border-color: #444; +} +.topbar ul .menu-dropdown li a, .topbar ul .dropdown-menu li a { + padding: 4px 15px; +} +li.menu, .dropdown { + position: relative; +} +a.menu:after, .dropdown-toggle:after { + width: 0; + height: 0; + display: inline-block; + content: "↓"; + text-indent: -99999px; + vertical-align: top; + margin-top: 8px; + margin-left: 4px; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 4px solid #ffffff; + filter: alpha(opacity=50); + -khtml-opacity: 0.5; + -moz-opacity: 0.5; + opacity: 0.5; +} +.menu-dropdown, .dropdown-menu { + background-color: #ffffff; + float: left; + display: none; + position: absolute; + top: 40px; + z-index: 900; + min-width: 160px; + max-width: 220px; + _width: 160px; + margin-left: 0; + margin-right: 0; + padding: 6px 0; + zoom: 1; + border-color: #999; + border-color: rgba(0, 0, 0, 0.2); + border-style: solid; + border-width: 0 1px 1px; + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.menu-dropdown li, .dropdown-menu li { + float: none; + display: block; + background-color: none; +} +.menu-dropdown .divider, .dropdown-menu .divider { + height: 1px; + margin: 5px 0; + overflow: hidden; + background-color: #eee; + border-bottom: 1px solid #ffffff; +} +.topbar .dropdown-menu a, .dropdown-menu a { + display: block; + padding: 4px 15px; + clear: both; + font-weight: normal; + line-height: 18px; + color: #808080; + text-shadow: 0 1px 0 #ffffff; +} +.topbar .dropdown-menu a:hover, +.dropdown-menu a:hover, +.topbar .dropdown-menu a.hover, +.dropdown-menu a.hover { + background-color: #dddddd; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#eeeeee), to(#dddddd)); + background-image: -moz-linear-gradient(top, #eeeeee, #dddddd); + background-image: -ms-linear-gradient(top, #eeeeee, #dddddd); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, #dddddd)); + background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd); + background-image: -o-linear-gradient(top, #eeeeee, #dddddd); + background-image: linear-gradient(top, #eeeeee, #dddddd); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#dddddd', GradientType=0); + color: #404040; + text-decoration: none; + -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025); + -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025); + box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025); +} +.open .menu, +.dropdown.open .menu, +.open .dropdown-toggle, +.dropdown.open .dropdown-toggle { + color: #ffffff; + background: #ccc; + background: rgba(0, 0, 0, 0.3); +} +.open .menu-dropdown, +.dropdown.open .menu-dropdown, +.open .dropdown-menu, +.dropdown.open .dropdown-menu { + display: block; +} +.tabs, .pills { + margin: 0 0 18px; + padding: 0; + list-style: none; + zoom: 1; +} +.tabs:before, +.pills:before, +.tabs:after, +.pills:after { + display: table; + content: ""; + zoom: 1; +} +.tabs:after, .pills:after { + clear: both; +} +.tabs > li, .pills > li { + float: left; +} +.tabs > li > a, .pills > li > a { + display: block; +} +.tabs { + border-color: #ddd; + border-style: solid; + border-width: 0 0 1px; +} +.tabs > li { + position: relative; + margin-bottom: -1px; +} +.tabs > li > a { + padding: 0 15px; + margin-right: 2px; + line-height: 34px; + border: 1px solid transparent; + -webkit-border-radius: 4px 4px 0 0; + -moz-border-radius: 4px 4px 0 0; + border-radius: 4px 4px 0 0; +} +.tabs > li > a:hover { + text-decoration: none; + background-color: #eee; + border-color: #eee #eee #ddd; +} +.tabs .active > a, .tabs .active > a:hover { + color: #808080; + background-color: #ffffff; + border: 1px solid #ddd; + border-bottom-color: transparent; + cursor: default; +} +.tabs .menu-dropdown, .tabs .dropdown-menu { + top: 35px; + border-width: 1px; + -webkit-border-radius: 0 6px 6px 6px; + -moz-border-radius: 0 6px 6px 6px; + border-radius: 0 6px 6px 6px; +} +.tabs a.menu:after, .tabs .dropdown-toggle:after { + border-top-color: #999; + margin-top: 15px; + margin-left: 5px; +} +.tabs li.open.menu .menu, .tabs .open.dropdown .dropdown-toggle { + border-color: #999; +} +.tabs li.open a.menu:after, .tabs .dropdown.open .dropdown-toggle:after { + border-top-color: #555; +} +.pills a { + margin: 5px 3px 5px 0; + padding: 0 15px; + line-height: 30px; + text-shadow: 0 1px 1px #ffffff; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} +.pills a:hover { + color: #ffffff; + text-decoration: none; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); + background-color: #00438a; +} +.pills .active a { + color: #ffffff; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); + background-color: #0069d6; +} +.pills-vertical > li { + float: none; +} +.tab-content > .tab-pane, +.pill-content > .pill-pane, +.tab-content > div, +.pill-content > div { + display: none; +} +.tab-content > .active, .pill-content > .active { + display: block; +} +.breadcrumb { + padding: 7px 14px; + margin: 0 0 18px; + background-color: #f5f5f5; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#ffffff), to(#f5f5f5)); + background-image: -moz-linear-gradient(top, #ffffff, #f5f5f5); + background-image: -ms-linear-gradient(top, #ffffff, #f5f5f5); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #f5f5f5)); + background-image: -webkit-linear-gradient(top, #ffffff, #f5f5f5); + background-image: -o-linear-gradient(top, #ffffff, #f5f5f5); + background-image: linear-gradient(top, #ffffff, #f5f5f5); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0); + border: 1px solid #ddd; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + -webkit-box-shadow: inset 0 1px 0 #ffffff; + -moz-box-shadow: inset 0 1px 0 #ffffff; + box-shadow: inset 0 1px 0 #ffffff; +} +.breadcrumb li { + display: inline; + text-shadow: 0 1px 0 #ffffff; +} +.breadcrumb .divider { + padding: 0 5px; + color: #bfbfbf; +} +.breadcrumb .active a { + color: #404040; +} +.hero-unit { + background-color: #f5f5f5; + margin-bottom: 30px; + padding: 60px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.hero-unit h1 { + margin-bottom: 0; + font-size: 60px; + line-height: 1; + letter-spacing: -1px; +} +.hero-unit p { + font-size: 18px; + font-weight: 200; + line-height: 27px; +} +footer { + margin-top: 17px; + padding-top: 17px; + border-top: 1px solid #eee; +} +.page-header { + margin-bottom: 17px; + border-bottom: 1px solid #ddd; + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} +.page-header h1 { + margin-bottom: 8px; +} +.btn.danger, +.alert-message.danger, +.btn.danger:hover, +.alert-message.danger:hover, +.btn.error, +.alert-message.error, +.btn.error:hover, +.alert-message.error:hover, +.btn.success, +.alert-message.success, +.btn.success:hover, +.alert-message.success:hover, +.btn.info, +.alert-message.info, +.btn.info:hover, +.alert-message.info:hover { + color: #ffffff; +} +.btn .close, .alert-message .close { + font-family: Arial, sans-serif; + line-height: 18px; +} +.btn.danger, +.alert-message.danger, +.btn.error, +.alert-message.error { + background-color: #c43c35; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35)); + background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35)); + background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); + background-image: linear-gradient(top, #ee5f5b, #c43c35); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #c43c35 #c43c35 #882a25; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn.success, .alert-message.success { + background-color: #57a957; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957)); + background-image: -moz-linear-gradient(top, #62c462, #57a957); + background-image: -ms-linear-gradient(top, #62c462, #57a957); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957)); + background-image: -webkit-linear-gradient(top, #62c462, #57a957); + background-image: -o-linear-gradient(top, #62c462, #57a957); + background-image: linear-gradient(top, #62c462, #57a957); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #57a957 #57a957 #3d773d; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn.info, .alert-message.info { + background-color: #339bb9; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9)); + background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); + background-image: -ms-linear-gradient(top, #5bc0de, #339bb9); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9)); + background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); + background-image: -o-linear-gradient(top, #5bc0de, #339bb9); + background-image: linear-gradient(top, #5bc0de, #339bb9); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #339bb9 #339bb9 #22697d; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn { + cursor: pointer; + display: inline-block; + background-color: #e6e6e6; + background-repeat: no-repeat; + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6)); + background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6); + background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); + padding: 5px 14px 6px; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + color: #333; + font-size: 13px; + line-height: normal; + border: 1px solid #ccc; + border-bottom-color: #bbb; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -webkit-transition: 0.1s linear all; + -moz-transition: 0.1s linear all; + -ms-transition: 0.1s linear all; + -o-transition: 0.1s linear all; + transition: 0.1s linear all; +} +.btn:hover { + background-position: 0 -15px; + color: #333; + text-decoration: none; +} +.btn:focus { + outline: 1px dotted #666; +} +.btn.primary { + color: #ffffff; + background-color: #0064cd; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); + background-image: -moz-linear-gradient(top, #049cdb, #0064cd); + background-image: -ms-linear-gradient(top, #049cdb, #0064cd); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); + background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); + background-image: -o-linear-gradient(top, #049cdb, #0064cd); + background-image: linear-gradient(top, #049cdb, #0064cd); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #0064cd #0064cd #003f81; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn.active, .btn:active { + -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); +} +.btn.disabled { + cursor: default; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + filter: alpha(opacity=65); + -khtml-opacity: 0.65; + -moz-opacity: 0.65; + opacity: 0.65; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.btn[disabled] { + cursor: default; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + filter: alpha(opacity=65); + -khtml-opacity: 0.65; + -moz-opacity: 0.65; + opacity: 0.65; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.btn.large { + font-size: 15px; + line-height: normal; + padding: 9px 14px 9px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.btn.small { + padding: 7px 9px 7px; + font-size: 11px; +} +:root .alert-message, :root .btn { + border-radius: 0 \0; +} +button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner { + padding: 0; + border: 0; +} +.close { + float: right; + color: #000000; + font-size: 20px; + font-weight: bold; + line-height: 13.5px; + text-shadow: 0 1px 0 #ffffff; + filter: alpha(opacity=25); + -khtml-opacity: 0.25; + -moz-opacity: 0.25; + opacity: 0.25; +} +.close:hover { + color: #000000; + text-decoration: none; + filter: alpha(opacity=40); + -khtml-opacity: 0.4; + -moz-opacity: 0.4; + opacity: 0.4; +} +.alert-message { + position: relative; + padding: 7px 15px; + margin-bottom: 18px; + color: #404040; + background-color: #eedc94; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#fceec1), to(#eedc94)); + background-image: -moz-linear-gradient(top, #fceec1, #eedc94); + background-image: -ms-linear-gradient(top, #fceec1, #eedc94); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fceec1), color-stop(100%, #eedc94)); + background-image: -webkit-linear-gradient(top, #fceec1, #eedc94); + background-image: -o-linear-gradient(top, #fceec1, #eedc94); + background-image: linear-gradient(top, #fceec1, #eedc94); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fceec1', endColorstr='#eedc94', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #eedc94 #eedc94 #e4c652; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + border-width: 1px; + border-style: solid; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); +} +.alert-message .close { + margin-top: 1px; + *margin-top: 0; +} +.alert-message a { + font-weight: bold; + color: #404040; +} +.alert-message.danger p a, +.alert-message.error p a, +.alert-message.success p a, +.alert-message.info p a { + color: #ffffff; +} +.alert-message h5 { + line-height: 18px; +} +.alert-message p { + margin-bottom: 0; +} +.alert-message div { + margin-top: 5px; + margin-bottom: 2px; + line-height: 28px; +} +.alert-message .btn { + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); +} +.alert-message.block-message { + background-image: none; + background-color: #fdf5d9; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + padding: 14px; + border-color: #fceec1; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.alert-message.block-message ul, .alert-message.block-message p { + margin-right: 30px; +} +.alert-message.block-message ul { + margin-bottom: 0; +} +.alert-message.block-message li { + color: #404040; +} +.alert-message.block-message .alert-actions { + margin-top: 5px; +} +.alert-message.block-message.error, .alert-message.block-message.success, .alert-message.block-message.info { + color: #404040; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} +.alert-message.block-message.error { + background-color: #fddfde; + border-color: #fbc7c6; +} +.alert-message.block-message.success { + background-color: #d1eed1; + border-color: #bfe7bf; +} +.alert-message.block-message.info { + background-color: #ddf4fb; + border-color: #c6edf9; +} +.alert-message.block-message.danger p a, +.alert-message.block-message.error p a, +.alert-message.block-message.success p a, +.alert-message.block-message.info p a { + color: #404040; +} +.pagination { + height: 36px; + margin: 18px 0; +} +.pagination ul { + float: left; + margin: 0; + border: 1px solid #ddd; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); +} +.pagination li { + display: inline; +} +.pagination a { + float: left; + padding: 0 14px; + line-height: 34px; + border-right: 1px solid; + border-right-color: #ddd; + border-right-color: rgba(0, 0, 0, 0.15); + *border-right-color: #ddd; + /* IE6-7 */ + + text-decoration: none; +} +.pagination a:hover, .pagination .active a { + background-color: #c7eefe; +} +.pagination .disabled a, .pagination .disabled a:hover { + background-color: transparent; + color: #bfbfbf; +} +.pagination .next a { + border: 0; +} +.well { + background-color: #f5f5f5; + margin-bottom: 20px; + padding: 19px; + min-height: 20px; + border: 1px solid #eee; + border: 1px solid rgba(0, 0, 0, 0.05); + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.modal-backdrop { + background-color: #000000; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 10000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop, .modal-backdrop.fade.in { + filter: alpha(opacity=80); + -khtml-opacity: 0.8; + -moz-opacity: 0.8; + opacity: 0.8; +} +.modal { + position: fixed; + top: 50%; + left: 50%; + z-index: 11000; + width: 560px; + margin: -250px 0 0 -280px; + background-color: #ffffff; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, 0.3); + *border: 1px solid #999; + /* IE6-7 */ + + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.modal .close { + margin-top: 7px; +} +.modal.fade { + -webkit-transition: opacity .3s linear, top .3s ease-out; + -moz-transition: opacity .3s linear, top .3s ease-out; + -ms-transition: opacity .3s linear, top .3s ease-out; + -o-transition: opacity .3s linear, top .3s ease-out; + transition: opacity .3s linear, top .3s ease-out; + top: -25%; +} +.modal.fade.in { + top: 50%; +} +.modal-header { + border-bottom: 1px solid #eee; + padding: 5px 15px; +} +.modal-body { + padding: 15px; +} +.modal-body form { + margin-bottom: 0; +} +.modal-footer { + background-color: #f5f5f5; + padding: 14px 15px 15px; + border-top: 1px solid #ddd; + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + -webkit-box-shadow: inset 0 1px 0 #ffffff; + -moz-box-shadow: inset 0 1px 0 #ffffff; + box-shadow: inset 0 1px 0 #ffffff; + zoom: 1; + margin-bottom: 0; +} +.modal-footer:before, .modal-footer:after { + display: table; + content: ""; + zoom: 1; +} +.modal-footer:after { + clear: both; +} +.modal-footer .btn { + float: right; + margin-left: 5px; +} +.modal .popover, .modal .twipsy { + z-index: 12000; +} +.twipsy { + display: block; + position: absolute; + visibility: visible; + padding: 5px; + font-size: 11px; + z-index: 1000; + filter: alpha(opacity=80); + -khtml-opacity: 0.8; + -moz-opacity: 0.8; + opacity: 0.8; +} +.twipsy.fade.in { + filter: alpha(opacity=80); + -khtml-opacity: 0.8; + -moz-opacity: 0.8; + opacity: 0.8; +} +.twipsy.above .twipsy-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid #000000; +} +.twipsy.left .twipsy-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-left: 5px solid #000000; +} +.twipsy.below .twipsy-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid #000000; +} +.twipsy.right .twipsy-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid #000000; +} +.twipsy-inner { + padding: 3px 8px; + background-color: #000000; + color: white; + text-align: center; + max-width: 200px; + text-decoration: none; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.twipsy-arrow { + position: absolute; + width: 0; + height: 0; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1000; + padding: 5px; + display: none; +} +.popover.above .arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid #000000; +} +.popover.right .arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid #000000; +} +.popover.below .arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid #000000; +} +.popover.left .arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-left: 5px solid #000000; +} +.popover .arrow { + position: absolute; + width: 0; + height: 0; +} +.popover .inner { + background: #000000; + background: rgba(0, 0, 0, 0.8); + padding: 3px; + overflow: hidden; + width: 280px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); +} +.popover .title { + background-color: #f5f5f5; + padding: 9px 15px; + line-height: 1; + -webkit-border-radius: 3px 3px 0 0; + -moz-border-radius: 3px 3px 0 0; + border-radius: 3px 3px 0 0; + border-bottom: 1px solid #eee; +} +.popover .content { + background-color: #ffffff; + padding: 14px; + -webkit-border-radius: 0 0 3px 3px; + -moz-border-radius: 0 0 3px 3px; + border-radius: 0 0 3px 3px; + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.popover .content p, .popover .content ul, .popover .content ol { + margin-bottom: 0; +} +.fade { + -webkit-transition: opacity 0.15s linear; + -moz-transition: opacity 0.15s linear; + -ms-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; + opacity: 0; +} +.fade.in { + opacity: 1; +} +.label { + padding: 1px 3px 2px; + font-size: 9.75px; + font-weight: bold; + color: #ffffff; + text-transform: uppercase; + white-space: nowrap; + background-color: #bfbfbf; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.label.important { + background-color: #c43c35; +} +.label.warning { + background-color: #f89406; +} +.label.success { + background-color: #46a546; +} +.label.notice { + background-color: #62cffc; +} +.media-grid { + margin-left: -20px; + margin-bottom: 0; + zoom: 1; +} +.media-grid:before, .media-grid:after { + display: table; + content: ""; + zoom: 1; +} +.media-grid:after { + clear: both; +} +.media-grid li { + display: inline; +} +.media-grid a { + float: left; + padding: 4px; + margin: 0 0 18px 20px; + border: 1px solid #ddd; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075); +} +.media-grid a img { + display: block; +} +.media-grid a:hover { + border-color: #0069d6; + -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); +} diff --git a/_themes/bootstrap/theme.conf b/_themes/bootstrap/theme.conf new file mode 100644 index 00000000000..64f9efd5698 --- /dev/null +++ b/_themes/bootstrap/theme.conf @@ -0,0 +1,5 @@ +# Twitter Bootstrap Theme +[theme] +inherit = basic +stylesheet = basic.css +pygments_style = tango diff --git a/conf.py b/conf.py index 95a65dc7075..dbbfc48788a 100644 --- a/conf.py +++ b/conf.py @@ -22,6 +22,7 @@ import os #sys.path.append(os.path.abspath('some/directory')) sys.path.insert(0, os.path.join('ansible', 'lib')) +sys.path.append(os.path.abspath('_themes')) from ansible import __version__, __author__ @@ -98,6 +99,10 @@ pygments_style = 'sphinx' # Options for HTML output # ----------------------- +html_theme_path = ['_themes'] +html_theme = 'bootstrap' +html_short_title = 'Ansible' + # The style sheet to use for HTML and HTML Help pages. A file of that name # must exist either in Sphinx' static/ path, or in one of the custom paths # given in html_static_path. diff --git a/html/YAMLScripts.html b/html/YAMLScripts.html index ec72607e3ca..85840f122a4 100644 --- a/html/YAMLScripts.html +++ b/html/YAMLScripts.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ YAML Format — Ansible v0.0.1 documentation + + + + - - + + + + - - -
      -
      -
      -
      + + +
      +

      YAML Format

      This page provides a basic overview of correct YAML syntax, which is how Ansible @@ -125,66 +224,16 @@ languages:

      -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      Previous topic

      -

      Ansible Modules

      -

      Next topic

      -

      Playbooks: Ansible for Deployment, Configuration Management, and Orchestration

      -

      This Page

      - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/_sources/patterns.txt b/html/_sources/patterns.txt index 8ef369b225c..5b76289378a 100644 --- a/html/_sources/patterns.txt +++ b/html/_sources/patterns.txt @@ -1,3 +1,5 @@ +.. _patterns: + The Inventory File, Patterns, and Groups ======================================== @@ -43,16 +45,17 @@ It is also possible to address specific hosts:: one.example.com:two.example.com -The following patterns address one or more groups, which are denoted with the bracket -headers in the inventory file:: +The following patterns address one or more groups, which are denoted +with the bracket headers in the inventory file:: webservers webservers:dbservers -Individual hosts, but not groups, can also be referenced using wildcards: +Individual hosts, but not groups, can also be referenced using +wildcards:: - *.example.com - *.com + *.example.com + *.com It's also ok to mix wildcard patterns and groups at the same time:: diff --git a/html/_sources/playbooks.txt b/html/_sources/playbooks.txt index 890768c5894..35b47362718 100644 --- a/html/_sources/playbooks.txt +++ b/html/_sources/playbooks.txt @@ -1,5 +1,5 @@ -Playbooks: Ansible for Deployment, Configuration Management, and Orchestration -============================================================================== +Playbooks +========= .. seealso:: @@ -11,21 +11,28 @@ Playbooks: Ansible for Deployment, Configuration Management, and Orchestration Learn about how to select hosts -Playbooks are a completely different way to use ansible and are particularly awesome. +Playbooks are a completely different way to use ansible and are +particularly awesome. -They are the basis for a really simple configuration management and multi-machine deployment system, unlike any that already exist, and one that is very well suited to deploying complex applications. +They are the basis for a really simple configuration management and +multi-machine deployment system, unlike any that already exist, and +one that is very well suited to deploying complex applications. -While you might run the main /usr/bin/ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec. +While you might run the main ``/usr/bin/ansible`` program for ad-hoc +tasks, playbooks are more likely to be kept in source control and used +to push out your configuration or assure the configurations of your +remote systems are in spec. Playbook Example ```````````````` -Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed -of one or more 'plays' in a list. By composing a playbook of multiple 'plays', it is possible -to orchestrate multi-machine deployments, running certain steps on all machines in -the webservers group, then certain steps on the database server group, then more commands -back on the webservers group, etc:: +Playbooks are expressed in YAML format and have a minimum of syntax. +Each playbook is composed of one or more 'plays' in a list. By +composing a playbook of multiple 'plays', it is possible to +orchestrate multi-machine deployments, running certain steps on all +machines in the webservers group, then certain steps on the database +server group, then more commands back on the webservers group, etc:: --- - hosts: webservers @@ -47,21 +54,25 @@ back on the webservers group, etc:: Hosts line `````````` -The hosts line is a list of one or more groups or host patterns, seperated by colons, asdescribed in the 'patterns' documentation. This is just like the first parameter to /usr/bin/ansible. +The hosts line is a list of one or more groups or host patterns, +seperated by colons, asdescribed in the :ref:`patterns` documentation. +This is just like the first parameter to ``/usr/bin/ansible``. Vars section ```````````` -A list of variables and values that can be used in the plays. These can be used in templates -or 'action' lines and are dereferenced using ```jinja2``` syntax like this:: +A list of variables and values that can be used in the plays. These +can be used in templates or 'action' lines and are dereferenced using +```jinja2``` syntax like this:: {{ varname }} -Further, if there are discovered variables about the system (say, if facter or ohai were -installed) these variables bubble up back into the playbook, and can be used on each -system just like explicitly set variables. Facter variables are prefixed with 'facter_' -and Ohai variables are prefixed with 'ohai_'. So for instance, if I wanted to write the -hostname into the /etc/motd file, I could say:: +Further, if there are discovered variables about the system (say, if +facter or ohai were installed) these variables bubble up back into the +playbook, and can be used on each system just like explicitly set +variables. Facter variables are prefixed with ``facter_`` and Ohai +variables are prefixed with ``ohai_``. So for instance, if I wanted +to write the hostname into the /etc/motd file, I could say:: - name: write the motd - action: template src=/srv/templates/motd.j2 dest=/etc/motd @@ -75,27 +86,32 @@ But we're getting ahead of ourselves. Let's talk about tasks. Tasks list `````````` -Each play contains a list of tasks. Tasks are executed in order, one at a time, against -all machines matched by the play's host pattern, before moving on to the next task. +Each play contains a list of tasks. Tasks are executed in order, one +at a time, against all machines matched by the play's host pattern, +before moving on to the next task. -Hosts with failed tasks are taken out of the rotation for the entire playbook. If things fail, -simply correct the playbook file and rerun. +Hosts with failed tasks are taken out of the rotation for the entire +playbook. If things fail, simply correct the playbook file and rerun. -Modules other than command are idempotent, meaning if you run them again, they will make the -changes they are told to make to bring the system to the desired state. +Modules other than command are idempotent, meaning if you run them +again, they will make the changes they are told to make to bring the +system to the desired state. Task name and action ````````````````````` -Every task must have a name, which is included in the output from running the playbook. +Every task must have a name, which is included in the output from +running the playbook. -The action line is the name of an ansible module followed by parameters. Usually these -are expressed in key=value form, except for the command module, which looks just like a Linux/Unix -command line. See the module documentation for more info. +The action line is the name of an ansible module followed by +parameters. Usually these are expressed in ``key=value`` form, except +for the command module, which looks just like a Linux/Unix command +line. See the module documentation for more info. -Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted -to make a directory on each system named after the hostname ... yeah, that's I know silly ... you could -do it like so:: +Variables, as mentioned above, can be used in action lines. So if, +hypothetically, you wanted to make a directory on each system named +after the hostname ... yeah, that's I know silly ... you could do it +like so:: - name: make a directory - action: mkdir /tmp/{{ facter_hostname }} @@ -103,44 +119,49 @@ do it like so:: Notify statements ````````````````` -Nearly all modules are written to be 'idempotent' and can signal when they have affected a change -on the remote system. If a notify statement is used, the named handler will be run against -each system where a change was effected, but NOT on systems where no change occurred. This happens -after all of the tasks are run. For example, if notifying Apache and potentially replacing lots of -configuration files, you could have Apache restart just once, at the end of a run. If you need -Apache restarted in the middle of a run, you could just make a task for it, no harm done. Notifiers -are optional. +Nearly all modules are written to be 'idempotent' and can signal when +they have affected a change on the remote system. If a notify +statement is used, the named handler will be run against each system +where a change was effected, but NOT on systems where no change +occurred. This happens after all of the tasks are run. For example, +if notifying Apache and potentially replacing lots of configuration +files, you could have Apache restart just once, at the end of a run. +If you need Apache restarted in the middle of a run, you could just +make a task for it, no harm done. Notifiers are optional. Handlers ```````` -Handlers are lists of tasks, not really any different from regular tasks, that are referenced -by name. Handlers are what notifiers notify. If nothing notifies a handler, it will not run. -Regardless of how many things notify a handler, it will run only once, after all of the tasks -complete in a particular play. +Handlers are lists of tasks, not really any different from regular +tasks, that are referenced by name. Handlers are what notifiers +notify. If nothing notifies a handler, it will not run. Regardless +of how many things notify a handler, it will run only once, after all +of the tasks complete in a particular play. Includes ```````` -Not all tasks have to be listed directly in the main file. An include file can contain -a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this (assume a variable named 'user'):: +Not all tasks have to be listed directly in the main file. An include +file can contain a list of tasks (in YAML) as well, optionally passing +extra variables into the file. Variables passed in can be deferenced +like this (assume a variable named 'user'):: {{ user }} -For instance, if deploying multiple wordpress instances, I could contain all of my tasks -in a wordpress.yml file, and use it like so:: +For instance, if deploying multiple wordpress instances, I could +contain all of my tasks in a wordpress.yml file, and use it like so:: - tasks: - include: wordpress.yml user=timmy - include: wordpress.yml user=alice - include: wordpress.yml user=bob -In addition to the explicitly passed in parameters, all variables from the vars section -are also available. +In addition to the explicitly passed in parameters, all variables from +the vars section are also available. -The format of an included list of tasks or handlers looks just like a flat list of tasks. Here -is an example of what base.yml might look like:: +The format of an included list of tasks or handlers looks just like a +flat list of tasks. Here is an example of what base.yml might look +like:: --- - name: no selinux @@ -150,18 +171,20 @@ is an example of what base.yml might look like:: - name: this is just to show variables work here, favcolor={{ favcolor }} action: command /bin/true -As you can see above, variables in include files work just like they do in the main file. -Including a variable in the name of a task is a contrived example, you could also -pass them to the action command line or use them inside a template file. +As you can see above, variables in include files work just like they +do in the main file. Including a variable in the name of a task is a +contrived example, you could also pass them to the action command line +or use them inside a template file. -Note that include statements are only usable from the top level playbook file. -At this time, includes can not include other includes. +Note that include statements are only usable from the top level +playbook file. At this time, includes can not include other includes. Using Includes To Assign Classes of Systems ``````````````````````````````````````````` -Include files are best used to reuse logic between playbooks. You could imagine -a playbook describing your entire infrastructure like this:: +Include files are best used to reuse logic between playbooks. You +could imagine a playbook describing your entire infrastructure like +this:: --- - hosts: atlanta-webservers @@ -181,21 +204,23 @@ a playbook describing your entire infrastructure like this:: handlers: - include: generic-handlers.yml -There is one (or more) play defined for each group of systems, and each play maps -each group includes one or more 'class definitions' telling the systems what they -are supposed to do or be. +There is one (or more) play defined for each group of systems, and +each play maps each group includes one or more 'class definitions' +telling the systems what they are supposed to do or be. -Using a common handlers file could allow one task in 'webservers' to define 'restart apache', -and it could be reused between multiple plays. +Using a common handlers file could allow one task in 'webservers' to +define 'restart apache', and it could be reused between multiple +plays. -Variables like 'database' above can be used in templates referenced from the -configuration file to generate machine specific variables. +Variables like 'database' above can be used in templates referenced +from the configuration file to generate machine specific variables. Asynchronous Actions and Polling ```````````````````````````````` (Information on this feature is pending) + Executing A Playbook ```````````````````` diff --git a/html/_static/basic.css b/html/_static/basic.css index eb22a94218a..32630d54c9f 100644 --- a/html/_static/basic.css +++ b/html/_static/basic.css @@ -79,14 +79,6 @@ div.sphinxsidebar input { font-size: 1em; } -div.sphinxsidebar input[type="text"] { - width: 170px; -} - -div.sphinxsidebar input[type="submit"] { - width: 30px; -} - img { border: 0; } @@ -244,6 +236,7 @@ img.align-center, .figure.align-center, object.align-center { } .align-center { + clear: both; text-align: center; } diff --git a/html/_static/bootstrap-dropdown.js b/html/_static/bootstrap-dropdown.js new file mode 100644 index 00000000000..fda6da597e0 --- /dev/null +++ b/html/_static/bootstrap-dropdown.js @@ -0,0 +1,55 @@ +/* ============================================================ + * bootstrap-dropdown.js v1.4.0 + * http://twitter.github.com/bootstrap/javascript.html#dropdown + * ============================================================ + * Copyright 2011 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================ */ + + +!function( $ ){ + + "use strict" + + /* DROPDOWN PLUGIN DEFINITION + * ========================== */ + + $.fn.dropdown = function ( selector ) { + return this.each(function () { + $(this).delegate(selector || d, 'click', function (e) { + var li = $(this).parent('li') + , isActive = li.hasClass('open') + + clearMenus() + !isActive && li.toggleClass('open') + return false + }) + }) + } + + /* APPLY TO STANDARD DROPDOWN ELEMENTS + * =================================== */ + + var d = 'a.menu, .dropdown-toggle' + + function clearMenus() { + $(d).parent('li').removeClass('open') + } + + $(function () { + $('html').bind("click", clearMenus) + $('body').dropdown( '[data-dropdown] a.menu, [data-dropdown] .dropdown-toggle' ) + }) + +}( window.jQuery || window.ender ); diff --git a/html/_static/bootstrap-scrollspy.js b/html/_static/bootstrap-scrollspy.js new file mode 100644 index 00000000000..efbc4329605 --- /dev/null +++ b/html/_static/bootstrap-scrollspy.js @@ -0,0 +1,107 @@ +/* ============================================================= + * bootstrap-scrollspy.js v1.4.0 + * http://twitter.github.com/bootstrap/javascript.html#scrollspy + * ============================================================= + * Copyright 2011 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================== */ + + +!function ( $ ) { + + "use strict" + + var $window = $(window) + + function ScrollSpy( topbar, selector ) { + var processScroll = $.proxy(this.processScroll, this) + this.$topbar = $(topbar) + this.selector = selector || 'li > a' + this.refresh() + this.$topbar.delegate(this.selector, 'click', processScroll) + $window.scroll(processScroll) + this.processScroll() + } + + ScrollSpy.prototype = { + + refresh: function () { + this.targets = this.$topbar.find(this.selector).map(function () { + var href = $(this).attr('href') + return /^#\w/.test(href) && $(href).length ? href : null + }) + + this.offsets = $.map(this.targets, function (id) { + return $(id).offset().top + }) + } + + , processScroll: function () { + var scrollTop = $window.scrollTop() + 10 + , offsets = this.offsets + , targets = this.targets + , activeTarget = this.activeTarget + , i + + for (i = offsets.length; i--;) { + activeTarget != targets[i] + && scrollTop >= offsets[i] + && (!offsets[i + 1] || scrollTop <= offsets[i + 1]) + && this.activateButton( targets[i] ) + } + } + + , activateButton: function (target) { + this.activeTarget = target + + this.$topbar + .find(this.selector).parent('.active') + .removeClass('active') + + this.$topbar + .find(this.selector + '[href="' + target + '"]') + .parent('li') + .addClass('active') + } + + } + + /* SCROLLSPY PLUGIN DEFINITION + * =========================== */ + + $.fn.scrollSpy = function( options ) { + var scrollspy = this.data('scrollspy') + + if (!scrollspy) { + return this.each(function () { + $(this).data('scrollspy', new ScrollSpy( this, options )) + }) + } + + if ( options === true ) { + return scrollspy + } + + if ( typeof options == 'string' ) { + scrollspy[options]() + } + + return this + } + + $(document).ready(function () { + $('body').scrollSpy('[data-scrollspy] li > a') + }) + +}( window.jQuery || window.ender ); \ No newline at end of file diff --git a/html/_static/bootstrap-sphinx.css b/html/_static/bootstrap-sphinx.css new file mode 100644 index 00000000000..78b7be1f6f0 --- /dev/null +++ b/html/_static/bootstrap-sphinx.css @@ -0,0 +1,15 @@ +/* +* bootstrap-sphinx.css +* ~~~~~~~~~~~~~~~~~~~~ +* +* Sphinx stylesheet -- Twitter Bootstrap theme. +*/ + +body { + padding-top: 42px; +} + +div.documentwrapper { + float: left; + width: 100%; +} \ No newline at end of file diff --git a/html/_static/bootstrap.css b/html/_static/bootstrap.css new file mode 100644 index 00000000000..e5aa166089b --- /dev/null +++ b/html/_static/bootstrap.css @@ -0,0 +1,2467 @@ +/*! + * Bootstrap v1.4.0 + * + * Copyright 2011 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + * Date: Sun Nov 20 21:42:29 PST 2011 + */ +/* Reset.less + * Props to Eric Meyer (meyerweb.com) for his CSS reset file. We're using an adapted version here that cuts out some of the reset HTML elements we will never need here (i.e., dfn, samp, etc). + * ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */ +html, body { + margin: 0; + padding: 0; +} +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +cite, +code, +del, +dfn, +em, +img, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +dd, +dl, +dt, +li, +ol, +ul, +fieldset, +form, +label, +legend, +button, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td { + margin: 0; + padding: 0; + border: 0; + font-weight: normal; + font-style: normal; + font-size: 100%; + line-height: 1; + font-family: inherit; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +ol, ul { + list-style: none; +} +q:before, +q:after, +blockquote:before, +blockquote:after { + content: ""; +} +html { + overflow-y: scroll; + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +a:focus { + outline: thin dotted; +} +a:hover, a:active { + outline: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section { + display: block; +} +audio, canvas, video { + display: inline-block; + *display: inline; + *zoom: 1; +} +audio:not([controls]) { + display: none; +} +sub, sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; + -ms-interpolation-mode: bicubic; +} +button, +input, +select, +textarea { + font-size: 100%; + margin: 0; + vertical-align: baseline; + *vertical-align: middle; +} +button, input { + line-height: normal; + *overflow: visible; +} +button::-moz-focus-inner, input::-moz-focus-inner { + border: 0; + padding: 0; +} +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} +input[type="search"] { + -webkit-appearance: textfield; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +textarea { + overflow: auto; + vertical-align: top; +} +/* Variables.less + * Variables to customize the look and feel of Bootstrap + * ----------------------------------------------------- */ +/* Mixins.less + * Snippets of reusable CSS to develop faster and keep code readable + * ----------------------------------------------------------------- */ +/* + * Scaffolding + * Basic and global styles for generating a grid system, structural layout, and page templates + * ------------------------------------------------------------------------------------------- */ +body { + background-color: #ffffff; + margin: 0; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: 18px; + color: #404040; +} +.container { + width: 940px; + margin-left: auto; + margin-right: auto; + zoom: 1; +} +.container:before, .container:after { + display: table; + content: ""; + zoom: 1; +} +.container:after { + clear: both; +} +.container-fluid { + position: relative; + min-width: 940px; + padding-left: 20px; + padding-right: 20px; + zoom: 1; +} +.container-fluid:before, .container-fluid:after { + display: table; + content: ""; + zoom: 1; +} +.container-fluid:after { + clear: both; +} +.container-fluid > .sidebar { + position: absolute; + top: 0; + left: 20px; + width: 220px; +} +.container-fluid > .content { + margin-left: 240px; +} +a { + color: #0069d6; + text-decoration: none; + line-height: inherit; + font-weight: inherit; +} +a:hover { + color: #00438a; + text-decoration: underline; +} +.pull-right { + float: right; +} +.pull-left { + float: left; +} +.hide { + display: none; +} +.show { + display: block; +} +.row { + zoom: 1; + margin-left: -20px; +} +.row:before, .row:after { + display: table; + content: ""; + zoom: 1; +} +.row:after { + clear: both; +} +.row > [class*="span"] { + display: inline; + float: left; + margin-left: 20px; +} +.span1 { + width: 40px; +} +.span2 { + width: 100px; +} +.span3 { + width: 160px; +} +.span4 { + width: 220px; +} +.span5 { + width: 280px; +} +.span6 { + width: 340px; +} +.span7 { + width: 400px; +} +.span8 { + width: 460px; +} +.span9 { + width: 520px; +} +.span10 { + width: 580px; +} +.span11 { + width: 640px; +} +.span12 { + width: 700px; +} +.span13 { + width: 760px; +} +.span14 { + width: 820px; +} +.span15 { + width: 880px; +} +.span16 { + width: 940px; +} +.span17 { + width: 1000px; +} +.span18 { + width: 1060px; +} +.span19 { + width: 1120px; +} +.span20 { + width: 1180px; +} +.span21 { + width: 1240px; +} +.span22 { + width: 1300px; +} +.span23 { + width: 1360px; +} +.span24 { + width: 1420px; +} +.row > .offset1 { + margin-left: 80px; +} +.row > .offset2 { + margin-left: 140px; +} +.row > .offset3 { + margin-left: 200px; +} +.row > .offset4 { + margin-left: 260px; +} +.row > .offset5 { + margin-left: 320px; +} +.row > .offset6 { + margin-left: 380px; +} +.row > .offset7 { + margin-left: 440px; +} +.row > .offset8 { + margin-left: 500px; +} +.row > .offset9 { + margin-left: 560px; +} +.row > .offset10 { + margin-left: 620px; +} +.row > .offset11 { + margin-left: 680px; +} +.row > .offset12 { + margin-left: 740px; +} +.span-one-third { + width: 300px; +} +.span-two-thirds { + width: 620px; +} +.row > .offset-one-third { + margin-left: 340px; +} +.row > .offset-two-thirds { + margin-left: 660px; +} +/* Typography.less + * Headings, body text, lists, code, and more for a versatile and durable typography system + * ---------------------------------------------------------------------------------------- */ +p { + font-size: 13px; + font-weight: normal; + line-height: 18px; + margin-bottom: 9px; +} +p small { + font-size: 11px; + color: #bfbfbf; +} +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: bold; + color: #404040; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small { + color: #bfbfbf; +} +h1 { + margin-bottom: 18px; + font-size: 30px; + line-height: 36px; +} +h1 small { + font-size: 18px; +} +h2 { + font-size: 24px; + line-height: 36px; +} +h2 small { + font-size: 14px; +} +h3, +h4, +h5, +h6 { + line-height: 36px; +} +h3 { + font-size: 18px; +} +h3 small { + font-size: 14px; +} +h4 { + font-size: 16px; +} +h4 small { + font-size: 12px; +} +h5 { + font-size: 14px; +} +h6 { + font-size: 13px; + color: #bfbfbf; + text-transform: uppercase; +} +ul, ol { + margin: 0 0 18px 25px; +} +ul ul, +ul ol, +ol ol, +ol ul { + margin-bottom: 0; +} +ul { + list-style: disc; +} +ol { + list-style: decimal; +} +li { + line-height: 18px; + color: #808080; +} +ul.unstyled { + list-style: none; + margin-left: 0; +} +dl { + margin-bottom: 18px; +} +dl dt, dl dd { + line-height: 18px; +} +dl dt { + font-weight: bold; +} +dl dd { + margin-left: 9px; +} +hr { + margin: 20px 0 19px; + border: 0; + border-bottom: 1px solid #eee; +} +strong { + font-style: inherit; + font-weight: bold; +} +em { + font-style: italic; + font-weight: inherit; + line-height: inherit; +} +.muted { + color: #bfbfbf; +} +blockquote { + margin-bottom: 18px; + border-left: 5px solid #eee; + padding-left: 15px; +} +blockquote p { + font-size: 14px; + font-weight: 300; + line-height: 18px; + margin-bottom: 0; +} +blockquote small { + display: block; + font-size: 12px; + font-weight: 300; + line-height: 18px; + color: #bfbfbf; +} +blockquote small:before { + content: '\2014 \00A0'; +} +address { + display: block; + line-height: 18px; + margin-bottom: 18px; +} +code, pre { + padding: 0 3px 2px; + font-family: Monaco, Andale Mono, Courier New, monospace; + font-size: 12px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +code { + background-color: #fee9cc; + color: rgba(0, 0, 0, 0.75); + padding: 1px 3px; +} +pre { + background-color: #f5f5f5; + display: block; + padding: 8.5px; + margin: 0 0 18px; + line-height: 18px; + font-size: 12px; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} +/* Forms.less + * Base styles for various input types, form layouts, and states + * ------------------------------------------------------------- */ +form { + margin-bottom: 18px; +} +fieldset { + margin-bottom: 18px; + padding-top: 18px; +} +fieldset legend { + display: block; + padding-left: 150px; + font-size: 19.5px; + line-height: 1; + color: #404040; + *padding: 0 0 5px 145px; + /* IE6-7 */ + + *line-height: 1.5; + /* IE6-7 */ + +} +form .clearfix { + margin-bottom: 18px; + zoom: 1; +} +form .clearfix:before, form .clearfix:after { + display: table; + content: ""; + zoom: 1; +} +form .clearfix:after { + clear: both; +} +label, +input, +select, +textarea { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: normal; +} +label { + padding-top: 6px; + font-size: 13px; + line-height: 18px; + float: left; + width: 130px; + text-align: right; + color: #404040; +} +form .input { + margin-left: 150px; +} +input[type=checkbox], input[type=radio] { + cursor: pointer; +} +input, +textarea, +select, +.uneditable-input { + display: inline-block; + width: 210px; + height: 18px; + padding: 4px; + font-size: 13px; + line-height: 18px; + color: #808080; + border: 1px solid #ccc; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +select { + padding: initial; +} +input[type=checkbox], input[type=radio] { + width: auto; + height: auto; + padding: 0; + margin: 3px 0; + *margin-top: 0; + /* IE6-7 */ + + line-height: normal; + border: none; +} +input[type=file] { + background-color: #ffffff; + padding: initial; + border: initial; + line-height: initial; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +input[type=button], input[type=reset], input[type=submit] { + width: auto; + height: auto; +} +select, input[type=file] { + height: 27px; + *height: auto; + line-height: 27px; + *margin-top: 4px; + /* For IE7, add top margin to align select with labels */ + +} +select[multiple] { + height: inherit; + background-color: #ffffff; +} +textarea { + height: auto; +} +.uneditable-input { + background-color: #ffffff; + display: block; + border-color: #eee; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + cursor: not-allowed; +} +:-moz-placeholder { + color: #bfbfbf; +} +::-webkit-input-placeholder { + color: #bfbfbf; +} +input, textarea { + -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; + -moz-transition: border linear 0.2s, box-shadow linear 0.2s; + -ms-transition: border linear 0.2s, box-shadow linear 0.2s; + -o-transition: border linear 0.2s, box-shadow linear 0.2s; + transition: border linear 0.2s, box-shadow linear 0.2s; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); +} +input:focus, textarea:focus { + outline: 0; + border-color: rgba(82, 168, 236, 0.8); + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); +} +input[type=file]:focus, input[type=checkbox]:focus, select:focus { + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + outline: 1px dotted #666; +} +form .clearfix.error > label, form .clearfix.error .help-block, form .clearfix.error .help-inline { + color: #b94a48; +} +form .clearfix.error input, form .clearfix.error textarea { + color: #b94a48; + border-color: #ee5f5b; +} +form .clearfix.error input:focus, form .clearfix.error textarea:focus { + border-color: #e9322d; + -webkit-box-shadow: 0 0 6px #f8b9b7; + -moz-box-shadow: 0 0 6px #f8b9b7; + box-shadow: 0 0 6px #f8b9b7; +} +form .clearfix.error .input-prepend .add-on, form .clearfix.error .input-append .add-on { + color: #b94a48; + background-color: #fce6e6; + border-color: #b94a48; +} +form .clearfix.warning > label, form .clearfix.warning .help-block, form .clearfix.warning .help-inline { + color: #c09853; +} +form .clearfix.warning input, form .clearfix.warning textarea { + color: #c09853; + border-color: #ccae64; +} +form .clearfix.warning input:focus, form .clearfix.warning textarea:focus { + border-color: #be9a3f; + -webkit-box-shadow: 0 0 6px #e5d6b1; + -moz-box-shadow: 0 0 6px #e5d6b1; + box-shadow: 0 0 6px #e5d6b1; +} +form .clearfix.warning .input-prepend .add-on, form .clearfix.warning .input-append .add-on { + color: #c09853; + background-color: #d2b877; + border-color: #c09853; +} +form .clearfix.success > label, form .clearfix.success .help-block, form .clearfix.success .help-inline { + color: #468847; +} +form .clearfix.success input, form .clearfix.success textarea { + color: #468847; + border-color: #57a957; +} +form .clearfix.success input:focus, form .clearfix.success textarea:focus { + border-color: #458845; + -webkit-box-shadow: 0 0 6px #9acc9a; + -moz-box-shadow: 0 0 6px #9acc9a; + box-shadow: 0 0 6px #9acc9a; +} +form .clearfix.success .input-prepend .add-on, form .clearfix.success .input-append .add-on { + color: #468847; + background-color: #bcddbc; + border-color: #468847; +} +.input-mini, +input.mini, +textarea.mini, +select.mini { + width: 60px; +} +.input-small, +input.small, +textarea.small, +select.small { + width: 90px; +} +.input-medium, +input.medium, +textarea.medium, +select.medium { + width: 150px; +} +.input-large, +input.large, +textarea.large, +select.large { + width: 210px; +} +.input-xlarge, +input.xlarge, +textarea.xlarge, +select.xlarge { + width: 270px; +} +.input-xxlarge, +input.xxlarge, +textarea.xxlarge, +select.xxlarge { + width: 530px; +} +textarea.xxlarge { + overflow-y: auto; +} +input.span1, textarea.span1 { + display: inline-block; + float: none; + width: 30px; + margin-left: 0; +} +input.span2, textarea.span2 { + display: inline-block; + float: none; + width: 90px; + margin-left: 0; +} +input.span3, textarea.span3 { + display: inline-block; + float: none; + width: 150px; + margin-left: 0; +} +input.span4, textarea.span4 { + display: inline-block; + float: none; + width: 210px; + margin-left: 0; +} +input.span5, textarea.span5 { + display: inline-block; + float: none; + width: 270px; + margin-left: 0; +} +input.span6, textarea.span6 { + display: inline-block; + float: none; + width: 330px; + margin-left: 0; +} +input.span7, textarea.span7 { + display: inline-block; + float: none; + width: 390px; + margin-left: 0; +} +input.span8, textarea.span8 { + display: inline-block; + float: none; + width: 450px; + margin-left: 0; +} +input.span9, textarea.span9 { + display: inline-block; + float: none; + width: 510px; + margin-left: 0; +} +input.span10, textarea.span10 { + display: inline-block; + float: none; + width: 570px; + margin-left: 0; +} +input.span11, textarea.span11 { + display: inline-block; + float: none; + width: 630px; + margin-left: 0; +} +input.span12, textarea.span12 { + display: inline-block; + float: none; + width: 690px; + margin-left: 0; +} +input.span13, textarea.span13 { + display: inline-block; + float: none; + width: 750px; + margin-left: 0; +} +input.span14, textarea.span14 { + display: inline-block; + float: none; + width: 810px; + margin-left: 0; +} +input.span15, textarea.span15 { + display: inline-block; + float: none; + width: 870px; + margin-left: 0; +} +input.span16, textarea.span16 { + display: inline-block; + float: none; + width: 930px; + margin-left: 0; +} +input[disabled], +select[disabled], +textarea[disabled], +input[readonly], +select[readonly], +textarea[readonly] { + background-color: #f5f5f5; + border-color: #ddd; + cursor: not-allowed; +} +.actions { + background: #f5f5f5; + margin-top: 18px; + margin-bottom: 18px; + padding: 17px 20px 18px 150px; + border-top: 1px solid #ddd; + -webkit-border-radius: 0 0 3px 3px; + -moz-border-radius: 0 0 3px 3px; + border-radius: 0 0 3px 3px; +} +.actions .secondary-action { + float: right; +} +.actions .secondary-action a { + line-height: 30px; +} +.actions .secondary-action a:hover { + text-decoration: underline; +} +.help-inline, .help-block { + font-size: 13px; + line-height: 18px; + color: #bfbfbf; +} +.help-inline { + padding-left: 5px; + *position: relative; + /* IE6-7 */ + + *top: -5px; + /* IE6-7 */ + +} +.help-block { + display: block; + max-width: 600px; +} +.inline-inputs { + color: #808080; +} +.inline-inputs span { + padding: 0 2px 0 1px; +} +.input-prepend input, .input-append input { + -webkit-border-radius: 0 3px 3px 0; + -moz-border-radius: 0 3px 3px 0; + border-radius: 0 3px 3px 0; +} +.input-prepend .add-on, .input-append .add-on { + position: relative; + background: #f5f5f5; + border: 1px solid #ccc; + z-index: 2; + float: left; + display: block; + width: auto; + min-width: 16px; + height: 18px; + padding: 4px 4px 4px 5px; + margin-right: -1px; + font-weight: normal; + line-height: 18px; + color: #bfbfbf; + text-align: center; + text-shadow: 0 1px 0 #ffffff; + -webkit-border-radius: 3px 0 0 3px; + -moz-border-radius: 3px 0 0 3px; + border-radius: 3px 0 0 3px; +} +.input-prepend .active, .input-append .active { + background: #a9dba9; + border-color: #46a546; +} +.input-prepend .add-on { + *margin-top: 1px; + /* IE6-7 */ + +} +.input-append input { + float: left; + -webkit-border-radius: 3px 0 0 3px; + -moz-border-radius: 3px 0 0 3px; + border-radius: 3px 0 0 3px; +} +.input-append .add-on { + -webkit-border-radius: 0 3px 3px 0; + -moz-border-radius: 0 3px 3px 0; + border-radius: 0 3px 3px 0; + margin-right: 0; + margin-left: -1px; +} +.inputs-list { + margin: 0 0 5px; + width: 100%; +} +.inputs-list li { + display: block; + padding: 0; + width: 100%; +} +.inputs-list label { + display: block; + float: none; + width: auto; + padding: 0; + margin-left: 20px; + line-height: 18px; + text-align: left; + white-space: normal; +} +.inputs-list label strong { + color: #808080; +} +.inputs-list label small { + font-size: 11px; + font-weight: normal; +} +.inputs-list .inputs-list { + margin-left: 25px; + margin-bottom: 10px; + padding-top: 0; +} +.inputs-list:first-child { + padding-top: 6px; +} +.inputs-list li + li { + padding-top: 2px; +} +.inputs-list input[type=radio], .inputs-list input[type=checkbox] { + margin-bottom: 0; + margin-left: -20px; + float: left; +} +.form-stacked { + padding-left: 20px; +} +.form-stacked fieldset { + padding-top: 9px; +} +.form-stacked legend { + padding-left: 0; +} +.form-stacked label { + display: block; + float: none; + width: auto; + font-weight: bold; + text-align: left; + line-height: 20px; + padding-top: 0; +} +.form-stacked .clearfix { + margin-bottom: 9px; +} +.form-stacked .clearfix div.input { + margin-left: 0; +} +.form-stacked .inputs-list { + margin-bottom: 0; +} +.form-stacked .inputs-list li { + padding-top: 0; +} +.form-stacked .inputs-list li label { + font-weight: normal; + padding-top: 0; +} +.form-stacked div.clearfix.error { + padding-top: 10px; + padding-bottom: 10px; + padding-left: 10px; + margin-top: 0; + margin-left: -10px; +} +.form-stacked .actions { + margin-left: -20px; + padding-left: 20px; +} +/* + * Tables.less + * Tables for, you guessed it, tabular data + * ---------------------------------------- */ +table { + width: 100%; + margin-bottom: 18px; + padding: 0; + font-size: 13px; + border-collapse: collapse; +} +table th, table td { + padding: 10px 10px 9px; + line-height: 18px; + text-align: left; +} +table th { + padding-top: 9px; + font-weight: bold; + vertical-align: middle; +} +table td { + vertical-align: top; + border-top: 1px solid #ddd; +} +table tbody th { + border-top: 1px solid #ddd; + vertical-align: top; +} +.condensed-table th, .condensed-table td { + padding: 5px 5px 4px; +} +.bordered-table { + border: 1px solid #ddd; + border-collapse: separate; + *border-collapse: collapse; + /* IE7, collapse table to remove spacing */ + + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.bordered-table th + th, .bordered-table td + td, .bordered-table th + td { + border-left: 1px solid #ddd; +} +.bordered-table thead tr:first-child th:first-child, .bordered-table tbody tr:first-child td:first-child { + -webkit-border-radius: 4px 0 0 0; + -moz-border-radius: 4px 0 0 0; + border-radius: 4px 0 0 0; +} +.bordered-table thead tr:first-child th:last-child, .bordered-table tbody tr:first-child td:last-child { + -webkit-border-radius: 0 4px 0 0; + -moz-border-radius: 0 4px 0 0; + border-radius: 0 4px 0 0; +} +.bordered-table tbody tr:last-child td:first-child { + -webkit-border-radius: 0 0 0 4px; + -moz-border-radius: 0 0 0 4px; + border-radius: 0 0 0 4px; +} +.bordered-table tbody tr:last-child td:last-child { + -webkit-border-radius: 0 0 4px 0; + -moz-border-radius: 0 0 4px 0; + border-radius: 0 0 4px 0; +} +table .span1 { + width: 20px; +} +table .span2 { + width: 60px; +} +table .span3 { + width: 100px; +} +table .span4 { + width: 140px; +} +table .span5 { + width: 180px; +} +table .span6 { + width: 220px; +} +table .span7 { + width: 260px; +} +table .span8 { + width: 300px; +} +table .span9 { + width: 340px; +} +table .span10 { + width: 380px; +} +table .span11 { + width: 420px; +} +table .span12 { + width: 460px; +} +table .span13 { + width: 500px; +} +table .span14 { + width: 540px; +} +table .span15 { + width: 580px; +} +table .span16 { + width: 620px; +} +.zebra-striped tbody tr:nth-child(odd) td, .zebra-striped tbody tr:nth-child(odd) th { + background-color: #f9f9f9; +} +.zebra-striped tbody tr:hover td, .zebra-striped tbody tr:hover th { + background-color: #f5f5f5; +} +table .header { + cursor: pointer; +} +table .header:after { + content: ""; + float: right; + margin-top: 7px; + border-width: 0 4px 4px; + border-style: solid; + border-color: #000 transparent; + visibility: hidden; +} +table .headerSortUp, table .headerSortDown { + background-color: rgba(141, 192, 219, 0.25); + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); +} +table .header:hover:after { + visibility: visible; +} +table .headerSortDown:after, table .headerSortDown:hover:after { + visibility: visible; + filter: alpha(opacity=60); + -khtml-opacity: 0.6; + -moz-opacity: 0.6; + opacity: 0.6; +} +table .headerSortUp:after { + border-bottom: none; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 4px solid #000; + visibility: visible; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + filter: alpha(opacity=60); + -khtml-opacity: 0.6; + -moz-opacity: 0.6; + opacity: 0.6; +} +table .blue { + color: #049cdb; + border-bottom-color: #049cdb; +} +table .headerSortUp.blue, table .headerSortDown.blue { + background-color: #ade6fe; +} +table .green { + color: #46a546; + border-bottom-color: #46a546; +} +table .headerSortUp.green, table .headerSortDown.green { + background-color: #cdeacd; +} +table .red { + color: #9d261d; + border-bottom-color: #9d261d; +} +table .headerSortUp.red, table .headerSortDown.red { + background-color: #f4c8c5; +} +table .yellow { + color: #ffc40d; + border-bottom-color: #ffc40d; +} +table .headerSortUp.yellow, table .headerSortDown.yellow { + background-color: #fff6d9; +} +table .orange { + color: #f89406; + border-bottom-color: #f89406; +} +table .headerSortUp.orange, table .headerSortDown.orange { + background-color: #fee9cc; +} +table .purple { + color: #7a43b6; + border-bottom-color: #7a43b6; +} +table .headerSortUp.purple, table .headerSortDown.purple { + background-color: #e2d5f0; +} +/* Patterns.less + * Repeatable UI elements outside the base styles provided from the scaffolding + * ---------------------------------------------------------------------------- */ +.topbar { + height: 40px; + position: fixed; + top: 0; + left: 0; + right: 0; + z-index: 10000; + overflow: visible; +} +.topbar a { + color: #bfbfbf; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.topbar h3 a:hover, .topbar .brand:hover, .topbar ul .active > a { + background-color: #333; + background-color: rgba(255, 255, 255, 0.05); + color: #ffffff; + text-decoration: none; +} +.topbar h3 { + position: relative; +} +.topbar h3 a, .topbar .brand { + float: left; + display: block; + padding: 8px 20px 12px; + margin-left: -20px; + color: #ffffff; + font-size: 20px; + font-weight: 200; + line-height: 1; +} +.topbar p { + margin: 0; + line-height: 40px; +} +.topbar p a:hover { + background-color: transparent; + color: #ffffff; +} +.topbar form { + float: left; + margin: 5px 0 0 0; + position: relative; + filter: alpha(opacity=100); + -khtml-opacity: 1; + -moz-opacity: 1; + opacity: 1; +} +.topbar form.pull-right { + float: right; +} +.topbar input { + background-color: #444; + background-color: rgba(255, 255, 255, 0.3); + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: normal; + font-weight: 13px; + line-height: 1; + padding: 4px 9px; + color: #ffffff; + color: rgba(255, 255, 255, 0.75); + border: 1px solid #111; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.25); + -webkit-transition: none; + -moz-transition: none; + -ms-transition: none; + -o-transition: none; + transition: none; +} +.topbar input:-moz-placeholder { + color: #e6e6e6; +} +.topbar input::-webkit-input-placeholder { + color: #e6e6e6; +} +.topbar input:hover { + background-color: #bfbfbf; + background-color: rgba(255, 255, 255, 0.5); + color: #ffffff; +} +.topbar input:focus, .topbar input.focused { + outline: 0; + background-color: #ffffff; + color: #404040; + text-shadow: 0 1px 0 #ffffff; + border: 0; + padding: 5px 10px; + -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); +} +.topbar-inner, .topbar .fill { + background-color: #222; + background-color: #222222; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#333333), to(#222222)); + background-image: -moz-linear-gradient(top, #333333, #222222); + background-image: -ms-linear-gradient(top, #333333, #222222); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #333333), color-stop(100%, #222222)); + background-image: -webkit-linear-gradient(top, #333333, #222222); + background-image: -o-linear-gradient(top, #333333, #222222); + background-image: linear-gradient(top, #333333, #222222); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0); + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1); +} +.topbar div > ul, .nav { + display: block; + float: left; + margin: 0 10px 0 0; + position: relative; + left: 0; +} +.topbar div > ul > li, .nav > li { + display: block; + float: left; +} +.topbar div > ul a, .nav a { + display: block; + float: none; + padding: 10px 10px 11px; + line-height: 19px; + text-decoration: none; +} +.topbar div > ul a:hover, .nav a:hover { + color: #ffffff; + text-decoration: none; +} +.topbar div > ul .active > a, .nav .active > a { + background-color: #222; + background-color: rgba(0, 0, 0, 0.5); +} +.topbar div > ul.secondary-nav, .nav.secondary-nav { + float: right; + margin-left: 10px; + margin-right: 0; +} +.topbar div > ul.secondary-nav .menu-dropdown, +.nav.secondary-nav .menu-dropdown, +.topbar div > ul.secondary-nav .dropdown-menu, +.nav.secondary-nav .dropdown-menu { + right: 0; + border: 0; +} +.topbar div > ul a.menu:hover, +.nav a.menu:hover, +.topbar div > ul li.open .menu, +.nav li.open .menu, +.topbar div > ul .dropdown-toggle:hover, +.nav .dropdown-toggle:hover, +.topbar div > ul .dropdown.open .dropdown-toggle, +.nav .dropdown.open .dropdown-toggle { + background: #444; + background: rgba(255, 255, 255, 0.05); +} +.topbar div > ul .menu-dropdown, +.nav .menu-dropdown, +.topbar div > ul .dropdown-menu, +.nav .dropdown-menu { + background-color: #333; +} +.topbar div > ul .menu-dropdown a.menu, +.nav .menu-dropdown a.menu, +.topbar div > ul .dropdown-menu a.menu, +.nav .dropdown-menu a.menu, +.topbar div > ul .menu-dropdown .dropdown-toggle, +.nav .menu-dropdown .dropdown-toggle, +.topbar div > ul .dropdown-menu .dropdown-toggle, +.nav .dropdown-menu .dropdown-toggle { + color: #ffffff; +} +.topbar div > ul .menu-dropdown a.menu.open, +.nav .menu-dropdown a.menu.open, +.topbar div > ul .dropdown-menu a.menu.open, +.nav .dropdown-menu a.menu.open, +.topbar div > ul .menu-dropdown .dropdown-toggle.open, +.nav .menu-dropdown .dropdown-toggle.open, +.topbar div > ul .dropdown-menu .dropdown-toggle.open, +.nav .dropdown-menu .dropdown-toggle.open { + background: #444; + background: rgba(255, 255, 255, 0.05); +} +.topbar div > ul .menu-dropdown li a, +.nav .menu-dropdown li a, +.topbar div > ul .dropdown-menu li a, +.nav .dropdown-menu li a { + color: #999; + text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5); +} +.topbar div > ul .menu-dropdown li a:hover, +.nav .menu-dropdown li a:hover, +.topbar div > ul .dropdown-menu li a:hover, +.nav .dropdown-menu li a:hover { + background-color: #191919; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#292929), to(#191919)); + background-image: -moz-linear-gradient(top, #292929, #191919); + background-image: -ms-linear-gradient(top, #292929, #191919); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #292929), color-stop(100%, #191919)); + background-image: -webkit-linear-gradient(top, #292929, #191919); + background-image: -o-linear-gradient(top, #292929, #191919); + background-image: linear-gradient(top, #292929, #191919); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#292929', endColorstr='#191919', GradientType=0); + color: #ffffff; +} +.topbar div > ul .menu-dropdown .active a, +.nav .menu-dropdown .active a, +.topbar div > ul .dropdown-menu .active a, +.nav .dropdown-menu .active a { + color: #ffffff; +} +.topbar div > ul .menu-dropdown .divider, +.nav .menu-dropdown .divider, +.topbar div > ul .dropdown-menu .divider, +.nav .dropdown-menu .divider { + background-color: #222; + border-color: #444; +} +.topbar ul .menu-dropdown li a, .topbar ul .dropdown-menu li a { + padding: 4px 15px; +} +li.menu, .dropdown { + position: relative; +} +a.menu:after, .dropdown-toggle:after { + width: 0; + height: 0; + display: inline-block; + content: "↓"; + text-indent: -99999px; + vertical-align: top; + margin-top: 8px; + margin-left: 4px; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 4px solid #ffffff; + filter: alpha(opacity=50); + -khtml-opacity: 0.5; + -moz-opacity: 0.5; + opacity: 0.5; +} +.menu-dropdown, .dropdown-menu { + background-color: #ffffff; + float: left; + display: none; + position: absolute; + top: 40px; + z-index: 900; + min-width: 160px; + max-width: 220px; + _width: 160px; + margin-left: 0; + margin-right: 0; + padding: 6px 0; + zoom: 1; + border-color: #999; + border-color: rgba(0, 0, 0, 0.2); + border-style: solid; + border-width: 0 1px 1px; + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.menu-dropdown li, .dropdown-menu li { + float: none; + display: block; + background-color: none; +} +.menu-dropdown .divider, .dropdown-menu .divider { + height: 1px; + margin: 5px 0; + overflow: hidden; + background-color: #eee; + border-bottom: 1px solid #ffffff; +} +.topbar .dropdown-menu a, .dropdown-menu a { + display: block; + padding: 4px 15px; + clear: both; + font-weight: normal; + line-height: 18px; + color: #808080; + text-shadow: 0 1px 0 #ffffff; +} +.topbar .dropdown-menu a:hover, +.dropdown-menu a:hover, +.topbar .dropdown-menu a.hover, +.dropdown-menu a.hover { + background-color: #dddddd; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#eeeeee), to(#dddddd)); + background-image: -moz-linear-gradient(top, #eeeeee, #dddddd); + background-image: -ms-linear-gradient(top, #eeeeee, #dddddd); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, #dddddd)); + background-image: -webkit-linear-gradient(top, #eeeeee, #dddddd); + background-image: -o-linear-gradient(top, #eeeeee, #dddddd); + background-image: linear-gradient(top, #eeeeee, #dddddd); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#dddddd', GradientType=0); + color: #404040; + text-decoration: none; + -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025); + -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025); + box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.025), inset 0 -1px rgba(0, 0, 0, 0.025); +} +.open .menu, +.dropdown.open .menu, +.open .dropdown-toggle, +.dropdown.open .dropdown-toggle { + color: #ffffff; + background: #ccc; + background: rgba(0, 0, 0, 0.3); +} +.open .menu-dropdown, +.dropdown.open .menu-dropdown, +.open .dropdown-menu, +.dropdown.open .dropdown-menu { + display: block; +} +.tabs, .pills { + margin: 0 0 18px; + padding: 0; + list-style: none; + zoom: 1; +} +.tabs:before, +.pills:before, +.tabs:after, +.pills:after { + display: table; + content: ""; + zoom: 1; +} +.tabs:after, .pills:after { + clear: both; +} +.tabs > li, .pills > li { + float: left; +} +.tabs > li > a, .pills > li > a { + display: block; +} +.tabs { + border-color: #ddd; + border-style: solid; + border-width: 0 0 1px; +} +.tabs > li { + position: relative; + margin-bottom: -1px; +} +.tabs > li > a { + padding: 0 15px; + margin-right: 2px; + line-height: 34px; + border: 1px solid transparent; + -webkit-border-radius: 4px 4px 0 0; + -moz-border-radius: 4px 4px 0 0; + border-radius: 4px 4px 0 0; +} +.tabs > li > a:hover { + text-decoration: none; + background-color: #eee; + border-color: #eee #eee #ddd; +} +.tabs .active > a, .tabs .active > a:hover { + color: #808080; + background-color: #ffffff; + border: 1px solid #ddd; + border-bottom-color: transparent; + cursor: default; +} +.tabs .menu-dropdown, .tabs .dropdown-menu { + top: 35px; + border-width: 1px; + -webkit-border-radius: 0 6px 6px 6px; + -moz-border-radius: 0 6px 6px 6px; + border-radius: 0 6px 6px 6px; +} +.tabs a.menu:after, .tabs .dropdown-toggle:after { + border-top-color: #999; + margin-top: 15px; + margin-left: 5px; +} +.tabs li.open.menu .menu, .tabs .open.dropdown .dropdown-toggle { + border-color: #999; +} +.tabs li.open a.menu:after, .tabs .dropdown.open .dropdown-toggle:after { + border-top-color: #555; +} +.pills a { + margin: 5px 3px 5px 0; + padding: 0 15px; + line-height: 30px; + text-shadow: 0 1px 1px #ffffff; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} +.pills a:hover { + color: #ffffff; + text-decoration: none; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); + background-color: #00438a; +} +.pills .active a { + color: #ffffff; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); + background-color: #0069d6; +} +.pills-vertical > li { + float: none; +} +.tab-content > .tab-pane, +.pill-content > .pill-pane, +.tab-content > div, +.pill-content > div { + display: none; +} +.tab-content > .active, .pill-content > .active { + display: block; +} +.breadcrumb { + padding: 7px 14px; + margin: 0 0 18px; + background-color: #f5f5f5; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#ffffff), to(#f5f5f5)); + background-image: -moz-linear-gradient(top, #ffffff, #f5f5f5); + background-image: -ms-linear-gradient(top, #ffffff, #f5f5f5); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #f5f5f5)); + background-image: -webkit-linear-gradient(top, #ffffff, #f5f5f5); + background-image: -o-linear-gradient(top, #ffffff, #f5f5f5); + background-image: linear-gradient(top, #ffffff, #f5f5f5); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0); + border: 1px solid #ddd; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + -webkit-box-shadow: inset 0 1px 0 #ffffff; + -moz-box-shadow: inset 0 1px 0 #ffffff; + box-shadow: inset 0 1px 0 #ffffff; +} +.breadcrumb li { + display: inline; + text-shadow: 0 1px 0 #ffffff; +} +.breadcrumb .divider { + padding: 0 5px; + color: #bfbfbf; +} +.breadcrumb .active a { + color: #404040; +} +.hero-unit { + background-color: #f5f5f5; + margin-bottom: 30px; + padding: 60px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.hero-unit h1 { + margin-bottom: 0; + font-size: 60px; + line-height: 1; + letter-spacing: -1px; +} +.hero-unit p { + font-size: 18px; + font-weight: 200; + line-height: 27px; +} +footer { + margin-top: 17px; + padding-top: 17px; + border-top: 1px solid #eee; +} +.page-header { + margin-bottom: 17px; + border-bottom: 1px solid #ddd; + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} +.page-header h1 { + margin-bottom: 8px; +} +.btn.danger, +.alert-message.danger, +.btn.danger:hover, +.alert-message.danger:hover, +.btn.error, +.alert-message.error, +.btn.error:hover, +.alert-message.error:hover, +.btn.success, +.alert-message.success, +.btn.success:hover, +.alert-message.success:hover, +.btn.info, +.alert-message.info, +.btn.info:hover, +.alert-message.info:hover { + color: #ffffff; +} +.btn .close, .alert-message .close { + font-family: Arial, sans-serif; + line-height: 18px; +} +.btn.danger, +.alert-message.danger, +.btn.error, +.alert-message.error { + background-color: #c43c35; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35)); + background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35)); + background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); + background-image: linear-gradient(top, #ee5f5b, #c43c35); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #c43c35 #c43c35 #882a25; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn.success, .alert-message.success { + background-color: #57a957; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957)); + background-image: -moz-linear-gradient(top, #62c462, #57a957); + background-image: -ms-linear-gradient(top, #62c462, #57a957); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957)); + background-image: -webkit-linear-gradient(top, #62c462, #57a957); + background-image: -o-linear-gradient(top, #62c462, #57a957); + background-image: linear-gradient(top, #62c462, #57a957); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #57a957 #57a957 #3d773d; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn.info, .alert-message.info { + background-color: #339bb9; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9)); + background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); + background-image: -ms-linear-gradient(top, #5bc0de, #339bb9); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9)); + background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); + background-image: -o-linear-gradient(top, #5bc0de, #339bb9); + background-image: linear-gradient(top, #5bc0de, #339bb9); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #339bb9 #339bb9 #22697d; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn { + cursor: pointer; + display: inline-block; + background-color: #e6e6e6; + background-repeat: no-repeat; + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6)); + background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6); + background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); + padding: 5px 14px 6px; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + color: #333; + font-size: 13px; + line-height: normal; + border: 1px solid #ccc; + border-bottom-color: #bbb; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -webkit-transition: 0.1s linear all; + -moz-transition: 0.1s linear all; + -ms-transition: 0.1s linear all; + -o-transition: 0.1s linear all; + transition: 0.1s linear all; +} +.btn:hover { + background-position: 0 -15px; + color: #333; + text-decoration: none; +} +.btn:focus { + outline: 1px dotted #666; +} +.btn.primary { + color: #ffffff; + background-color: #0064cd; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); + background-image: -moz-linear-gradient(top, #049cdb, #0064cd); + background-image: -ms-linear-gradient(top, #049cdb, #0064cd); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); + background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); + background-image: -o-linear-gradient(top, #049cdb, #0064cd); + background-image: linear-gradient(top, #049cdb, #0064cd); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #0064cd #0064cd #003f81; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); +} +.btn.active, .btn:active { + -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); +} +.btn.disabled { + cursor: default; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + filter: alpha(opacity=65); + -khtml-opacity: 0.65; + -moz-opacity: 0.65; + opacity: 0.65; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.btn[disabled] { + cursor: default; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + filter: alpha(opacity=65); + -khtml-opacity: 0.65; + -moz-opacity: 0.65; + opacity: 0.65; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.btn.large { + font-size: 15px; + line-height: normal; + padding: 9px 14px 9px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.btn.small { + padding: 7px 9px 7px; + font-size: 11px; +} +:root .alert-message, :root .btn { + border-radius: 0 \0; +} +button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner { + padding: 0; + border: 0; +} +.close { + float: right; + color: #000000; + font-size: 20px; + font-weight: bold; + line-height: 13.5px; + text-shadow: 0 1px 0 #ffffff; + filter: alpha(opacity=25); + -khtml-opacity: 0.25; + -moz-opacity: 0.25; + opacity: 0.25; +} +.close:hover { + color: #000000; + text-decoration: none; + filter: alpha(opacity=40); + -khtml-opacity: 0.4; + -moz-opacity: 0.4; + opacity: 0.4; +} +.alert-message { + position: relative; + padding: 7px 15px; + margin-bottom: 18px; + color: #404040; + background-color: #eedc94; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#fceec1), to(#eedc94)); + background-image: -moz-linear-gradient(top, #fceec1, #eedc94); + background-image: -ms-linear-gradient(top, #fceec1, #eedc94); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fceec1), color-stop(100%, #eedc94)); + background-image: -webkit-linear-gradient(top, #fceec1, #eedc94); + background-image: -o-linear-gradient(top, #fceec1, #eedc94); + background-image: linear-gradient(top, #fceec1, #eedc94); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fceec1', endColorstr='#eedc94', GradientType=0); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border-color: #eedc94 #eedc94 #e4c652; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + border-width: 1px; + border-style: solid; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); +} +.alert-message .close { + margin-top: 1px; + *margin-top: 0; +} +.alert-message a { + font-weight: bold; + color: #404040; +} +.alert-message.danger p a, +.alert-message.error p a, +.alert-message.success p a, +.alert-message.info p a { + color: #ffffff; +} +.alert-message h5 { + line-height: 18px; +} +.alert-message p { + margin-bottom: 0; +} +.alert-message div { + margin-top: 5px; + margin-bottom: 2px; + line-height: 28px; +} +.alert-message .btn { + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); +} +.alert-message.block-message { + background-image: none; + background-color: #fdf5d9; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + padding: 14px; + border-color: #fceec1; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.alert-message.block-message ul, .alert-message.block-message p { + margin-right: 30px; +} +.alert-message.block-message ul { + margin-bottom: 0; +} +.alert-message.block-message li { + color: #404040; +} +.alert-message.block-message .alert-actions { + margin-top: 5px; +} +.alert-message.block-message.error, .alert-message.block-message.success, .alert-message.block-message.info { + color: #404040; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} +.alert-message.block-message.error { + background-color: #fddfde; + border-color: #fbc7c6; +} +.alert-message.block-message.success { + background-color: #d1eed1; + border-color: #bfe7bf; +} +.alert-message.block-message.info { + background-color: #ddf4fb; + border-color: #c6edf9; +} +.alert-message.block-message.danger p a, +.alert-message.block-message.error p a, +.alert-message.block-message.success p a, +.alert-message.block-message.info p a { + color: #404040; +} +.pagination { + height: 36px; + margin: 18px 0; +} +.pagination ul { + float: left; + margin: 0; + border: 1px solid #ddd; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); +} +.pagination li { + display: inline; +} +.pagination a { + float: left; + padding: 0 14px; + line-height: 34px; + border-right: 1px solid; + border-right-color: #ddd; + border-right-color: rgba(0, 0, 0, 0.15); + *border-right-color: #ddd; + /* IE6-7 */ + + text-decoration: none; +} +.pagination a:hover, .pagination .active a { + background-color: #c7eefe; +} +.pagination .disabled a, .pagination .disabled a:hover { + background-color: transparent; + color: #bfbfbf; +} +.pagination .next a { + border: 0; +} +.well { + background-color: #f5f5f5; + margin-bottom: 20px; + padding: 19px; + min-height: 20px; + border: 1px solid #eee; + border: 1px solid rgba(0, 0, 0, 0.05); + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.modal-backdrop { + background-color: #000000; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 10000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop, .modal-backdrop.fade.in { + filter: alpha(opacity=80); + -khtml-opacity: 0.8; + -moz-opacity: 0.8; + opacity: 0.8; +} +.modal { + position: fixed; + top: 50%; + left: 50%; + z-index: 11000; + width: 560px; + margin: -250px 0 0 -280px; + background-color: #ffffff; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, 0.3); + *border: 1px solid #999; + /* IE6-7 */ + + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.modal .close { + margin-top: 7px; +} +.modal.fade { + -webkit-transition: opacity .3s linear, top .3s ease-out; + -moz-transition: opacity .3s linear, top .3s ease-out; + -ms-transition: opacity .3s linear, top .3s ease-out; + -o-transition: opacity .3s linear, top .3s ease-out; + transition: opacity .3s linear, top .3s ease-out; + top: -25%; +} +.modal.fade.in { + top: 50%; +} +.modal-header { + border-bottom: 1px solid #eee; + padding: 5px 15px; +} +.modal-body { + padding: 15px; +} +.modal-body form { + margin-bottom: 0; +} +.modal-footer { + background-color: #f5f5f5; + padding: 14px 15px 15px; + border-top: 1px solid #ddd; + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + -webkit-box-shadow: inset 0 1px 0 #ffffff; + -moz-box-shadow: inset 0 1px 0 #ffffff; + box-shadow: inset 0 1px 0 #ffffff; + zoom: 1; + margin-bottom: 0; +} +.modal-footer:before, .modal-footer:after { + display: table; + content: ""; + zoom: 1; +} +.modal-footer:after { + clear: both; +} +.modal-footer .btn { + float: right; + margin-left: 5px; +} +.modal .popover, .modal .twipsy { + z-index: 12000; +} +.twipsy { + display: block; + position: absolute; + visibility: visible; + padding: 5px; + font-size: 11px; + z-index: 1000; + filter: alpha(opacity=80); + -khtml-opacity: 0.8; + -moz-opacity: 0.8; + opacity: 0.8; +} +.twipsy.fade.in { + filter: alpha(opacity=80); + -khtml-opacity: 0.8; + -moz-opacity: 0.8; + opacity: 0.8; +} +.twipsy.above .twipsy-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid #000000; +} +.twipsy.left .twipsy-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-left: 5px solid #000000; +} +.twipsy.below .twipsy-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid #000000; +} +.twipsy.right .twipsy-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid #000000; +} +.twipsy-inner { + padding: 3px 8px; + background-color: #000000; + color: white; + text-align: center; + max-width: 200px; + text-decoration: none; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.twipsy-arrow { + position: absolute; + width: 0; + height: 0; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1000; + padding: 5px; + display: none; +} +.popover.above .arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid #000000; +} +.popover.right .arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid #000000; +} +.popover.below .arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid #000000; +} +.popover.left .arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-left: 5px solid #000000; +} +.popover .arrow { + position: absolute; + width: 0; + height: 0; +} +.popover .inner { + background: #000000; + background: rgba(0, 0, 0, 0.8); + padding: 3px; + overflow: hidden; + width: 280px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); +} +.popover .title { + background-color: #f5f5f5; + padding: 9px 15px; + line-height: 1; + -webkit-border-radius: 3px 3px 0 0; + -moz-border-radius: 3px 3px 0 0; + border-radius: 3px 3px 0 0; + border-bottom: 1px solid #eee; +} +.popover .content { + background-color: #ffffff; + padding: 14px; + -webkit-border-radius: 0 0 3px 3px; + -moz-border-radius: 0 0 3px 3px; + border-radius: 0 0 3px 3px; + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.popover .content p, .popover .content ul, .popover .content ol { + margin-bottom: 0; +} +.fade { + -webkit-transition: opacity 0.15s linear; + -moz-transition: opacity 0.15s linear; + -ms-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; + opacity: 0; +} +.fade.in { + opacity: 1; +} +.label { + padding: 1px 3px 2px; + font-size: 9.75px; + font-weight: bold; + color: #ffffff; + text-transform: uppercase; + white-space: nowrap; + background-color: #bfbfbf; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.label.important { + background-color: #c43c35; +} +.label.warning { + background-color: #f89406; +} +.label.success { + background-color: #46a546; +} +.label.notice { + background-color: #62cffc; +} +.media-grid { + margin-left: -20px; + margin-bottom: 0; + zoom: 1; +} +.media-grid:before, .media-grid:after { + display: table; + content: ""; + zoom: 1; +} +.media-grid:after { + clear: both; +} +.media-grid li { + display: inline; +} +.media-grid a { + float: left; + padding: 4px; + margin: 0 0 18px 20px; + border: 1px solid #ddd; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075); +} +.media-grid a img { + display: block; +} +.media-grid a:hover { + border-color: #0069d6; + -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); +} diff --git a/html/_static/searchtools.js b/html/_static/searchtools.js index 4a78f9130e5..dae92b5e5a6 100644 --- a/html/_static/searchtools.js +++ b/html/_static/searchtools.js @@ -363,13 +363,10 @@ var Search = { var fullname = (prefix ? prefix + '.' : '') + name; if (fullname.toLowerCase().indexOf(object) > -1) { match = objects[prefix][name]; - descr = objnames[match[1]][2] + _(', in ') + titles[match[0]]; - anchor = match[3]; - if (anchor == '') - anchor = fullname; - else if (anchor == '-') - anchor = objnames[match[1]][1] + '-' + fullname; - result = [filenames[match[0]], fullname, '#'+anchor, descr]; + descr = objnames[match[1]] + _(', in ') + titles[match[0]]; + // XXX the generated anchors are not generally correct + // XXX there may be custom prefixes + result = [filenames[match[0]], fullname, '#'+fullname, descr]; switch (match[2]) { case 1: objectResults.push(result); break; case 0: importantResults.push(result); break; @@ -492,7 +489,7 @@ var Search = { listItem.slideDown(5, function() { displayNextItem(); }); - }, "text"); + }); } else { // no source available, just display title Search.output.append(listItem); diff --git a/html/api.html b/html/api.html index cd965fc710b..cc9d879cb2e 100644 --- a/html/api.html +++ b/html/api.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Using the Python API — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +

      Using the Python API

      The Python API is very powerful, and is how the ansible CLI and ansible-playbook @@ -118,66 +217,16 @@ command line tools ansible

      -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      Previous topic

      -

      Playbooks: Ansible for Deployment, Configuration Management, and Orchestration

      -

      Next topic

      -

      Man Pages

      -

      This Page

      - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/examples.html b/html/examples.html index d60197c19f8..3ba49ece2d7 100644 --- a/html/examples.html +++ b/html/examples.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Command Line Examples — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +

      Command Line Examples

      The following examples show how to use /usr/bin/ansible for running ad-hoc tasks. @@ -58,7 +161,7 @@ using /usr/bin/ansible-playbook – the concepts port over dire

      Ansible Modules
      A list of available modules
      -
      Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
      +
      Playbooks
      Alternative ways to use ansible
      @@ -116,70 +219,16 @@ commands or software upgrades only.

      -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      Previous topic

      -

      The Inventory File, Patterns, and Groups

      -

      Next topic

      -

      Ansible Modules

      -

      This Page

      - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/genindex.html b/html/genindex.html index 64782577eee..295feee76a2 100644 --- a/html/genindex.html +++ b/html/genindex.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Index — Ansible v0.0.1 documentation + + - + + + + + - - -
      -
      -
      -
      + + +
      +

      Index

      @@ -48,44 +144,16 @@
      -
      -
      -
      -
      -
      - - - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/gettingstarted.html b/html/gettingstarted.html index 679874cb4e9..86607a81062 100644 --- a/html/gettingstarted.html +++ b/html/gettingstarted.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Getting Started — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +

      Getting Started

      How to download ansible and get started using it

      @@ -56,7 +162,7 @@
      Command Line Examples
      Examples of basic commands
      -
      Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
      +
      Playbooks
      Learning ansible’s configuration management language
      @@ -144,73 +250,16 @@ have a working infrastructure!

      -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      Previous topic

      -

      Ansible

      -

      Next topic

      -

      The Inventory File, Patterns, and Groups

      -

      This Page

      - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/index.html b/html/index.html index a5cea2d6a98..de542f65209 100644 --- a/html/index.html +++ b/html/index.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Ansible — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +

      Ansible

      Ansible is a radically simple deployment, configuration, and command execution framework. @@ -131,7 +236,7 @@ short & simple, and the source will be blindingly obvious.

    • YAML Basics
    -
  • Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
  • -
    -
    -
    -
    -
    -

    Table Of Contents

    - - -

    Next topic

    -

    Getting Started

    -

    This Page

    - - - -
    -
    -
    -
    - - +
    +
    +

    Back to top

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on Mar 09, 2012.
    + Created using Sphinx 1.0.7.
    +

    +
    +
    \ No newline at end of file diff --git a/html/man.html b/html/man.html index ab7a6c270f0..8dadd8e2876 100644 --- a/html/man.html +++ b/html/man.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Man Pages — Ansible v0.0.1 documentation + + + + - + + + - - -
    -
    -
    -
    + + +
    +

    Man Pages

    Ansible’s manpage lists available command line options.

    @@ -56,60 +156,16 @@
    -
    -
    -
    -
    -
    -

    Table Of Contents

    - - -

    Previous topic

    -

    Using the Python API

    -

    This Page

    - - - -
    -
    -
    -
    - - +
    +
    +

    Back to top

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on Mar 09, 2012.
    + Created using Sphinx 1.0.7.
    +

    +
    +
    \ No newline at end of file diff --git a/html/man/ansible-modules.5.html b/html/man/ansible-modules.5.html index 83ffc3628c4..819a66675ad 100644 --- a/html/man/ansible-modules.5.html +++ b/html/man/ansible-modules.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through +ansible-modules

    Name

    ansible-modules — stock modules shipped with ansible

    DESCRIPTION

    Ansible ships with a number of modules that can be executed directly on remote hosts or through ansible playbooks.

    IDEMPOTENCE

    Most modules other than command are idempotent, meaning they will seek to avoid changes unless a change needs to be made. When using ansible playbooks, these modules can trigger change events, as described in ansible-playbooks(5).

    Unless otherwise noted, all modules support change hooks.

    command

    The command module takes the command name followed by a list of arguments, space delimited. diff --git a/html/man/ansible-playbook.5.html b/html/man/ansible-playbook.5.html index 4ed86baa077..8ff59074f8c 100644 --- a/html/man/ansible-playbook.5.html +++ b/html/man/ansible-playbook.5.html @@ -1,6 +1,6 @@ -ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. +ansible-modules

    Name

    ansible-playbook — format and function of an ansible playbook file

    DESCRIPTION

    Ansible ships with ansible-playbook, a tool for running playbooks. Playbooks can represent frequent tasks, desired system configurations, or deployment processes.

    FORMAT

    Playbooks are written in YAML.

    EXAMPLE

    See:

    • https://github.com/mpdehaan/ansible/blob/master/examples/playbook.yml diff --git a/html/man/ansible.1.html b/html/man/ansible.1.html index 972bc24aab6..d7c0c759c0b 100644 --- a/html/man/ansible.1.html +++ b/html/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

      Name

      ansible — run a command somewhere else

      Synopsis

      ansible <host-pattern> [-f forks] [-m module_name] [-a args]

      DESCRIPTION

      Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

      ARGUMENTS

      host-pattern
      diff --git a/html/modules.html b/html/modules.html index 3b01f52e5cc..00f1e48f3c2 100644 --- a/html/modules.html +++ b/html/modules.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Ansible Modules — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +

      Ansible Modules

      Ansible ships with a number of modules that can be executed directly on remote hosts or through @@ -57,7 +165,7 @@ ansible playbooks.

      Command Line Examples
      Examples of using modules in /usr/bin/ansible
      -
      Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
      +
      Playbooks
      Examples of using modules with /usr/bin/ansible-playbook
      Using the Python API
      Examples of using modules with the Python API
      @@ -192,75 +300,16 @@ the command line, passing them arguments just like they would be passed with ans
      -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      Previous topic

      -

      Command Line Examples

      -

      Next topic

      -

      YAML Format

      -

      This Page

      - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/objects.inv b/html/objects.inv index 8289339b8a4591527084bf71af7870bde0bcd190..f1982e0d83b519e57088e5565f3af95583ea31f4 100644 GIT binary patch delta 151 zcmV;I0BHZ-0f_>TdVg(>K?=e!5JmSn#egnb!L0{SToelS0;4lDg=7+vRP60-NV=%F zegA#_w~i(u{y @@ -10,6 +9,8 @@ The Inventory File, Patterns, and Groups — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +
      -

      The Inventory File, Patterns, and Groups

      +

      The Inventory File, Patterns, and Groups

      How to select hosts you wish to manage

      See also

      Command Line Examples
      Examples of basic commands
      -
      Playbooks: Ansible for Deployment, Configuration Management, and Orchestration
      +
      Playbooks
      Learning ansible’s configuration management language
      @@ -88,15 +188,16 @@ which defaults to /etc/ansible/hosts, and looks like this:

      one.example.com
       one.example.com:two.example.com
      -

      The following patterns address one or more groups, which are denoted with the bracket -headers in the inventory file:

      +

      The following patterns address one or more groups, which are denoted +with the bracket headers in the inventory file:

      webservers
       webservers:dbservers
      -

      Individual hosts, but not groups, can also be referenced using wildcards:

      -
      -
      *.example.com -*.com
      +

      Individual hosts, but not groups, can also be referenced using +wildcards:

      +
      *.example.com
      +*.com
      +

      It’s also ok to mix wildcard patterns and groups at the same time:

      one*.com:dbservers
      @@ -105,67 +206,16 @@ webservers:dbservers
      -
      -
      -
      -
      -
      -

      Table Of Contents

      - - -

      Previous topic

      -

      Getting Started

      -

      Next topic

      -

      Command Line Examples

      -

      This Page

      - - - -
      -
      -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/playbooks.html b/html/playbooks.html index 58baa5b5a38..54a50da4f9c 100644 --- a/html/playbooks.html +++ b/html/playbooks.html @@ -1,5 +1,4 @@ - @@ -7,9 +6,11 @@ - Playbooks: Ansible for Deployment, Configuration Management, and Orchestration — Ansible v0.0.1 documentation + Playbooks — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      + +
      +

      Playbooks

      See also

      @@ -61,16 +170,23 @@
      Learn about how to select hosts
      -

      Playbooks are a completely different way to use ansible and are particularly awesome.

      -

      They are the basis for a really simple configuration management and multi-machine deployment system, unlike any that already exist, and one that is very well suited to deploying complex applications.

      -

      While you might run the main /usr/bin/ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec.

      +

      Playbooks are a completely different way to use ansible and are +particularly awesome.

      +

      They are the basis for a really simple configuration management and +multi-machine deployment system, unlike any that already exist, and +one that is very well suited to deploying complex applications.

      +

      While you might run the main /usr/bin/ansible program for ad-hoc +tasks, playbooks are more likely to be kept in source control and used +to push out your configuration or assure the configurations of your +remote systems are in spec.

      Playbook Example

      -

      Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed -of one or more ‘plays’ in a list. By composing a playbook of multiple ‘plays’, it is possible -to orchestrate multi-machine deployments, running certain steps on all machines in -the webservers group, then certain steps on the database server group, then more commands -back on the webservers group, etc:

      +

      Playbooks are expressed in YAML format and have a minimum of syntax. +Each playbook is composed of one or more ‘plays’ in a list. By +composing a playbook of multiple ‘plays’, it is possible to +orchestrate multi-machine deployments, running certain steps on all +machines in the webservers group, then certain steps on the database +server group, then more commands back on the webservers group, etc:

      ---
       - hosts: webservers
         vars:
      @@ -91,19 +207,24 @@ back on the webservers group, etc:

      Hosts line

      -

      The hosts line is a list of one or more groups or host patterns, seperated by colons, asdescribed in the ‘patterns’ documentation. This is just like the first parameter to /usr/bin/ansible.

      +

      The hosts line is a list of one or more groups or host patterns, +seperated by colons, asdescribed in the The Inventory File, Patterns, and Groups documentation. +This is just like the first parameter to /usr/bin/ansible.

      Vars section

      -

      A list of variables and values that can be used in the plays. These can be used in templates -or ‘action’ lines and are dereferenced using `jinja2` syntax like this:

      -
      {{ varname }}
      +

      A list of variables and values that can be used in the plays. These +can be used in templates or ‘action’ lines and are dereferenced using +`jinja2` syntax like this:

      +
      {{ varname }}
      +
      -

      Further, if there are discovered variables about the system (say, if facter or ohai were -installed) these variables bubble up back into the playbook, and can be used on each -system just like explicitly set variables. Facter variables are prefixed with ‘facter_‘ -and Ohai variables are prefixed with ‘ohai_‘. So for instance, if I wanted to write the -hostname into the /etc/motd file, I could say:

      +

      Further, if there are discovered variables about the system (say, if +facter or ohai were installed) these variables bubble up back into the +playbook, and can be used on each system just like explicitly set +variables. Facter variables are prefixed with facter_ and Ohai +variables are prefixed with ohai_. So for instance, if I wanted +to write the hostname into the /etc/motd file, I could say:

      - name: write the motd
       - action: template src=/srv/templates/motd.j2 dest=/etc/motd
      @@ -114,61 +235,72 @@ hostname into the /etc/motd file, I could say:

      Tasks list

      -

      Each play contains a list of tasks. Tasks are executed in order, one at a time, against -all machines matched by the play’s host pattern, before moving on to the next task.

      -

      Hosts with failed tasks are taken out of the rotation for the entire playbook. If things fail, -simply correct the playbook file and rerun.

      -

      Modules other than command are idempotent, meaning if you run them again, they will make the -changes they are told to make to bring the system to the desired state.

      +

      Each play contains a list of tasks. Tasks are executed in order, one +at a time, against all machines matched by the play’s host pattern, +before moving on to the next task.

      +

      Hosts with failed tasks are taken out of the rotation for the entire +playbook. If things fail, simply correct the playbook file and rerun.

      +

      Modules other than command are idempotent, meaning if you run them +again, they will make the changes they are told to make to bring the +system to the desired state.

      Task name and action

      -

      Every task must have a name, which is included in the output from running the playbook.

      -

      The action line is the name of an ansible module followed by parameters. Usually these -are expressed in key=value form, except for the command module, which looks just like a Linux/Unix -command line. See the module documentation for more info.

      -

      Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted -to make a directory on each system named after the hostname ... yeah, that’s I know silly ... you could -do it like so:

      +

      Every task must have a name, which is included in the output from +running the playbook.

      +

      The action line is the name of an ansible module followed by +parameters. Usually these are expressed in key=value form, except +for the command module, which looks just like a Linux/Unix command +line. See the module documentation for more info.

      +

      Variables, as mentioned above, can be used in action lines. So if, +hypothetically, you wanted to make a directory on each system named +after the hostname ... yeah, that’s I know silly ... you could do it +like so:

      - name: make a directory
       - action: mkdir /tmp/{{ facter_hostname }}

      Notify statements

      -

      Nearly all modules are written to be ‘idempotent’ and can signal when they have affected a change -on the remote system. If a notify statement is used, the named handler will be run against -each system where a change was effected, but NOT on systems where no change occurred. This happens -after all of the tasks are run. For example, if notifying Apache and potentially replacing lots of -configuration files, you could have Apache restart just once, at the end of a run. If you need -Apache restarted in the middle of a run, you could just make a task for it, no harm done. Notifiers -are optional.

      +

      Nearly all modules are written to be ‘idempotent’ and can signal when +they have affected a change on the remote system. If a notify +statement is used, the named handler will be run against each system +where a change was effected, but NOT on systems where no change +occurred. This happens after all of the tasks are run. For example, +if notifying Apache and potentially replacing lots of configuration +files, you could have Apache restart just once, at the end of a run. +If you need Apache restarted in the middle of a run, you could just +make a task for it, no harm done. Notifiers are optional.

      Handlers

      -

      Handlers are lists of tasks, not really any different from regular tasks, that are referenced -by name. Handlers are what notifiers notify. If nothing notifies a handler, it will not run. -Regardless of how many things notify a handler, it will run only once, after all of the tasks -complete in a particular play.

      +

      Handlers are lists of tasks, not really any different from regular +tasks, that are referenced by name. Handlers are what notifiers +notify. If nothing notifies a handler, it will not run. Regardless +of how many things notify a handler, it will run only once, after all +of the tasks complete in a particular play.

      Includes

      -

      Not all tasks have to be listed directly in the main file. An include file can contain -a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this (assume a variable named ‘user’):

      -
      {{ user }}
      +

      Not all tasks have to be listed directly in the main file. An include +file can contain a list of tasks (in YAML) as well, optionally passing +extra variables into the file. Variables passed in can be deferenced +like this (assume a variable named ‘user’):

      +
      {{ user }}
      +
      -

      For instance, if deploying multiple wordpress instances, I could contain all of my tasks -in a wordpress.yml file, and use it like so:

      +

      For instance, if deploying multiple wordpress instances, I could +contain all of my tasks in a wordpress.yml file, and use it like so:

      - tasks:
          - include: wordpress.yml user=timmy
          - include: wordpress.yml user=alice
          - include: wordpress.yml user=bob
      -

      In addition to the explicitly passed in parameters, all variables from the vars section -are also available.

      -

      The format of an included list of tasks or handlers looks just like a flat list of tasks. Here -is an example of what base.yml might look like:

      +

      In addition to the explicitly passed in parameters, all variables from +the vars section are also available.

      +

      The format of an included list of tasks or handlers looks just like a +flat list of tasks. Here is an example of what base.yml might look +like:

      ---
       - name: no selinux
         action: command /usr/sbin/setenforce 0
      @@ -177,16 +309,18 @@ is an example of what base.yml might look like:

      - name: this is just to show variables work here, favcolor={{ favcolor }} action: command /bin/true
      -

      As you can see above, variables in include files work just like they do in the main file. -Including a variable in the name of a task is a contrived example, you could also -pass them to the action command line or use them inside a template file.

      -

      Note that include statements are only usable from the top level playbook file. -At this time, includes can not include other includes.

      +

      As you can see above, variables in include files work just like they +do in the main file. Including a variable in the name of a task is a +contrived example, you could also pass them to the action command line +or use them inside a template file.

      +

      Note that include statements are only usable from the top level +playbook file. At this time, includes can not include other includes.

      Using Includes To Assign Classes of Systems

      -

      Include files are best used to reuse logic between playbooks. You could imagine -a playbook describing your entire infrastructure like this:

      +

      Include files are best used to reuse logic between playbooks. You +could imagine a playbook describing your entire infrastructure like +this:

      ---
       - hosts: atlanta-webservers
         vars:
      @@ -205,13 +339,14 @@ a playbook describing your entire infrastructure like this:

      handlers: - include: generic-handlers.yml
      -

      There is one (or more) play defined for each group of systems, and each play maps -each group includes one or more ‘class definitions’ telling the systems what they -are supposed to do or be.

      -

      Using a common handlers file could allow one task in ‘webservers’ to define ‘restart apache’, -and it could be reused between multiple plays.

      -

      Variables like ‘database’ above can be used in templates referenced from the -configuration file to generate machine specific variables.

      +

      There is one (or more) play defined for each group of systems, and +each play maps each group includes one or more ‘class definitions’ +telling the systems what they are supposed to do or be.

      +

      Using a common handlers file could allow one task in ‘webservers’ to +define ‘restart apache’, and it could be reused between multiple +plays.

      +

      Variables like ‘database’ above can be used in templates referenced +from the configuration file to generate machine specific variables.

      Asynchronous Actions and Polling

      @@ -226,76 +361,16 @@ configuration file to generate machine specific variables.

      -
      -
      -
      - -
      -
      - - +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/search.html b/html/search.html index f3f87515708..27f8fefb14f 100644 --- a/html/search.html +++ b/html/search.html @@ -1,5 +1,4 @@ - @@ -10,6 +9,8 @@ Search — Ansible v0.0.1 documentation + + + + - + + + - - -
      -
      -
      -
      + + +
      +

      Search

      @@ -70,28 +158,16 @@
      -
      -
      -
      -
      -
      -
      -
      -
      -
      - - +
      +
      +
      +

      Back to top

      +

      + © Copyright 2012 Michael DeHaan.
      + Last updated on Mar 09, 2012.
      + Created using Sphinx 1.0.7.
      +

      +
      +
      \ No newline at end of file diff --git a/html/searchindex.js b/html/searchindex.js index e8f431232da..ef32176ee26 100644 --- a/html/searchindex.js +++ b/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7],concept:7,mcollect:1,prefix:[2,3,7],code:[1,2,7],follow:[5,6,2,3,7],scp:7,bubbl:[2,3],middl:3,elsewher:7,program:[1,2,3],selinux:3,blindingli:1,spec:3,sourc:[1,6,2,3,7],everi:[4,3],string:2,fals:[4,2],failur:[6,2],veri:[1,6,3],affect:3,level:[4,2,3],id_rsa:[0,7],list:[1,2,3,4,5,7,8],item:[4,6],form:[4,3],dotnet:4,saltstack:1,straight:7,alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],download:0,further:3,port:7,even:7,what:[0,2,3],favcolor:[3,7],section:[1,2,3],abbrevi:4,version:[2,7],varnam:3,ever:1,method:6,told:3,tar:0,hash:2,abov:3,conf:[3,7],eckersberg:4,gener:3,here:[2,3,7],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],box:[1,2],great:1,ahead:3,precursor:1,technolog:1,step:[2,3],prior:2,pick:[4,7],action:[1,2,3],extrem:0,implement:6,commonli:7,ourselv:3,employe:4,via:[0,1],regardless:[4,1,3],extra:3,modul:[0,1,2,3,6,7],releas:0,unix:3,"boolean":4,instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,live:0,handler:[1,3,7],call:2,usr:[6,2,3,7],msg:[6,2],suppos:3,checkout:2,tell:[2,3,7],more:[0,5,2,3,1],flat:3,desir:3,idempot:[2,3,7],comparison:1,unneccessari:2,sshd:1,agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:6,join:1,ibm:1,module_arg:6,dest:[2,3,7],setup:[1,2,7],work:[7,0,5,3,1],knows_oop:4,remain:1,minimum:3,can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,0,2,3,1],purpos:2,root:[4,1,3],control:[1,2,3,7],want:[6,2,3,7],yamllint:4,process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],critic:1,liter:2,explor:0,occur:3,nearli:[2,3],alwai:2,multipl:[5,3,7],newlin:4,thoug:2,lame:4,capistrano:1,ping:[0,6,2,1],uptim:6,write:[4,1,2,3,7],how:[0,2,3,4,5,6,7],instead:2,simpl:[4,1,6,3,7],updat:7,map:3,financ:1,referenc:[5,3],clone:0,after:[3,7],usabl:[1,3],befor:[2,3],ohai_:3,mai:[4,0,6],end:[2,3],data:[4,6,2,7],parallel:[1,7],man:[1,8],github:[0,1],orchestr:[0,1,2,3,5,7],bootstrap:1,favorit:1,element:[4,2],issu:1,inform:[6,2,3],mango:4,combin:4,allow:3,order:3,talk:[0,3],oper:[1,7],help:1,over:[1,7],move:[2,3],orang:4,mission:1,elit:4,rpmbuild:0,comma:4,paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,3,1],mail:[1,5],job_statu:7,main:3,might:3,them:[2,3,7],"return":[1,6,2],thei:[6,2,3,7],food:4,contriv:3,scene:2,framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],config:[1,3],drop:2,datastructur:6,separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],found:6,stock:2,mean:[2,3],harm:3,michael:1,individu:5,idea:1,realli:[4,2,3],backport:0,facter:[1,2,3,7],our:4,happen:[2,3],event:2,out:[1,2,3,4,6,7],variabl:[2,3,7],network:1,space:[1,2],reboot:7,content:[0,1],rel:2,internet:1,print:6,correct:[4,1,3],red:[1,7],painless:1,insid:3,advanc:6,ntp:7,given:[2,7],pub:7,base:[1,3],lab:1,dictionari:4,put:[0,7],org:0,bash:[0,7],basi:3,pyyaml:0,could:[6,3],fqdn:7,thing:[1,3],place:1,isn:1,assign:[1,3],first:[7,0,2,3,1],origin:1,softwar:[1,2,7],rang:1,notifi:[1,3,7],directli:[2,3,7],onc:[2,3],number:2,yourself:0,hook:2,instruct:0,alreadi:[0,2,3],puppet:1,construct:6,extend:1,massiv:1,differ:[7,0,3,1],convent:2,script:[1,6,7],associ:4,top:[2,3],mkdir:3,system:[0,1,2,3,5,7],messag:6,inventori:[1,2,3,5],too:1,statement:[1,3],john:4,"final":4,iptabl:3,shell:[1,2,7],option:[4,6,3,8,7],tool:[1,6,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,sha:2,"short":1,kept:3,than:[0,2,3,7],silli:3,target:[1,5],remot:[0,2,3,7],structur:4,banana:4,project:[0,7,1],reus:3,architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,ani:[1,6,2,3,7],have:[0,3,1],need:[4,0,2,3,7],seek:2,paramiko:0,imagin:3,engin:7,built:0,note:[5,2,3,7],also:[0,1,2,3,4,5,6,7],client:1,build:[0,6],indic:2,datacent:3,divers:1,begin:4,unless:2,distribut:[0,1],deploy:[0,1,2,3,5,7],track:7,discov:3,most:[4,2],plai:[2,3],regular:3,deploi:[1,2,3,7],pair:2,why:1,don:2,doc:1,later:7,cover:7,doe:[1,2,5],likes_emac:4,snapshot:2,wildcard:5,databas:3,awesom:[1,3],show:[3,7],verbos:2,syntax:[4,3],bring:3,raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],hack:1,radic:1,trivial:[1,2],rotat:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,just:[7,0,2,3,1],pretti:6,configur:[0,1,2,3,4,5,7],apach:[3,7],behind:2,should:[4,2],somevar:3,freenod:1,local:2,yml:3,long_running_oper:7,contribut:1,get:[4,0,3,7,1],express:[4,1,6,3],stop:[2,3],repo:[2,7],next:3,obviou:1,ssh:[0,7],requir:[0,2,1],uvh:0,bar:5,provid:4,stuff:7,common:3,contain:[2,3],through:[0,2,1],where:[1,2,3],view:[1,8],set:[0,2,3],see:[0,1,2,3,4,5,7],result:[6,2],fail:[6,3],charact:4,ntp_server:7,best:3,planet:1,statu:7,manpag:[0,8],pattern:[1,6,3,5],someth:[1,2,7],discoveri:2,restart:[2,3,7],state:[2,3,7],won:7,between:[4,3],"import":6,irc:1,altern:7,kei:[4,0,2,3],style:2,extens:1,job:[4,7],entir:3,aserv:0,webapp:7,asdescrib:3,timmi:3,addit:[4,1,3],delimit:2,goal:1,against:[1,3,5],etc:[7,0,5,3,1],instanc:3,logic:3,mani:[3,7],com:[0,6,3,5],assur:3,simpli:[2,3],author:1,overview:4,header:5,written:[1,2,3,7],colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],three:5,multiplay:1,compos:3,been:1,json:[1,6,2],much:[1,2],basic:[4,0,5,2,1],quickli:[4,1],indenta:4,fire:1,rubi:[4,2,7],argument:2,func:1,atlanta:[3,7],those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],look:[5,3,7],replac:3,hoc:[1,3,7],servic:[1,2,3,7],md5sum:2,defin:3,"while":3,facter_hostnam:3,cobbler:1,dehaan:1,motd:[3,7],max_client:3,stdout:6,non:1,itself:6,myapp:7,module_nam:6,sever:4,http_port:3,develop:[4,0,1],welcom:1,minim:0,make:[0,2,3,7],ohai:[1,2,3,7],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],success:2,document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,http:2,hostnam:[6,3],again:3,nest:2,permit:4,effect:3,fruit:4,user:3,php:7,distutil:[0,1],typic:7,squar:4,task:[1,3,7],off:1,scenario:2,mention:3,setenforc:3,well:[0,2,3],hypothet:3,contact:[0,6,2],command:[0,1,2,3,5,6,7,8],thi:[0,1,2,3,4,5,7],choos:2,programm:6,dereferenc:3,usual:3,protocol:2,execut:[1,6,2,3],less:[0,1],excel:1,kill:7,skill:4,simultan:7,languag:[4,0,5,2,1],web:[6,7],versu:1,easi:[1,2],mix:5,trigger:2,except:3,littl:1,add:[0,7],els:1,unlik:3,hat:1,match:3,take:2,bin:[0,6,2,3,7],applic:[6,3],which:[4,0,5,3,1],format:[1,2,3,4,5,7],read:[4,0,6],fast:1,dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],specif:[5,6,3,7],signal:3,integ:2,noth:3,edit:0,api:[1,6,2],either:2,lose:7,popular:1,output:3,manag:[0,1,2,3,4,5,7],webserv:[5,3,7],some:[0,2],back:3,dead:1,server:[1,2,3,7],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,definit:3,per:6,tracker:1,exit:6,foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],usag:[2,7],devop:1,web2:6,host:[0,1,2,3,5,6,7],web1:6,repositori:0,"super":1,simpler:7,src:[2,3,7],sbin:[2,3,7],actual:2,othervar:3,surround:4,page:[4,0,8,1],srv:[3,7],done:3,industri:1,own:[1,2,3],real:0,bounc:2,within:2,tag:[0,2],automat:2,upgrad:7,down:6,ensur:[3,7],chang:[2,3,7],perl:7,bserver:0,your:[0,1,2,3,4,5,7],git:[0,2,7,1],type:6,fabric:1,wai:[4,0,3,7],transfer:[1,7],support:[2,7],question:1,"long":[1,2,7],happi:1,avail:[0,2,3,6,7,8],start:[0,1,2,3,4,7],appl:4,wordpress:3,includ:[1,3],lot:[1,3,7],suit:3,"var":[1,3],fork:6,head:[2,7],simplejson:0,lint:4,yeah:3,taken:3,line:[0,1,2,3,4,5,6,7,8],"true":[4,2,3],congratul:0,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,wish:[4,0,6,5],caller:2,until:0,asynchron:[1,3],record:4,limit:[1,7],rerun:3,otherwis:2,similar:2,chip:1,curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,exist:[1,3],file:[0,1,2,3,4,5,7],bob:3,ship:2,check:[2,7],bracket:[4,5],echo:0,denot:5,googl:1,dbserver:[5,3],when:[2,3,7],detail:[1,6],"default":[1,5],other:[7,0,2,3,1],futur:0,test:[0,2],you:[0,1,2,3,4,5,7],node:[0,2,7,1],sequenc:1,"class":[1,3],asciidoc:0,push:3,log:3,deferenc:3,"60k":1,sphinx:0,directori:[2,3],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],far:1,hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks: Ansible for Deployment, Configuration Management, and Orchestration","YAML Format","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7],code:[1,2,7],mcollect:1,prefix:[2,3,7],concept:7,follow:[5,6,2,3,7],scp:7,bubbl:[2,3],middl:3,elsewher:7,program:[1,2,3],selinux:3,blindingli:1,spec:3,sourc:[1,6,2,3,7],everi:[4,3],string:2,fals:[4,2],failur:[6,2],veri:[1,6,3],affect:3,level:[4,2,3],id_rsa:[0,7],list:[1,2,3,4,5,7,8],item:[4,6],form:[4,3],dotnet:4,saltstack:1,straight:7,alic:3,natur:2,seper:3,chef:1,second:[4,7],design:1,pass:[2,3],download:0,further:3,port:7,even:7,what:[0,2,3],favcolor:[3,7],section:[1,2,3],abbrevi:4,version:[2,7],varnam:3,ever:1,method:6,told:3,tar:0,hash:2,abov:3,conf:[3,7],eckersberg:4,gener:3,here:[2,3,7],let:[3,7],address:[5,2],path:2,sinc:7,valu:[4,2,3],box:[1,2],great:1,ahead:3,precursor:1,technolog:1,step:[2,3],prior:2,pick:[4,7],action:[1,2,3],extrem:0,implement:6,commonli:7,ourselv:3,employe:4,via:[0,1],regardless:[4,1,3],extra:3,modul:[0,1,2,3,6,7],releas:0,unix:3,"boolean":4,instal:[7,0,2,3,1],select:[1,2,3,5],httpd:[3,7],from:[0,1,2,3,4,7],describ:[2,3],would:[2,7],commun:1,visit:1,two:[4,0,5],noarch:0,live:0,handler:[1,3,7],call:2,usr:[6,2,3,7],msg:[6,2],suppos:3,checkout:2,tell:[2,3,7],more:[0,5,2,3,1],flat:3,desir:3,idempot:[2,3,7],comparison:1,unneccessari:2,sshd:1,agent:[0,7],particular:[1,3],easiest:1,must:[4,2,3],none:6,join:1,ibm:1,module_arg:6,dest:[2,3,7],setup:[1,2,7],work:[7,0,5,3,1],knows_oop:4,remain:1,minimum:3,can:[0,1,2,3,4,5,6,7],learn:[0,5,3,1],about:[4,0,2,3,1],purpos:2,root:[4,1,3],control:[1,2,3,7],want:[6,2,3,7],yamllint:4,process:[1,7],rpath:1,sudo:0,share:2,templat:[7,0,2,3,1],critic:1,liter:2,explor:0,occur:3,nearli:[2,3],alwai:2,multipl:[5,3,7],newlin:4,thoug:2,lame:4,capistrano:1,ping:[0,6,2,1],uptim:6,write:[4,1,2,3,7],how:[0,2,3,4,5,6,7],instead:2,simpl:[4,1,6,3,7],updat:7,map:3,financ:1,referenc:[5,3],clone:0,after:[3,7],usabl:[1,3],befor:[2,3],ohai_:3,mai:[4,0,6],end:[2,3],data:[4,6,2,7],parallel:[1,7],man:[1,8],github:[0,1],orchestr:[1,3],bootstrap:1,favorit:1,element:[4,2],issu:1,inform:[6,2,3],mango:4,combin:4,allow:3,order:3,talk:[0,3],origin:1,help:1,over:[1,7],move:[2,3],orang:4,mission:1,elit:4,rpmbuild:0,comma:4,paramet:[2,3],facter_:3,jid:7,overlord:0,group:[1,6,3,5],cli:6,yaml:[4,1,3],pend:[3,7],rapidli:6,infrastructur:[0,5,3,1],mail:[1,5],job_statu:7,main:3,might:3,them:[2,3,7],"return":[1,6,2],thei:[6,2,3,7],food:4,contriv:3,scene:2,framework:[1,6],jinja2:[0,2,3,7],now:[0,2],nor:2,choic:1,multiprocess:0,name:[4,1,2,3,7],anyth:2,neccessari:[2,7],config:[1,3],drop:2,datastructur:6,separ:4,exampl:[0,1,2,3,4,5,6,7],each:[4,2,3,7],found:6,stock:2,mean:[2,3],harm:3,michael:1,individu:5,idea:1,realli:[4,2,3],backport:0,facter:[1,2,3,7],our:4,happen:[2,3],event:2,out:[1,2,3,4,6,7],variabl:[2,3,7],network:1,space:[1,2],reboot:7,content:[0,1],rel:2,internet:1,print:6,correct:[4,1,3],red:[1,7],painless:1,insid:3,advanc:6,ntp:7,given:[2,7],pub:7,base:[1,3],lab:1,dictionari:4,put:[0,7],org:0,bash:[0,7],basi:3,pyyaml:0,could:[6,3],fqdn:7,thing:[1,3],place:1,isn:1,assign:[1,3],first:[7,0,2,3,1],oper:[1,7],softwar:[1,2,7],rang:1,notifi:[1,3,7],directli:[2,3,7],onc:[2,3],number:2,yourself:0,hook:2,instruct:0,alreadi:[0,2,3],puppet:1,construct:6,extend:1,massiv:1,differ:[7,0,3,1],convent:2,script:[1,6,7],associ:4,top:[2,3],mkdir:3,system:[0,1,2,3,5,7],messag:6,inventori:[1,2,3,5],too:1,statement:[1,3],john:4,"final":4,iptabl:3,shell:[1,2,7],option:[4,6,3,8,7],tool:[1,6,2,7],copi:[1,2,7],specifi:[4,2,7],retyp:0,sha:2,"short":1,kept:3,than:[0,2,3,7],silli:3,target:[1,5],remot:[0,2,3,7],structur:4,banana:4,project:[0,7,1],reus:3,architect:1,were:3,tion:4,uses_cv:4,pre:0,sai:3,runner:6,explicit:2,ani:[1,6,2,3,7],have:[0,3,1],need:[4,0,2,3,7],seek:2,paramiko:0,imagin:3,engin:7,built:0,note:[5,2,3,7],also:[0,1,2,3,4,5,6,7],client:1,build:[0,6],indic:2,datacent:3,divers:1,begin:4,unless:2,distribut:[0,1],deploy:[1,3,7],track:7,discov:3,most:[4,2],plai:[2,3],regular:3,deploi:[1,2,3,7],pair:2,why:1,don:2,doc:1,later:7,cover:7,doe:[1,2,5],likes_emac:4,snapshot:2,wildcard:5,databas:3,awesom:[1,3],show:[3,7],verbos:2,syntax:[4,3],bring:3,raleigh:1,particularli:3,playbook:[0,1,2,3,4,5,6,7],hack:1,radic:1,trivial:[1,2],rotat:3,involv:1,absolut:2,onli:[0,2,3,7],explicitli:3,locat:2,just:[7,0,2,3,1],pretti:6,configur:[0,1,3,4,5,7],apach:[3,7],behind:2,should:[4,2],somevar:3,freenod:1,local:2,yml:3,long_running_oper:7,contribut:1,get:[4,0,3,7,1],express:[4,1,6,3],stop:[2,3],repo:[2,7],next:3,obviou:1,ssh:[0,7],requir:[0,2,1],uvh:0,bar:5,provid:4,stuff:7,common:3,contain:[2,3],through:[0,2,1],where:[1,2,3],view:[1,8],set:[0,2,3],see:[0,1,2,3,4,5,7],result:[6,2],fail:[6,3],charact:4,ntp_server:7,best:3,planet:1,statu:7,manpag:[0,8],pattern:[1,6,3,5],someth:[1,2,7],discoveri:2,restart:[2,3,7],state:[2,3,7],won:7,between:[4,3],"import":6,irc:1,altern:7,kei:[4,0,2,3],style:2,extens:1,job:[4,7],entir:3,aserv:0,webapp:7,asdescrib:3,timmi:3,addit:[4,1,3],delimit:2,goal:1,against:[1,3,5],etc:[7,0,5,3,1],instanc:3,logic:3,mani:[3,7],com:[0,6,3,5],assur:3,simpli:[2,3],author:1,overview:4,header:5,written:[1,2,3,7],colon:3,shutdown:2,linux:[1,3],poll:[1,3,7],rpm:[0,1],compos:3,multiplay:1,three:5,been:1,json:[1,6,2],much:[1,2],basic:[4,0,5,2,1],quickli:[4,1],indenta:4,fire:1,rubi:[4,2,7],argument:2,func:1,atlanta:[3,7],those:[4,2],emploi:4,authorized_kei:0,multi:[1,3],look:[5,3,7],replac:3,hoc:[1,3,7],servic:[1,2,3,7],md5sum:2,defin:3,"while":3,facter_hostnam:3,cobbler:1,dehaan:1,motd:[3,7],max_client:3,stdout:6,non:1,itself:6,myapp:7,module_nam:6,sever:4,http_port:3,develop:[4,0,1],welcom:1,minim:0,make:[0,2,3,7],ohai:[1,2,3,7],same:[4,5,7],member:4,python:[0,1,2,4,6,7],complex:[1,3],success:2,document:[0,6,3,7],ansibl:[0,1,2,3,4,5,6,7,8],complet:3,http:2,hostnam:[6,3],again:3,nest:2,permit:4,effect:3,fruit:4,user:3,php:7,distutil:[0,1],typic:7,squar:4,task:[1,3,7],off:1,scenario:2,mention:3,setenforc:3,well:[0,2,3],hypothet:3,contact:[0,6,2],command:[0,1,2,3,5,6,7,8],thi:[0,1,2,3,4,5,7],choos:2,programm:6,dereferenc:3,usual:3,protocol:2,execut:[1,6,2,3],less:[0,1],excel:1,kill:7,skill:4,simultan:7,languag:[4,0,5,2,1],web:[6,7],versu:1,easi:[1,2],mix:5,trigger:2,except:3,littl:1,add:[0,7],els:1,unlik:3,hat:1,match:3,take:2,bin:[0,6,2,3,7],applic:[6,3],which:[4,0,5,3,1],format:[1,2,3,4,5,7],read:[4,0,6],fast:1,dark:6,game:1,know:[4,2,3],background:[1,7],world:0,bit:2,password:0,daemon:1,motorola:1,like:[4,5,2,3,7],specif:[5,6,3,7],signal:3,integ:2,noth:3,edit:0,api:[1,6,2],either:2,lose:7,popular:1,output:3,manag:[0,1,3,4,5,7],webserv:[5,3,7],some:[0,2],back:3,dead:1,server:[1,2,3,7],tmp:[3,7],render:2,assum:3,avoid:[0,2],though:1,definit:3,per:6,tracker:1,exit:6,foo:[5,7],complic:1,refer:7,machin:[0,2,3,7],core:1,run:[0,6,2,3,7],power:[1,6],usag:[2,7],devop:1,web2:6,host:[0,1,2,3,5,6,7],web1:6,repositori:0,"super":1,simpler:7,src:[2,3,7],sbin:[2,3,7],actual:2,othervar:3,surround:4,page:[4,0,8,1],srv:[3,7],done:3,industri:1,own:[1,2,3],real:0,bounc:2,within:2,tag:[0,2],automat:2,upgrad:7,down:6,ensur:[3,7],chang:[2,3,7],perl:7,bserver:0,your:[0,1,2,3,4,5,7],git:[0,2,7,1],type:6,fabric:1,wai:[4,0,3,7],transfer:[1,7],support:[2,7],question:1,"long":[1,2,7],happi:1,avail:[0,2,3,6,7,8],start:[0,1,2,3,4,7],appl:4,wordpress:3,includ:[1,3],lot:[1,3,7],suit:3,"var":[1,3],fork:6,head:[2,7],simplejson:0,lint:4,yeah:3,taken:3,line:[0,1,2,3,4,5,6,7,8],"true":[4,2,3],congratul:0,info:3,strawberri:4,made:[2,7],possibl:[5,3,7],whether:6,wish:[4,0,6,5],caller:2,until:0,asynchron:[1,3],record:4,limit:[1,7],rerun:3,otherwis:2,similar:2,chip:1,curv:1,featur:3,tasti:4,creat:1,certain:3,doesn:1,repres:4,exist:[1,3],file:[0,1,2,3,4,5,7],bob:3,ship:2,check:[2,7],bracket:[4,5],echo:0,denot:5,googl:1,dbserver:[5,3],when:[2,3,7],detail:[1,6],"default":[1,5],other:[7,0,2,3,1],futur:0,test:[0,2],you:[0,1,2,3,4,5,7],node:[0,2,7,1],sequenc:1,"class":[1,3],asciidoc:0,push:3,log:3,deferenc:3,"60k":1,sphinx:0,directori:[2,3],portion:5,emerg:1,potenti:3,time:[0,1,2,3,5,7],far:1,hello:0},objtypes:{},titles:["Getting Started","Ansible","Ansible Modules","Playbooks","YAML Format","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","index","modules","playbooks","YAMLScripts","patterns","api","examples","man"]}) \ No newline at end of file diff --git a/rst/patterns.rst b/rst/patterns.rst index 8ef369b225c..5b76289378a 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -1,3 +1,5 @@ +.. _patterns: + The Inventory File, Patterns, and Groups ======================================== @@ -43,16 +45,17 @@ It is also possible to address specific hosts:: one.example.com:two.example.com -The following patterns address one or more groups, which are denoted with the bracket -headers in the inventory file:: +The following patterns address one or more groups, which are denoted +with the bracket headers in the inventory file:: webservers webservers:dbservers -Individual hosts, but not groups, can also be referenced using wildcards: +Individual hosts, but not groups, can also be referenced using +wildcards:: - *.example.com - *.com + *.example.com + *.com It's also ok to mix wildcard patterns and groups at the same time:: diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 890768c5894..db028da59c2 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -1,5 +1,5 @@ -Playbooks: Ansible for Deployment, Configuration Management, and Orchestration -============================================================================== +Playbooks +========= .. seealso:: @@ -11,21 +11,28 @@ Playbooks: Ansible for Deployment, Configuration Management, and Orchestration Learn about how to select hosts -Playbooks are a completely different way to use ansible and are particularly awesome. +Playbooks are a completely different way to use ansible and are +particularly awesome. -They are the basis for a really simple configuration management and multi-machine deployment system, unlike any that already exist, and one that is very well suited to deploying complex applications. +They are the basis for a really simple configuration management and +multi-machine deployment system, unlike any that already exist, and +one that is very well suited to deploying complex applications. -While you might run the main /usr/bin/ansible program for ad-hoc tasks, playbooks are more likely to be kept in source control and used to push out your configuration or assure the configurations of your remote systems are in spec. +While you might run the main /usr/bin/ansible program for ad-hoc +tasks, playbooks are more likely to be kept in source control and used +to push out your configuration or assure the configurations of your +remote systems are in spec. Playbook Example ```````````````` -Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed -of one or more 'plays' in a list. By composing a playbook of multiple 'plays', it is possible -to orchestrate multi-machine deployments, running certain steps on all machines in -the webservers group, then certain steps on the database server group, then more commands -back on the webservers group, etc:: +Playbooks are expressed in YAML format and have a minimum of syntax. +Each playbook is composed of one or more 'plays' in a list. By +composing a playbook of multiple 'plays', it is possible to +orchestrate multi-machine deployments, running certain steps on all +machines in the webservers group, then certain steps on the database +server group, then more commands back on the webservers group, etc:: --- - hosts: webservers @@ -47,21 +54,26 @@ back on the webservers group, etc:: Hosts line `````````` -The hosts line is a list of one or more groups or host patterns, seperated by colons, asdescribed in the 'patterns' documentation. This is just like the first parameter to /usr/bin/ansible. +The hosts line is a list of one or more groups or host patterns, +seperated by colons, as described in the :ref:`patterns` +documentation. This is just like the first parameter to +`/usr/bin/ansible`. Vars section ```````````` -A list of variables and values that can be used in the plays. These can be used in templates -or 'action' lines and are dereferenced using ```jinja2``` syntax like this:: +A list of variables and values that can be used in the plays. These +can be used in templates or 'action' lines and are dereferenced using +`jinja2` syntax like this:: {{ varname }} -Further, if there are discovered variables about the system (say, if facter or ohai were -installed) these variables bubble up back into the playbook, and can be used on each -system just like explicitly set variables. Facter variables are prefixed with 'facter_' -and Ohai variables are prefixed with 'ohai_'. So for instance, if I wanted to write the -hostname into the /etc/motd file, I could say:: +Further, if there are discovered variables about the system (say, if +facter or ohai were installed) these variables bubble up back into the +playbook, and can be used on each system just like explicitly set +variables. Facter variables are prefixed with ``facter_`` and Ohai +variables are prefixed with ``ohai_``. So for instance, if I wanted +to write the hostname into the /etc/motd file, I could say:: - name: write the motd - action: template src=/srv/templates/motd.j2 dest=/etc/motd @@ -75,27 +87,32 @@ But we're getting ahead of ourselves. Let's talk about tasks. Tasks list `````````` -Each play contains a list of tasks. Tasks are executed in order, one at a time, against -all machines matched by the play's host pattern, before moving on to the next task. +Each play contains a list of tasks. Tasks are executed in order, one +at a time, against all machines matched by the play's host pattern, +before moving on to the next task. -Hosts with failed tasks are taken out of the rotation for the entire playbook. If things fail, -simply correct the playbook file and rerun. +Hosts with failed tasks are taken out of the rotation for the entire +playbook. If things fail, simply correct the playbook file and rerun. -Modules other than command are idempotent, meaning if you run them again, they will make the -changes they are told to make to bring the system to the desired state. +Modules other than command are idempotent, meaning if you run them +again, they will make the changes they are told to make to bring the +system to the desired state. Task name and action ````````````````````` -Every task must have a name, which is included in the output from running the playbook. +Every task must have a name, which is included in the output from +running the playbook. -The action line is the name of an ansible module followed by parameters. Usually these -are expressed in key=value form, except for the command module, which looks just like a Linux/Unix -command line. See the module documentation for more info. +The action line is the name of an ansible module followed by +parameters. Usually these are expressed in ``key=value`` form, except +for the command module, which looks just like a Linux/Unix command +line. See the module documentation for more info. -Variables, as mentioned above, can be used in action lines. So if, hypothetically, you wanted -to make a directory on each system named after the hostname ... yeah, that's I know silly ... you could -do it like so:: +Variables, as mentioned above, can be used in action lines. So if, +hypothetically, you wanted to make a directory on each system named +after the hostname ... yeah, that's I know silly ... you could do it +like so:: - name: make a directory - action: mkdir /tmp/{{ facter_hostname }} @@ -103,44 +120,49 @@ do it like so:: Notify statements ````````````````` -Nearly all modules are written to be 'idempotent' and can signal when they have affected a change -on the remote system. If a notify statement is used, the named handler will be run against -each system where a change was effected, but NOT on systems where no change occurred. This happens -after all of the tasks are run. For example, if notifying Apache and potentially replacing lots of -configuration files, you could have Apache restart just once, at the end of a run. If you need -Apache restarted in the middle of a run, you could just make a task for it, no harm done. Notifiers -are optional. +Nearly all modules are written to be 'idempotent' and can signal when +they have affected a change on the remote system. If a notify +statement is used, the named handler will be run against each system +where a change was effected, but NOT on systems where no change +occurred. This happens after all of the tasks are run. For example, +if notifying Apache and potentially replacing lots of configuration +files, you could have Apache restart just once, at the end of a run. +If you need Apache restarted in the middle of a run, you could just +make a task for it, no harm done. Notifiers are optional. Handlers ```````` -Handlers are lists of tasks, not really any different from regular tasks, that are referenced -by name. Handlers are what notifiers notify. If nothing notifies a handler, it will not run. -Regardless of how many things notify a handler, it will run only once, after all of the tasks -complete in a particular play. +Handlers are lists of tasks, not really any different from regular +tasks, that are referenced by name. Handlers are what notifiers +notify. If nothing notifies a handler, it will not run. Regardless +of how many things notify a handler, it will run only once, after all +of the tasks complete in a particular play. Includes ```````` -Not all tasks have to be listed directly in the main file. An include file can contain -a list of tasks (in YAML) as well, optionally passing extra variables into the file. -Variables passed in can be deferenced like this (assume a variable named 'user'):: +Not all tasks have to be listed directly in the main file. An include +file can contain a list of tasks (in YAML) as well, optionally passing +extra variables into the file. Variables passed in can be deferenced +like this (assume a variable named 'user'):: {{ user }} -For instance, if deploying multiple wordpress instances, I could contain all of my tasks -in a wordpress.yml file, and use it like so:: +For instance, if deploying multiple wordpress instances, I could +contain all of my tasks in a wordpress.yml file, and use it like so:: - tasks: - include: wordpress.yml user=timmy - include: wordpress.yml user=alice - include: wordpress.yml user=bob -In addition to the explicitly passed in parameters, all variables from the vars section -are also available. +In addition to the explicitly passed in parameters, all variables from +the vars section are also available. -The format of an included list of tasks or handlers looks just like a flat list of tasks. Here -is an example of what base.yml might look like:: +The format of an included list of tasks or handlers looks just like a +flat list of tasks. Here is an example of what base.yml might look +like:: --- - name: no selinux @@ -150,18 +172,20 @@ is an example of what base.yml might look like:: - name: this is just to show variables work here, favcolor={{ favcolor }} action: command /bin/true -As you can see above, variables in include files work just like they do in the main file. -Including a variable in the name of a task is a contrived example, you could also -pass them to the action command line or use them inside a template file. +As you can see above, variables in include files work just like they +do in the main file. Including a variable in the name of a task is a +contrived example, you could also pass them to the action command line +or use them inside a template file. -Note that include statements are only usable from the top level playbook file. -At this time, includes can not include other includes. +Note that include statements are only usable from the top level +playbook file. At this time, includes can not include other includes. Using Includes To Assign Classes of Systems ``````````````````````````````````````````` -Include files are best used to reuse logic between playbooks. You could imagine -a playbook describing your entire infrastructure like this:: +Include files are best used to reuse logic between playbooks. You +could imagine a playbook describing your entire infrastructure like +this:: --- - hosts: atlanta-webservers @@ -181,21 +205,23 @@ a playbook describing your entire infrastructure like this:: handlers: - include: generic-handlers.yml -There is one (or more) play defined for each group of systems, and each play maps -each group includes one or more 'class definitions' telling the systems what they -are supposed to do or be. +There is one (or more) play defined for each group of systems, and +each play maps each group includes one or more 'class definitions' +telling the systems what they are supposed to do or be. -Using a common handlers file could allow one task in 'webservers' to define 'restart apache', -and it could be reused between multiple plays. +Using a common handlers file could allow one task in 'webservers' to +define 'restart apache', and it could be reused between multiple +plays. -Variables like 'database' above can be used in templates referenced from the -configuration file to generate machine specific variables. +Variables like 'database' above can be used in templates referenced +from the configuration file to generate machine specific variables. Asynchronous Actions and Polling ```````````````````````````````` (Information on this feature is pending) + Executing A Playbook ```````````````````` From 8bd523fe3689502e13d2ec75e655c997be791631 Mon Sep 17 00:00:00 2001 From: Tim Bielawa Date: Fri, 9 Mar 2012 11:50:07 -0500 Subject: [PATCH 022/416] More bootstrap tweaks --- conf.py | 2 +- html/YAMLScripts.html | 4 +--- html/api.html | 4 +--- html/examples.html | 4 +--- html/genindex.html | 2 +- html/gettingstarted.html | 4 +--- html/index.html | 4 +--- html/man.html | 4 +--- html/man/ansible-modules.5.html | 2 +- html/man/ansible-playbook.5.html | 2 +- html/man/ansible.1.html | 2 +- html/modules.html | 4 +--- html/patterns.html | 4 +--- html/playbooks.html | 13 ++++++------- html/search.html | 2 +- html/searchindex.js | 2 +- 16 files changed, 21 insertions(+), 38 deletions(-) diff --git a/conf.py b/conf.py index dbbfc48788a..a1e85dca44a 100644 --- a/conf.py +++ b/conf.py @@ -154,7 +154,7 @@ html_last_updated_fmt = '%b %d, %Y' #html_split_index = False # If true, the reST sources are included in the HTML build as _sources/. -#html_copy_source = True +html_copy_source = False # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the diff --git a/html/YAMLScripts.html b/html/YAMLScripts.html index 85840f122a4..146f074932c 100644 --- a/html/YAMLScripts.html +++ b/html/YAMLScripts.html @@ -17,7 +17,7 @@ VERSION: '0.0.1', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', - HAS_SOURCE: true + HAS_SOURCE: false }; @@ -127,8 +127,6 @@ -
    • Source
    diff --git a/api.html b/api.html index 6c9cf05efa9..8a0f87854c2 100644 --- a/api.html +++ b/api.html @@ -26,7 +26,7 @@ - + - + + + + + + + + + + + + + + + + + +Fork me on GitHub +
    + +
    +

    Module Development Guide

    +
    +

    See also

    +
    +
    Ansible Modules
    +
    Learn about available modules
    +
    Github modules directory
    +
    Browse source of core modules
    +
    +
    +

    Ansible modules are reusable units of magic that can be used by the Ansible API, +or by the ansible or ansible-playbook programs.

    +

    Modules can be written in any language and are found in the path specified +by ANSIBLE_LIBRARY_PATH or the –module-path command line option.

    +
    +

    Tutorial

    +

    Let’s build a module to get and set the system time. For starters, let’s build +a module that just outputs the current time.

    +

    We are going to use Python here but any language is possible. Only File I/O and outputing to standard +out are required. So, bash, C++, clojure, Python, Ruby, whatever you want +is fine.

    +

    It’s obvious that you would never really need to build a module to set the system time, +the ‘command’ module could already be used to do this. However, it makes for a decent example. +Reading the modules that come with ansible (linked above) is a great way to learn how to write +modules. Keep in mind, though, that some modules in ansible’s source tree are internalisms, +so look at service or yum, and don’t stare too close into things like async_wrapper or +you’ll turn to stone. Nobody ever executes async_wrapper directly.

    +

    Ok, let’s get going with an example. We’ll use Python. For starters, save this as a file named time:

    +
    #!/usr/bin/python
    +
    +import datetime
    +import json
    +
    +date = str(datetime.datetime.now())
    +print json.dumps({
    +    "time" : date
    +})
    +
    +
    +
    +
    +

    Testing Modules

    +

    There’s a useful test script in the source checkout for ansible:

    +
    git clone git@github.com:ansible/ansible.git
    +chmod +x ansible/hacking/test-module
    +
    +

    Let’s run the script you just wrote with that:

    +
    ansible/hacking/test-module ./time
    +
    +

    You should see output that looks something like this:

    +
    {u'time': u'2012-03-14 22:13:48.539183'}
    +
    +
    +

    If you did not, you might have a typo in your module, so recheck it and try again

    +
    +
    +

    Reading Input

    +

    Let’s modify the module to allow setting the current time. We’ll do this by seeing +if a key value pair in the form time=<string> is passed in to the module.

    +

    Ansible internally saves arguments to a arguments file. So we must read the file +and parse it. The arguments file is just a string, so any form of arguments are legal. +Here we’ll do some basic parsing to treat the input as key=value.

    +

    The example usage we are trying to achieve to set the time is:

    +
    time time="March 14 22:10"
    +
    +

    If no time parameter is set, we’ll just leave the time as is and return the current time.

    +

    Let’s look at the code. Read the comments as we’ll explain as we go. Note that this +highly verbose because it’s intended as an educational example. You can write modules +a lot shorter than this:

    +
    #!/usr/bin/python
    +
    +# import some python modules that we'll use.  These are all
    +# available in Python's core
    +
    +import datetime
    +import sys
    +import json
    +import os
    +import shlex
    +
    +# read the argument string from the arguments file
    +args_file = sys.argv[1]
    +args_data = file(args_file).read()
    +
    +# for this module, we're going to do key=value style arguments
    +# this is up to each module to decide what it wants, but all
    +# core modules besides 'command' and 'shell' take key=value
    +# so this is highly recommended
    +
    +arguments = shlex.split(args_data)
    +for arg in arguments:
    +
    +    # ignore any arguments without an equals in it
    +    if arg.find("=") != -1:
    +
    +        (key, value) = arg.split("=")
    +
    +        # if setting the time, the key 'time'
    +        # will contain the value we want to set the time to
    +
    +        if key == "time":
    +
    +            # now we'll affect the change.  Many modules
    +            # will strive to be 'idempotent', meaning they
    +            # will only make changes when the desired state
    +            # expressed to the module does not match
    +            # the current state.  Look at 'service'
    +            # or 'yum' in the main git tree for an example
    +            # of how that might look.
    +
    +            rc = os.system("date -s \"%s\"" % value)
    +
    +            # always handle all possible errors
    +            #
    +            # when returning a failure, include 'failed'
    +            # in the return data, and explain the failure
    +            # in 'msg'.  Both of these conventions are
    +            # required however additional keys and values
    +            # can be added.
    +
    +            if rc != 0:
    +                print json.dumps({
    +                    "failed" : True,
    +                    "msg"    : "failed setting the time"
    +                })
    +                sys.exit(1)
    +
    +            # when things do not fail, we do not
    +            # have any restrictions on what kinds of
    +            # data are returned, but it's always a
    +            # good idea to include whether or not
    +            # a change was made, as that will allow
    +            # notifiers to be used in playbooks.
    +
    +            date = str(datetime.datetime.now())
    +            print json.dumps({
    +                "time" : date,
    +                "changed" : True
    +            })
    +            sys.exit(0)
    +
    +# if no parameters are sent, the module may or
    +# may not error out, this one will just
    +# return the time
    +
    +date = str(datetime.datetime.now())
    +print json.dumps({
    +    "time" : date
    +})
    +
    +
    +

    Let’s test that module:

    +
    ../ansible/hacking/test-module ./rst/time time=\"March 14 12:23\"
    +
    +

    This should return something like:

    +
    {"changed": true, "time": "2012-03-14 12:23:00.000307"}
    +
    +
    +
    +
    +

    Common Pitfalls

    +

    If writing a module in Python and you have managed nodes running +Python 2.4 or lower, this is generally a good idea, because +json isn’t in the Python standard library until 2.5.:

    +
    try:
    +    import json
    +except ImportError:
    +    import simplejson as json
    +
    +
    +

    You should also never do this in a module:

    +
    print "some status message"
    +
    +
    +

    Because the output is supposed to be valid JSON. Except that’s not quite true, +but we’ll get to that later.

    +
    +

    Conventions

    +

    As a reminder from the example code above, here are some basic conventions +and guidelines:

    +
      +
    • Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file
    • +
    • Modules must be self contained in one file to be auto-transferred by ansible
    • +
    • If packaging modules in an RPM, they only need to be installed on the control machine and should be dropped into /usr/share/ansible. This is entirely optional.
    • +
    • Modules should return JSON or key=value results all on one line. JSON is best if you can do JSON. All return types must be hashes (dictionaries) although they can be nested.
    • +
    • In the event of failure, a key of ‘failed’ should be included, along with a string explanation in ‘msg’. Modules that raise tracebacks (stacktraces) are generally considered ‘poor’ modules, though Ansible can deal with these returns and will automatically convert anything unparseable into a failed result.
    • +
    • Return codes are actually not signficant, but continue on with 0=success and non-zero=failure for reasons of future proofing.
    • +
    • As results from many hosts will be aggregrated at once, modules should return only relevant output. Returning the entire contents of a log file is generally bad form.
    • +
    +
    +
    +

    Shorthand Vs JSON

    +

    To make it easier to write modules in bash and in cases where a JSON +module might not be available, it is acceptable for a module to return +key=value output all on one line, like this. The Ansible parser +will know what to do.

    +
    +
    somekey=1 somevalue=two favcolor=red
    +

    If you’re writing a module in Python or Ruby or whatever, though, returning +JSON is probably the simplest way to go.

    +
    +
    +
    +

    Sharing Your Module

    +

    If you think your module is generally useful to others, Ansible is preparing +an ‘ansible-contrib’ repo. Stop by the mailing list and we’ll help you to +get your module included. Contrib modules can be implemented in a variety +of languages. Including a README with your module is a good idea so folks +can understand what arguments it takes and so on. We would like to build +up as many of these as possible in as many languages as possible.

    +

    Ansible Mailing List

    +
    +
    +

    Getting Your Module Into Core

    +

    High-quality modules with minimal dependencies +can be included in the core, but core modules (just due to the programming +preferences of the developers) will need to be implemented in Python. +Stop by the mailing list to inquire about requirements.

    +
    +
    + + +
    +
    +
    +

    Back to top

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on Mar 14, 2012.
    + Created using Sphinx 1.0.8.
    +

    +
    +
    + + \ No newline at end of file From ea8770ad541cc762ea7ca4b8f248dd2cad2cc7d6 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 14 Mar 2012 13:13:32 -0400 Subject: [PATCH 065/416] Fix pathing in example --- man/ansible-playbook.1.html | 2 +- man/ansible.1.html | 2 +- moduledev.html | 8 ++++---- rst/moduledev.rst | 6 +++--- searchindex.js | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/man/ansible-playbook.1.html b/man/ansible-playbook.1.html index 032b0aa1bc4..c6621b37d54 100644 --- a/man/ansible-playbook.1.html +++ b/man/ansible-playbook.1.html @@ -1,6 +1,6 @@ -ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool +ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool used to run them. See the project home page (link below) for more information.

    ARGUMENTS

    filename.yml
    diff --git a/man/ansible.1.html b/man/ansible.1.html index f6ebe3b2001..f8dd706ced2 100644 --- a/man/ansible.1.html +++ b/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

    ARGUMENTS

    host-pattern
    diff --git a/moduledev.html b/moduledev.html index 16ea2f1837c..d2e51b13232 100644 --- a/moduledev.html +++ b/moduledev.html @@ -331,7 +331,7 @@ a lot shorter than this:

    Let’s test that module:

    -
    ../ansible/hacking/test-module ./rst/time time=\"March 14 12:23\"
    +
    ansible/hacking/test-module ./time time=\"March 14 12:23\"

    This should return something like:

    {"changed": true, "time": "2012-03-14 12:23:00.000307"}
    @@ -374,9 +374,9 @@ and guidelines:

    To make it easier to write modules in bash and in cases where a JSON module might not be available, it is acceptable for a module to return key=value output all on one line, like this. The Ansible parser -will know what to do.

    -
    -
    somekey=1 somevalue=two favcolor=red
    +will know what to do:

    +
    somekey=1 somevalue=2 rc=3 favcolor=red
    +

    If you’re writing a module in Python or Ruby or whatever, though, returning JSON is probably the simplest way to go.

    diff --git a/rst/moduledev.rst b/rst/moduledev.rst index fe503675fa1..53f05efd3d6 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -169,7 +169,7 @@ a lot shorter than this:: Let's test that module:: - ../ansible/hacking/test-module ./rst/time time=\"March 14 12:23\" + ansible/hacking/test-module ./time time=\"March 14 12:23\" This should return something like:: @@ -222,9 +222,9 @@ Shorthand Vs JSON To make it easier to write modules in bash and in cases where a JSON module might not be available, it is acceptable for a module to return key=value output all on one line, like this. The Ansible parser -will know what to do.:: +will know what to do:: - somekey=1 somevalue=two favcolor=red + somekey=1 somevalue=2 rc=3 favcolor=red If you're writing a module in Python or Ruby or whatever, though, returning JSON is probably the simplest way to go. diff --git a/searchindex.js b/searchindex.js index 2bb4e034d87..af67d4c4ac7 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,myapp:9,perl:9,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,higher:6,abil:4,follow:[4,3,6,7,8,9],scp:9,content:[0,4,5,6,2],decid:[4,5,9],middl:[],depend:[4,5,6],wish:[0,1,4,6,7,8],sensit:[2,6],graph:4,elsewher:9,specif:[7,8,9],program:[2,1,3,4,5,6],mcollect:2,leav:[5,6],blindingli:2,spec:6,introduc:2,emploi:1,sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],fals:[3,1],multi:[2,4,6],signfic:5,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,shlex:5,team:4,dotnet:1,saltstack:2,spent:4,servic:[2,5,3,6,9],playbook:[0,1,2,3,4,5,6,7,8,9,10],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],straighten:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],submit:4,port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],compar:4,favcolor:[5,6,9],fine:[4,5],section:[2,3,6],async_statu:9,current:[4,5,9],"public":6,abbrevi:1,version:[3,6,9],suspect:4,"new":4,net:[],ever:[2,5],method:8,told:6,impact:4,hasn:4,hash:[5,3,1],facter_hostnam:6,eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],argv:5,address:[7,4,3],path:[5,3],along:[5,6],args_fil:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],pretti:[8,4],ahead:6,precursor:2,likin:4,fixm:[],adopt:4,host:[0,2,3,4,5,6,7,8,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],explain:5,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],although:5,extra:4,apach:[4,6,9],modul:[0,2,3,4,5,6,8,9],prefer:5,ask:[2,4],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,cloud:4,highli:5,kei:[0,5,3,6,1],httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,5,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],somevar:6,kick:[4,6,9],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,exit:[8,5],desir:[5,6],idempot:[5,4,3,6,9],src:[3,6,9],python:[0,1,2,3,4,5,8,9],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],actual:[5,4,3,6],compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],placehold:6,none:8,join:2,ibm:2,module_arg:8,alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,other:[0,1,2,3,4,5,6,9],remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],congratul:0,want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],surround:[],explor:0,onlin:1,occur:[],contribut:[2,9],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],lame:1,rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,instead:[4,3],somevalu:[5,6],config:[2,6],stock:3,map:6,express:[2,8,5,6,1],resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],read:[0,8,5,1,2],secur:[4,3],explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],oper:[2,3,6,9],help:[2,5,1],portion:7,xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,6,7],cli:8,minim:[0,5],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],bin:[0,3,5,6,8,9],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,number:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,aka:6,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,instruct:[0,4],separ:6,achiev:5,exampl:[0,1,2,3,4,5,6,7,8,9,10],mode:[4,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],spend:4,mean:[5,4,3,6,1],harm:[],mental:4,michael:2,laserllama:2,hard:4,idea:[2,4,5,6],realli:[5,4,3,6,1],contrib:5,backport:0,expect:6,our:1,happen:[4,3],event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,reboot:[6,9],bubbl:[3,6],adapt:[],rel:3,internet:2,print:[8,5],got:4,merg:4,correct:[2,4,6,1],red:[2,4,5,9],qualifi:3,insid:6,advanc:[8,4,6],ntp:9,unpars:5,differ:[9,0,4,6,2],pub:9,standard:5,small:[4,6,1],reason:[4,5],base:[2,4,6],believ:4,dictionari:[5,6,1],put:[0,6,9],org:0,bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,argument:[5,3,6],could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],rais:5,yum:[2,5,3,6,9],isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],origin:2,softwar:[2,4,3,9],rang:2,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,scene:3,yourself:0,restrict:5,mai:[0,1,3,4,5,6,8],unlik:[4,6],alreadi:[0,5,4,3,6],puppet:[2,4],"long":[2,4,3,6,9],massiv:2,open:[4,6],avail:[0,1,3,4,5,6,8,9,10],given:[4,3,9],convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],inventori:[2,3,6,7],appl:1,too:[2,4,5,6,1],statement:[2,6],gather:4,termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[8,4,5,9,10],especi:4,tool:[2,4,3,6,8,9,10],copi:[2,3,9],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],rst:5,kept:[4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],instanc:6,provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],inquir:5,reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],ani:[2,3,4,5,6,8,9],seth:4,dash:1,packag:[2,5,4,3,9],aforement:7,async_wrapp:5,complet:[4,6],have:[0,1,2,4,5,6,7],interfac:4,need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,contact:[8,0,4,3],note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],client:2,build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,strawberri:1,don:[3,4,5,6,7,9],external_var:6,doc:2,later:[5,6,9],cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,bracket:7,snapshot:3,place:2,clean:4,pattern:[2,8,6,7],built:[0,4,9],latest:[3,6,9],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,page:[10,0,4,1,2],syntax:[2,4,6,1],connect:6,bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,pkg:[3,6,9],hack:[2,5],radic:2,identifi:4,trivial:[2,3],find:[5,4,3],varnam:6,xml:1,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,execut:[2,3,4,5,6,8],tire:4,transact:6,configur:[0,1,2,4,3,6,7,9],solut:4,figur:4,somefil:6,should:[5,4,3,1],suppos:[5,6],about:[0,1,2,3,4,5,6],local:3,yml:6,custom:[4,6],long_running_oper:9,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,4,5,6,9],financ:2,stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],releas:[0,4],patch:4,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,asynchron:[2,6],statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],databas:6,someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],state:[5,4,3,6,9],won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,manpag:0,style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,webapp:[4,9],come:5,timmi:6,addit:[2,5,6],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],tutori:[2,5],logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,format:[2,1,4,3,6,7,9],inspir:[2,4],chmod:[5,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,three:7,been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],futur:[0,5],quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,anywher:6,upgrad:[3,9],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],"case":[4,5],authorized_kei:0,exception:4,look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],straight:9,md5sum:3,permit:[],batch:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],abov:[5,6,9],error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,unit:5,dag:4,conf:[6,9],module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],welcom:2,datetim:5,perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],member:1,handl:[4,5],complex:[2,4,6],split:5,document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],difficult:4,http:3,hostnam:[8,6],again:[4,5,6],nest:[5,3],painless:2,rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],fruit:1,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],typic:[4,9],tune:[],recent:4,dark:8,lower:[4,5],appropri:4,off:[2,4,6],scenario:3,mention:6,setenforc:6,compos:6,well:[0,4,3,6],hypothet:[],non:[2,5,6],without:[4,5],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,dereferenc:6,usual:[],explan:5,protocol:3,prepar:5,just:[0,1,2,3,4,5,6,9],less:[0,4,2],when:[5,4,3,6,9],rest:10,detail:[2,8,9],kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],except:5,littl:[2,4],add:[0,4,9],valid:5,simplejson:[0,5],notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,smart:9,take:[5,4,3,6],real:0,applic:[8,4,6],march:5,which:[0,7,6,1,2],quirk:1,dest:[3,6,9],judgement:3,game:2,know:[5,4,3,1],background:[2,9],guid:[2,5,6],world:[0,4],bit:[4,3],password:[0,6],daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],success:[5,3],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],architectur:[2,4],manag:[0,1,2,3,4,5,6,7,9],poor:5,shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,clojur:5,born:4,intern:5,heritag:4,server:[2,4,3,6,9],transport:[2,4],tmp:9,txt:3,forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,legal:5,tracker:2,larg:4,select:[2,3,6,7],foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],power:[8,2,4,6],importerror:5,usag:[5,3,9],asciidoc:0,web2:8,vhost:6,step:[4,3,6],web1:8,promot:4,repositori:0,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],soon:[],simpler:[4,9],continu:5,comparison:[2,4],sshd:2,simplest:5,central:4,othervar:[],acm:9,simul:6,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],effici:[4,6],bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],due:[4,5],noth:[6,1],pair:[5,3,1],multinod:4,ensur:[4,6,9],chang:[5,3,6,9],pitfal:[2,5],next:6,bserver:0,your:[0,2,3,4,5,6,7,9],risk:6,per:8,stare:5,behind:[4,3],git:[0,2,3,4,5,9],fabric:[2,4],wai:[0,4,5,6,9],aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,fast:2,happi:2,verbos:[5,3],start:[0,1,2,4,3,6,9],trigger:[4,3,6],wordpress:6,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,individu:7,fork:[8,4,6,9],head:[3,9],form:[5,6,1],enough:[7,4,9],lint:1,yeah:[],taken:[4,6],shorter:5,link:5,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],freenod:2,info:9,pull:4,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],whether:[8,4,5],checkout:[5,4,3],caller:3,maximum:6,until:[0,5,6],planet:2,record:1,below:6,stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,facter:[2,4,3,6,9],curv:[2,4],featur:[7,4,6],tasti:1,creat:[2,4],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,6],check:[4,3,6,9],probabl:[4,5,6],echo:[0,6],denot:7,coder:4,googl:2,dbserver:[7,6],excel:[2,4],unnecessari:3,"default":[2,4,6,7],declar:6,librari:[5,1],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],runtim:6,node:[0,2,3,4,5,6,9],contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],devop:2,push:[4,6],scale:[2,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],stai:6,sphinx:0,faster:6,amp:0,directori:[5,3,6],accept:5,reliabl:4,itself:8,emerg:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],far:[2,1],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,myapp:9,perl:9,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,higher:6,abil:4,follow:[4,3,6,7,8,9],scp:9,content:[0,4,5,6,2],decid:[4,5,9],middl:[],depend:[4,5,6],wish:[0,1,4,6,7,8],sensit:[2,6],graph:4,elsewher:9,specif:[7,8,9],program:[2,1,3,4,5,6],mcollect:2,exit:[8,5],blindingli:2,spec:6,introduc:2,emploi:1,sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],fals:[3,1],multi:[2,4,6],signfic:5,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,shlex:5,team:4,dotnet:1,saltstack:2,spent:4,servic:[2,5,3,6,9],playbook:[0,1,2,3,4,5,6,7,8,9,10],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],straighten:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],submit:4,port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],anywher:6,compar:4,favcolor:[5,6,9],fine:[4,5],section:[2,3,6],async_statu:9,current:[4,5,9],"public":6,abbrevi:1,version:[3,6,9],suspect:4,"new":4,net:[],ever:[2,5],method:8,told:6,impact:4,hasn:4,hash:[5,3,1],facter_hostnam:6,eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],argv:5,address:[7,4,3],path:[5,3],along:[5,6],args_fil:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],pretti:[8,4],ahead:6,precursor:2,likin:4,fixm:[],adopt:4,host:[0,2,3,4,5,6,7,8,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],explain:5,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],although:5,extra:4,apach:[4,6,9],modul:[0,2,3,4,5,6,8,9],prefer:5,ask:[2,4],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,cloud:4,highli:5,kei:[0,5,3,6,1],httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],somevar:6,kick:[4,6,9],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,desir:[5,6],idempot:[5,4,3,6,9],src:[3,6,9],python:[0,1,2,3,4,5,8,9],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],actual:[5,4,3,6],compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],placehold:6,none:8,join:2,ibm:2,module_arg:8,alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,other:[0,1,2,3,4,5,6,9],remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],congratul:0,want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],surround:[],explor:0,onlin:1,occur:[],contribut:[2,9],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],lame:1,rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,instead:[4,3],somevalu:[5,6],config:[2,6],stock:3,map:6,express:[2,8,5,6,1],resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],tutori:[2,5],read:[0,8,5,1,2],secur:[4,3],explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],oper:[2,3,6,9],help:[2,5,1],portion:7,xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,6,7],cli:8,minim:[0,5],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],yum:[2,5,3,6,9],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,number:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,aka:6,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,instruct:[0,4],separ:6,achiev:5,exampl:[0,1,2,3,4,5,6,7,8,9,10],mode:[4,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],spend:4,mean:[5,4,3,6,1],harm:[],mental:4,michael:2,laserllama:2,hard:4,idea:[2,4,5,6],realli:[5,4,3,6,1],contrib:5,backport:0,expect:6,our:1,happen:[4,3],event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,reboot:[6,9],bubbl:[3,6],adapt:[],rel:3,internet:2,print:[8,5],got:4,merg:4,correct:[2,4,6,1],red:[2,4,5,9],qualifi:3,insid:6,advanc:[8,4,6],ntp:9,unpars:5,differ:[9,0,4,6,2],pub:9,standard:5,small:[4,6,1],reason:[4,5],base:[2,4,6],believ:4,dictionari:[5,6,1],put:[0,6,9],org:0,bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],rais:5,place:2,isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],origin:2,softwar:[2,4,3,9],rang:2,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,scene:3,yourself:0,restrict:5,mai:[0,1,3,4,5,6,8],unlik:[4,6],alreadi:[0,5,4,3,6],puppet:[2,4],fast:2,massiv:2,open:[4,6],avail:[0,1,3,4,5,6,8,9,10],given:[4,3,9],convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],inventori:[2,3,6,7],appl:1,too:[2,4,5,6,1],statement:[2,6],gather:4,termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[8,4,5,9,10],especi:4,tool:[2,4,3,6,8,9,10],copi:[2,3,9],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],rst:[],kept:[4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],inquir:5,reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],argument:[5,3,6],seth:4,dash:1,packag:[2,5,4,3,9],aforement:7,async_wrapp:5,complet:[4,6],have:[0,1,2,4,5,6,7],interfac:4,need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,contact:[8,0,4,3],note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],client:2,build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,strawberri:1,don:[3,4,5,6,7,9],doc:2,later:[5,6,9],cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,declar:6,snapshot:3,runtim:6,clean:4,pattern:[2,8,6,7],built:[0,4,9],latest:[3,6,9],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,page:[10,0,4,1,2],syntax:[2,4,6,1],connect:6,bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,pkg:[3,6,9],hack:[2,5],radic:2,identifi:4,trivial:[2,3],find:[5,4,3],varnam:6,xml:1,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,execut:[2,3,4,5,6,8],tire:4,transact:6,configur:[0,1,2,4,3,6,7,9],solut:4,figur:4,somefil:6,should:[5,4,3,1],suppos:[5,6],about:[0,1,2,3,4,5,6],local:3,yml:6,custom:[4,6],long_running_oper:9,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,4,5,6,9],financ:2,stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],releas:[0,4],patch:4,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,asynchron:[2,6],statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],databas:6,someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],state:[5,4,3,6,9],won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,manpag:0,style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,webapp:[4,9],come:5,timmi:6,addit:[2,5,6],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],instanc:6,logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,format:[2,1,4,3,6,7,9],inspir:[2,4],chmod:[5,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,due:[4,5],been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],futur:[0,5],quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,ani:[2,3,4,5,6,8,9],upgrad:[3,9],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],"case":[4,5],authorized_kei:0,exception:4,look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],straight:9,md5sum:3,permit:[],batch:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],abov:[5,6,9],error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,unit:5,dag:4,conf:[6,9],module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],welcom:2,datetim:5,perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],member:1,handl:[4,5],complex:[2,4,6],split:5,document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],difficult:4,http:3,hostnam:[8,6],again:[4,5,6],nest:[5,3],painless:2,rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],fruit:1,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],typic:[4,9],tune:[],recent:4,dark:8,lower:[4,5],appropri:4,off:[2,4,6],scenario:3,mention:6,setenforc:6,compos:6,well:[0,4,3,6],hypothet:[],non:[2,5,6],without:[4,5],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,dereferenc:6,usual:[],explan:5,protocol:3,prepar:5,just:[0,1,2,3,4,5,6,9],less:[0,4,2],when:[5,4,3,6,9],rest:10,kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],except:5,littl:[2,4],add:[0,4,9],valid:5,simplejson:[0,5],notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,smart:9,take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,7,6,1,2],quirk:1,dest:[3,6,9],wai:[0,4,5,6,9],judgement:3,game:2,know:[5,4,3,1],background:[2,9],guid:[2,5,6],world:[0,4],bit:[4,3],password:[0,6],daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],success:[5,3],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],external_var:6,unnecessari:3,poor:5,shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,clojur:5,born:4,intern:5,heritag:4,server:[2,4,3,6,9],librari:[5,1],tmp:9,txt:3,forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,per:8,tracker:2,larg:4,select:[2,3,6,7],foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],power:[8,2,4,6],importerror:5,usag:[5,3,9],asciidoc:0,web2:8,vhost:6,step:[4,3,6],web1:8,promot:4,repositori:0,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],soon:[],simpler:[4,9],continu:5,comparison:[2,4],sshd:2,simplest:5,central:4,othervar:[],acm:9,simul:6,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],effici:[4,6],bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],three:7,noth:[6,1],pair:[5,3,1],multinod:4,ensur:[4,6,9],chang:[5,3,6,9],pitfal:[2,5],next:6,bserver:0,your:[0,2,3,4,5,6,7,9],risk:6,manag:[0,1,2,3,4,5,6,7,9],stare:5,behind:[4,3],git:[0,2,3,4,5,9],fabric:[2,4],real:0,aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,"long":[2,4,3,6,9],happi:2,verbos:[5,3],start:[0,1,2,4,3,6,9],trigger:[4,3,6],wordpress:6,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,stai:6,individu:7,fork:[8,4,6,9],head:[3,9],form:[5,6,1],enough:[7,4,9],lint:1,yeah:[],taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],freenod:2,info:9,pull:4,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],whether:[8,4,5],checkout:[5,4,3],caller:3,maximum:6,until:[0,5,6],planet:2,record:1,below:6,stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,facter:[2,4,3,6,9],curv:[2,4],featur:[7,4,6],tasti:1,creat:[2,4],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,6],check:[4,3,6,9],probabl:[4,5,6],echo:[0,6],denot:7,coder:4,googl:2,dbserver:[7,6],excel:[2,4],detail:[2,8,9],"default":[2,4,6,7],bracket:7,transport:[2,4],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],architectur:[2,4],node:[0,2,3,4,5,6,9],contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],devop:2,push:[4,6],scale:[2,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],legal:5,leav:[5,6],faster:6,amp:0,directori:[5,3,6],accept:5,reliabl:4,itself:8,emerg:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],far:[2,1],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file From e0bc949219eb1539080a0bb340d847a08767be12 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 14 Mar 2012 23:45:02 -0400 Subject: [PATCH 066/416] Fix doc indent level --- index.html | 8 +++----- man/ansible-playbook.1.html | 2 +- man/ansible.1.html | 2 +- moduledev.html | 10 ++++------ rst/moduledev.rst | 4 ++-- searchindex.js | 2 +- 6 files changed, 12 insertions(+), 16 deletions(-) diff --git a/index.html b/index.html index 2bd0d92967c..d46f8081187 100644 --- a/index.html +++ b/index.html @@ -305,11 +305,9 @@ you with questions about Ansible.

  • Tutorial
  • Testing Modules
  • Reading Input
  • -
  • Common Pitfalls -
  • +
  • Common Pitfalls
  • +
  • Conventions
  • +
  • Shorthand Vs JSON
  • Sharing Your Module
  • Getting Your Module Into Core
  • diff --git a/man/ansible-playbook.1.html b/man/ansible-playbook.1.html index c6621b37d54..6a1600ea11f 100644 --- a/man/ansible-playbook.1.html +++ b/man/ansible-playbook.1.html @@ -1,6 +1,6 @@ -ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool +ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool used to run them. See the project home page (link below) for more information.

    ARGUMENTS

    filename.yml
    diff --git a/man/ansible.1.html b/man/ansible.1.html index f8dd706ced2..fa12404f7ba 100644 --- a/man/ansible.1.html +++ b/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

    ARGUMENTS

    host-pattern
    diff --git a/moduledev.html b/moduledev.html index d2e51b13232..ff96fbb30f6 100644 --- a/moduledev.html +++ b/moduledev.html @@ -132,11 +132,9 @@ s.parentNode.insertBefore(ga, s);
  • Tutorial
  • Testing Modules
  • Reading Input
  • -
  • Common Pitfalls -
  • Sharing Your Module
  • Getting Your Module Into Core
  • @@ -355,8 +353,9 @@ json isn’t in the Python standard library until 2.5.:

    Because the output is supposed to be valid JSON. Except that’s not quite true, but we’ll get to that later.

    +
    -

    Conventions

    +

    Conventions

    As a reminder from the example code above, here are some basic conventions and guidelines:

      @@ -370,7 +369,7 @@ and guidelines:

    -

    Shorthand Vs JSON

    +

    Shorthand Vs JSON

    To make it easier to write modules in bash and in cases where a JSON module might not be available, it is acceptable for a module to return key=value output all on one line, like this. The Ansible parser @@ -380,7 +379,6 @@ will know what to do:

    If you’re writing a module in Python or Ruby or whatever, though, returning JSON is probably the simplest way to go.

    -

    Sharing Your Module

    If you think your module is generally useful to others, Ansible is preparing diff --git a/rst/moduledev.rst b/rst/moduledev.rst index 53f05efd3d6..d6617561dee 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -196,7 +196,7 @@ Because the output is supposed to be valid JSON. Except that's not quite true, but we'll get to that later. Conventions ------------ +``````````` As a reminder from the example code above, here are some basic conventions and guidelines: @@ -217,7 +217,7 @@ and guidelines: Shorthand Vs JSON ------------------ +````````````````` To make it easier to write modules in bash and in cases where a JSON module might not be available, it is acceptable for a module to return diff --git a/searchindex.js b/searchindex.js index af67d4c4ac7..4ce77873b87 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,myapp:9,perl:9,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,higher:6,abil:4,follow:[4,3,6,7,8,9],scp:9,content:[0,4,5,6,2],decid:[4,5,9],middl:[],depend:[4,5,6],wish:[0,1,4,6,7,8],sensit:[2,6],graph:4,elsewher:9,specif:[7,8,9],program:[2,1,3,4,5,6],mcollect:2,exit:[8,5],blindingli:2,spec:6,introduc:2,emploi:1,sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],fals:[3,1],multi:[2,4,6],signfic:5,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,shlex:5,team:4,dotnet:1,saltstack:2,spent:4,servic:[2,5,3,6,9],playbook:[0,1,2,3,4,5,6,7,8,9,10],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],straighten:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],submit:4,port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],anywher:6,compar:4,favcolor:[5,6,9],fine:[4,5],section:[2,3,6],async_statu:9,current:[4,5,9],"public":6,abbrevi:1,version:[3,6,9],suspect:4,"new":4,net:[],ever:[2,5],method:8,told:6,impact:4,hasn:4,hash:[5,3,1],facter_hostnam:6,eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],argv:5,address:[7,4,3],path:[5,3],along:[5,6],args_fil:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],pretti:[8,4],ahead:6,precursor:2,likin:4,fixm:[],adopt:4,host:[0,2,3,4,5,6,7,8,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],explain:5,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],although:5,extra:4,apach:[4,6,9],modul:[0,2,3,4,5,6,8,9],prefer:5,ask:[2,4],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,cloud:4,highli:5,kei:[0,5,3,6,1],httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],somevar:6,kick:[4,6,9],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,desir:[5,6],idempot:[5,4,3,6,9],src:[3,6,9],python:[0,1,2,3,4,5,8,9],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],actual:[5,4,3,6],compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],placehold:6,none:8,join:2,ibm:2,module_arg:8,alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,other:[0,1,2,3,4,5,6,9],remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],congratul:0,want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],surround:[],explor:0,onlin:1,occur:[],contribut:[2,9],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],lame:1,rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,instead:[4,3],somevalu:[5,6],config:[2,6],stock:3,map:6,express:[2,8,5,6,1],resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],tutori:[2,5],read:[0,8,5,1,2],secur:[4,3],explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],oper:[2,3,6,9],help:[2,5,1],portion:7,xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,6,7],cli:8,minim:[0,5],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],yum:[2,5,3,6,9],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,number:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,aka:6,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,instruct:[0,4],separ:6,achiev:5,exampl:[0,1,2,3,4,5,6,7,8,9,10],mode:[4,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],spend:4,mean:[5,4,3,6,1],harm:[],mental:4,michael:2,laserllama:2,hard:4,idea:[2,4,5,6],realli:[5,4,3,6,1],contrib:5,backport:0,expect:6,our:1,happen:[4,3],event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,reboot:[6,9],bubbl:[3,6],adapt:[],rel:3,internet:2,print:[8,5],got:4,merg:4,correct:[2,4,6,1],red:[2,4,5,9],qualifi:3,insid:6,advanc:[8,4,6],ntp:9,unpars:5,differ:[9,0,4,6,2],pub:9,standard:5,small:[4,6,1],reason:[4,5],base:[2,4,6],believ:4,dictionari:[5,6,1],put:[0,6,9],org:0,bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],rais:5,place:2,isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],origin:2,softwar:[2,4,3,9],rang:2,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,scene:3,yourself:0,restrict:5,mai:[0,1,3,4,5,6,8],unlik:[4,6],alreadi:[0,5,4,3,6],puppet:[2,4],fast:2,massiv:2,open:[4,6],avail:[0,1,3,4,5,6,8,9,10],given:[4,3,9],convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],inventori:[2,3,6,7],appl:1,too:[2,4,5,6,1],statement:[2,6],gather:4,termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[8,4,5,9,10],especi:4,tool:[2,4,3,6,8,9,10],copi:[2,3,9],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],rst:[],kept:[4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],inquir:5,reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],argument:[5,3,6],seth:4,dash:1,packag:[2,5,4,3,9],aforement:7,async_wrapp:5,complet:[4,6],have:[0,1,2,4,5,6,7],interfac:4,need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,contact:[8,0,4,3],note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],client:2,build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,strawberri:1,don:[3,4,5,6,7,9],doc:2,later:[5,6,9],cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,declar:6,snapshot:3,runtim:6,clean:4,pattern:[2,8,6,7],built:[0,4,9],latest:[3,6,9],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,page:[10,0,4,1,2],syntax:[2,4,6,1],connect:6,bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,pkg:[3,6,9],hack:[2,5],radic:2,identifi:4,trivial:[2,3],find:[5,4,3],varnam:6,xml:1,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,execut:[2,3,4,5,6,8],tire:4,transact:6,configur:[0,1,2,4,3,6,7,9],solut:4,figur:4,somefil:6,should:[5,4,3,1],suppos:[5,6],about:[0,1,2,3,4,5,6],local:3,yml:6,custom:[4,6],long_running_oper:9,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,4,5,6,9],financ:2,stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],releas:[0,4],patch:4,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,asynchron:[2,6],statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],databas:6,someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],state:[5,4,3,6,9],won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,manpag:0,style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,webapp:[4,9],come:5,timmi:6,addit:[2,5,6],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],instanc:6,logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,format:[2,1,4,3,6,7,9],inspir:[2,4],chmod:[5,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,due:[4,5],been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],futur:[0,5],quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,ani:[2,3,4,5,6,8,9],upgrad:[3,9],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],"case":[4,5],authorized_kei:0,exception:4,look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],straight:9,md5sum:3,permit:[],batch:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],abov:[5,6,9],error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,unit:5,dag:4,conf:[6,9],module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],welcom:2,datetim:5,perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],member:1,handl:[4,5],complex:[2,4,6],split:5,document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],difficult:4,http:3,hostnam:[8,6],again:[4,5,6],nest:[5,3],painless:2,rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],fruit:1,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],typic:[4,9],tune:[],recent:4,dark:8,lower:[4,5],appropri:4,off:[2,4,6],scenario:3,mention:6,setenforc:6,compos:6,well:[0,4,3,6],hypothet:[],non:[2,5,6],without:[4,5],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,dereferenc:6,usual:[],explan:5,protocol:3,prepar:5,just:[0,1,2,3,4,5,6,9],less:[0,4,2],when:[5,4,3,6,9],rest:10,kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],except:5,littl:[2,4],add:[0,4,9],valid:5,simplejson:[0,5],notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,smart:9,take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,7,6,1,2],quirk:1,dest:[3,6,9],wai:[0,4,5,6,9],judgement:3,game:2,know:[5,4,3,1],background:[2,9],guid:[2,5,6],world:[0,4],bit:[4,3],password:[0,6],daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],success:[5,3],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],external_var:6,unnecessari:3,poor:5,shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,clojur:5,born:4,intern:5,heritag:4,server:[2,4,3,6,9],librari:[5,1],tmp:9,txt:3,forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,per:8,tracker:2,larg:4,select:[2,3,6,7],foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],power:[8,2,4,6],importerror:5,usag:[5,3,9],asciidoc:0,web2:8,vhost:6,step:[4,3,6],web1:8,promot:4,repositori:0,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],soon:[],simpler:[4,9],continu:5,comparison:[2,4],sshd:2,simplest:5,central:4,othervar:[],acm:9,simul:6,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],effici:[4,6],bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],three:7,noth:[6,1],pair:[5,3,1],multinod:4,ensur:[4,6,9],chang:[5,3,6,9],pitfal:[2,5],next:6,bserver:0,your:[0,2,3,4,5,6,7,9],risk:6,manag:[0,1,2,3,4,5,6,7,9],stare:5,behind:[4,3],git:[0,2,3,4,5,9],fabric:[2,4],real:0,aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,"long":[2,4,3,6,9],happi:2,verbos:[5,3],start:[0,1,2,4,3,6,9],trigger:[4,3,6],wordpress:6,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,stai:6,individu:7,fork:[8,4,6,9],head:[3,9],form:[5,6,1],enough:[7,4,9],lint:1,yeah:[],taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],freenod:2,info:9,pull:4,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],whether:[8,4,5],checkout:[5,4,3],caller:3,maximum:6,until:[0,5,6],planet:2,record:1,below:6,stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,facter:[2,4,3,6,9],curv:[2,4],featur:[7,4,6],tasti:1,creat:[2,4],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,6],check:[4,3,6,9],probabl:[4,5,6],echo:[0,6],denot:7,coder:4,googl:2,dbserver:[7,6],excel:[2,4],detail:[2,8,9],"default":[2,4,6,7],bracket:7,transport:[2,4],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],architectur:[2,4],node:[0,2,3,4,5,6,9],contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],devop:2,push:[4,6],scale:[2,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],legal:5,leav:[5,6],faster:6,amp:0,directori:[5,3,6],accept:5,reliabl:4,itself:8,emerg:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],far:[2,1],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,per:8,abil:4,follow:[4,3,6,7,8,9],scp:9,bubbl:[3,6],decid:[4,5,9],middl:[],depend:[4,5,6],sensit:[2,6],graph:4,elsewher:9,program:[2,1,3,4,5,6],mcollect:2,exit:[8,5],blindingli:2,spec:6,introduc:2,"case":[4,5],sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],without:[4,5],fals:[3,1],exception:4,signfic:5,difficult:4,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,form:[5,6,1],shlex:5,team:4,dotnet:1,saltstack:2,straight:9,librari:[5,1],pkg:[3,6,9],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],batch:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],compar:4,favcolor:[5,6,9],trivial:[2,3],section:[2,3,6],async_statu:9,current:[4,5,9],abbrevi:1,version:[3,6,9],suspect:4,directori:[5,3,6],"new":4,net:[],ever:[2,5],method:8,told:6,xml:1,hasn:4,hash:[5,3,1],abov:[5,6,9],conf:[6,9],declar:6,eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],pub:9,address:[7,4,3],path:[5,3],along:[5,6],standard:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],tire:4,ahead:6,precursor:2,likin:4,reason:[4,5],later:[5,6,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],transact:6,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],repositori:0,extra:4,solut:4,modul:[0,2,3,4,5,6,8,9],prefer:5,put:[0,6,9],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,unnecessari:3,cloud:4,highli:5,yourself:0,httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],suppos:[5,6],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,desir:[5,6],idempot:[5,4,3,6,9],comparison:[2,4],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],central:4,compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],manpag:0,none:8,join:2,ibm:2,module_arg:8,dest:[3,6,9],alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],acm:9,explor:0,onlin:1,simul:6,occur:[],nearli:[3,6,1],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],secur:[4,3],rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,instead:[4,3],somevalu:[5,6],config:[2,6],stock:3,map:6,financ:2,resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],handl:[4,5],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],happi:2,lame:1,explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],origin:2,help:[2,5,1],xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,effici:[4,6],suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,6,7],cli:8,complex:[2,4,6],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,scene:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,unlik:[4,6],separ:6,achiev:5,mode:[4,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],mean:[5,4,3,6,1],harm:[],mental:4,due:[4,5],michael:2,laserllama:2,hard:4,idea:[2,4,5,6],wordpress:6,realli:[5,4,3,6,1],ensur:[4,6,9],backport:0,expect:6,our:1,happen:[4,3],patch:4,event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,bserver:0,reboot:[6,9],content:[0,4,5,6,2],adapt:[],rel:3,internet:2,print:[8,5],got:4,correct:[2,4,6,1],red:[2,4,5,9],smart:9,qualifi:3,painless:2,insid:6,advanc:[8,4,6],ntp:9,unpars:5,given:[4,3,9],argv:5,args_fil:5,facter:[2,4,3,6,9],small:[4,6,1],fixm:[],base:[2,4,6],believ:4,dictionari:[5,6,1],ask:[2,4],org:0,featur:[7,4,6],bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],fruit:1,yum:[2,5,3,6,9],isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],oper:[2,3,6,9],softwar:[2,4,3,9],rang:2,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,number:3,placehold:6,restrict:5,mai:[0,1,3,4,5,6,8],instruct:[0,4],alreadi:[0,5,4,3,6],puppet:[2,4],"long":[2,4,3,6,9],massiv:2,open:[4,6],datetim:5,differ:[9,0,4,6,2],convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],too:[2,4,5,6,1],statement:[2,6],termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[8,4,5,9,10],especi:4,welcom:2,tool:[2,4,3,6,8,9,10],copi:[2,3,9],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],checkout:[5,4,3],rst:[],off:[2,4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,typic:[4,9],recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],argument:[5,3,6],hypothet:[],dash:1,packag:[2,5,4,3,9],aforement:7,complet:[4,6],have:[0,1,2,4,5,6,7],need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,well:[0,4,3,6],paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,client:2,note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],contact:[8,0,4,3],build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,whether:[8,4,5],plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,don:[3,4,5,6,7,9],doc:2,adopt:4,cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,bracket:7,snapshot:3,runtim:6,clean:4,databas:6,usual:[],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,syntax:[2,4,6,1],bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,playbook:[0,1,2,3,4,5,6,7,8,9,10],hack:[2,5],radic:2,protocol:3,dereferenc:6,fine:[4,5],find:[5,4,3],varnam:6,impact:4,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,just:[0,1,2,3,4,5,6,9],pretti:[8,4],explain:5,configur:[0,1,2,4,3,6,7,9],apach:[4,6,9],state:[5,4,3,6,9],somefil:6,should:[5,4,3,1],somevar:6,about:[0,1,2,3,4,5,6],local:3,yml:6,long_running_oper:9,contribut:[2,9],variou:[4,3,6],get:[0,1,2,4,5,6,9],express:[2,8,5,6,1],stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],"public":6,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,quirk:1,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,planet:2,statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],pattern:[2,8,6,7],someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],figur:4,won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,kei:[0,5,3,6,1],style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,recent:4,pull:4,webapp:[4,9],come:5,timmi:6,addit:[2,5,6],verbos:[5,3],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],instanc:6,logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,inspir:[2,4],chmod:[5,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,three:7,been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],txt:3,quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,ani:[2,3,4,5,6,8,9],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],emploi:1,authorized_kei:0,multi:[2,4,6],look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],servic:[2,5,3,6,9],md5sum:3,straighten:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],facter_hostnam:6,error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,dag:4,myapp:9,module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],inventori:[2,3,6,7],minim:[0,5],perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],check:[4,3,6,9],member:1,python:[0,1,2,3,4,5,8,9],add:[0,4,9],tutori:[2,5],split:5,success:[5,3],document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],higher:6,http:3,hostnam:[8,6],denot:7,nest:[5,3],permit:[],rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],rais:5,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],aka:6,tune:[],built:[0,4,9],yeah:[],judgement:3,lower:[4,5],appropri:4,kept:[4,6],scenario:3,mention:6,setenforc:6,compos:6,seth:4,spent:4,non:[2,5,6],exampl:[0,1,2,3,4,5,6,7,8,9,10],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,spend:4,latest:[3,6,9],explan:5,next:6,identifi:4,execut:[2,3,4,5,6,8],less:[0,4,2],excel:[2,4],rest:10,select:[2,3,6,7],kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],trigger:[4,3,6],except:5,littl:[2,4],async_wrapp:5,valid:5,larg:4,notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,kick:[4,6,9],take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,7,6,1,2],format:[2,1,4,3,6,7,9],read:[0,8,5,1,2],fast:2,dark:8,game:2,know:[5,4,3,1],background:[2,9],step:[4,3,6],world:[0,4],bit:[4,3],password:[0,6],daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],specif:[7,8,9],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],architectur:[2,4],page:[10,0,4,1,2],emerg:2,node:[0,2,3,4,5,6,9],shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,born:4,intern:5,fabric:[2,4],heritag:4,server:[2,4,3,6,9],transport:[2,4],tmp:9,guid:[2,5,6],forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,legal:5,tracker:2,leav:[5,6],unit:5,foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],itself:8,power:[8,2,4,6],importerror:5,usag:[5,3,9],devop:2,web2:8,vhost:6,host:[0,2,3,4,5,6,7,8,9],web1:8,promot:4,although:5,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],simpler:[4,9],src:[3,6,9],sshd:2,actual:[5,4,3,6],othervar:[],surround:[],manag:[0,1,2,3,4,5,6,7,9],freenod:2,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],real:0,bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],upgrad:[3,9],noth:[6,1],pair:[5,3,1],multinod:4,contrib:5,chang:[5,3,6,9],pitfal:[2,5],perl:9,soon:[],your:[0,2,3,4,5,6,7,9],risk:6,merg:4,stare:5,behind:[4,3],git:[0,2,3,4,5,9],prepar:5,wai:[0,4,5,6,9],aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,submit:4,custom:[4,6],avail:[0,1,3,4,5,6,8,9,10],start:[0,1,2,4,3,6,9],appl:1,interfac:4,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,individu:7,far:[2,1],fork:[8,4,6,9],head:[3,9],scale:[2,4],simplejson:[0,5],enough:[7,4,9],lint:1,continu:5,taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],congratul:0,info:9,strawberri:1,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],inquir:5,wish:[0,1,4,6,7,8],caller:3,maximum:6,until:[0,5,6],asynchron:[2,6],record:1,below:6,stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,connect:6,curv:[2,4],gather:4,tasti:1,creat:[2,4],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,6],simplest:5,probabl:[4,5,6],echo:[0,6],again:[4,5,6],coder:4,googl:2,dbserver:[7,6],when:[5,4,3,6,9],detail:[2,8,9],"default":[2,4,6,7],other:[0,1,2,3,4,5,6,9],futur:[0,5],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],external_var:6,poor:5,contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],asciidoc:0,releas:[0,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],stai:6,clojur:5,faster:6,amp:0,anywher:6,accept:5,reliabl:4,portion:7,place:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],push:[4,6],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file From 0674c31dbc9787e1d7314791729fa15969774631 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 15 Mar 2012 22:47:21 -0400 Subject: [PATCH 067/416] Added documentation on the 'file' module and how 'copy' and 'template' can also use the options that 'file' provides. --- YAMLSyntax.html | 2 +- api.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 3 ++- man.html | 2 +- man/ansible-playbook.1.html | 2 +- man/ansible.1.html | 2 +- moduledev.html | 2 +- modules.html | 36 +++++++++++++++++++++++++++++++++--- patterns.html | 2 +- playbooks.html | 2 +- rst/modules.rst | 34 ++++++++++++++++++++++++++++++++-- search.html | 2 +- searchindex.js | 2 +- 17 files changed, 81 insertions(+), 20 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 861e78c4298..48cbc75c0cd 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -261,7 +261,7 @@ languages:

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/api.html b/api.html index 8a0f87854c2..29313729182 100644 --- a/api.html +++ b/api.html @@ -245,7 +245,7 @@ command line tools ansible

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/examples.html b/examples.html index 0a5577da30e..a3a4d39e33e 100644 --- a/examples.html +++ b/examples.html @@ -298,7 +298,7 @@ shell commands or software upgrades only.

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/faq.html b/faq.html index bdb3f9d5b0b..f3ea701a99f 100644 --- a/faq.html +++ b/faq.html @@ -347,7 +347,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/genindex.html b/genindex.html index 4fac68cba6b..0a536deb20f 100644 --- a/genindex.html +++ b/genindex.html @@ -174,7 +174,7 @@ alt="Fork me on GitHub"

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/gettingstarted.html b/gettingstarted.html index 366bff14293..9d9c07ce50f 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -289,7 +289,7 @@ you already have a working infrastructure!

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/index.html b/index.html index d46f8081187..256829b4288 100644 --- a/index.html +++ b/index.html @@ -263,6 +263,7 @@ you with questions about Ansible.

  • command
  • copy
  • facter
  • +
  • file
  • git
  • ohai
  • ping
  • @@ -358,7 +359,7 @@ Puppet Labs, and rPath. Reach Michael by email Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/man.html b/man.html index 54335ea6baa..ff825e52ad1 100644 --- a/man.html +++ b/man.html @@ -192,7 +192,7 @@ examples of these tools in use.

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/man/ansible-playbook.1.html b/man/ansible-playbook.1.html index 6a1600ea11f..e8ddb16d569 100644 --- a/man/ansible-playbook.1.html +++ b/man/ansible-playbook.1.html @@ -1,6 +1,6 @@ -ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool +ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool used to run them. See the project home page (link below) for more information.

    ARGUMENTS

    filename.yml
    diff --git a/man/ansible.1.html b/man/ansible.1.html index fa12404f7ba..800ec399954 100644 --- a/man/ansible.1.html +++ b/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

    ARGUMENTS

    host-pattern
    diff --git a/moduledev.html b/moduledev.html index ff96fbb30f6..63919fd7964 100644 --- a/moduledev.html +++ b/moduledev.html @@ -405,7 +405,7 @@ Stop by the mailing list to inquire about requirements.

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/modules.html b/modules.html index 84e86c7293e..4b43e6d3d05 100644 --- a/modules.html +++ b/modules.html @@ -132,6 +132,7 @@ s.parentNode.insertBefore(ga, s);
  • command
  • copy
  • facter
  • +
  • file
  • git
  • ohai
  • ping
  • @@ -226,7 +227,9 @@ command was running for.

    copy

    -

    The copy module moves a file on the local box to remote locations.

    +

    The copy module moves a file on the local box to remote locations. In addition to the options +listed below, the arguments available to the file module can also be passed to the copy +module.

    src:

    • Local path to a file to copy to the remote server. This can be an @@ -248,6 +251,31 @@ support change hooks, nor does it make any changes on the system. Playbooks do not actually use this module, they use the setup module behind the scenes.

    +
    +

    file

    +

    Sets attributes of files and directories, or removes files/directories. All parameters available +to the file module are also available when running the copy or template modules.

    +

    dest:

    +
      +
    • absolute path to a file on the filesystem.
    • +
    +

    state:

    +
      +
    • either ‘file’, ‘directory’, or ‘absent’. The default is ‘file’. If ‘directory’, the directory and all immediate subdirectories will be created if they do not exist. If ‘file’, the file will NOT be created if it does not exist, specify copy or template for the module name instead if you need to put content at the specified location. If ‘absent’, directories will be recursively deleted, and files or symlinks will be unlinked.
    • +
    +

    mode:

    +
      +
    • the mode the file or directory should be, such as 644, as would be given to chmod. English modes like “g+x” are not yet supported.
    • +
    +

    owner:

    +
      +
    • name of user that should own the file or directory, as would be given to chown.
    • +
    +

    group:

    +
      +
    • name of group that should own the file or directory, as would be given to chgrp
    • +
    +

    git

    Deploys software (or files) from git checkouts.

    @@ -337,7 +365,9 @@ command was running for.

    template

    Templates a file out to a remote server. Call the setup module -prior to usage if you are not running from a playbook.

    +prior to usage if you are not running from a playbook. In addition to the options +listed below, the arguments available to the file module can also be passed to the copy +module.

    src:

    • Path of a Jinja2 formatted template on the local server. This can @@ -405,7 +435,7 @@ arguments just like they would be passed with ansible.

      Back to top

      © Copyright 2012 Michael DeHaan.
      - Last updated on Mar 14, 2012.
      + Last updated on Mar 15, 2012.
      Created using Sphinx 1.0.8.

    diff --git a/patterns.html b/patterns.html index a753a3ec030..dde078a069c 100644 --- a/patterns.html +++ b/patterns.html @@ -243,7 +243,7 @@ wildcards:

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/playbooks.html b/playbooks.html index bf45345d8bb..43dea22af9d 100644 --- a/playbooks.html +++ b/playbooks.html @@ -543,7 +543,7 @@ Let’s run a playbook using a parallelism level of 10:

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/rst/modules.rst b/rst/modules.rst index 3cc439c6ffd..2d12ec063b5 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -59,7 +59,9 @@ command was running for. copy ```` -The copy module moves a file on the local box to remote locations. +The copy module moves a file on the local box to remote locations. In addition to the options +listed below, the arguments available to the `file` module can also be passed to the copy +module. *src*: @@ -90,6 +92,32 @@ support change hooks, nor does it make any changes on the system. Playbooks do not actually use this module, they use the :ref:`setup` module behind the scenes. +file +```` + +Sets attributes of files and directories, or removes files/directories. All parameters available +to the file module are also available when running the `copy` or `template` modules. + +*dest*: + +* absolute path to a file on the filesystem. + +*state*: + +* either 'file', 'directory', or 'absent'. The default is 'file'. If 'directory', the directory and all immediate subdirectories will be created if they do not exist. If 'file', the file will NOT be created if it does not exist, specify `copy` or `template` for the module name instead if you need to put content at the specified location. If 'absent', directories will be recursively deleted, and files or symlinks will be unlinked. + +*mode*: + +* the mode the file or directory should be, such as 644, as would be given to `chmod`. English modes like "g+x" are not yet supported. + +*owner*: + +* name of user that should own the file or directory, as would be given to `chown`. + +*group*: + +* name of group that should own the file or directory, as would be given to `chgrp` + git ``` @@ -206,7 +234,9 @@ template ```````` Templates a file out to a remote server. Call the :ref:`setup` module -prior to usage if you are not running from a playbook. +prior to usage if you are not running from a playbook. In addition to the options +listed below, the arguments available to the `file` module can also be passed to the copy +module. *src*: diff --git a/search.html b/search.html index 6bb09a3bb07..f05697d30f0 100644 --- a/search.html +++ b/search.html @@ -188,7 +188,7 @@ alt="Fork me on GitHub"

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 14, 2012.
    + Last updated on Mar 15, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/searchindex.js b/searchindex.js index 4ce77873b87..0b21405c2b4 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,per:8,abil:4,follow:[4,3,6,7,8,9],scp:9,bubbl:[3,6],decid:[4,5,9],middl:[],depend:[4,5,6],sensit:[2,6],graph:4,elsewher:9,program:[2,1,3,4,5,6],mcollect:2,exit:[8,5],blindingli:2,spec:6,introduc:2,"case":[4,5],sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],without:[4,5],fals:[3,1],exception:4,signfic:5,difficult:4,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,form:[5,6,1],shlex:5,team:4,dotnet:1,saltstack:2,straight:9,librari:[5,1],pkg:[3,6,9],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],batch:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],compar:4,favcolor:[5,6,9],trivial:[2,3],section:[2,3,6],async_statu:9,current:[4,5,9],abbrevi:1,version:[3,6,9],suspect:4,directori:[5,3,6],"new":4,net:[],ever:[2,5],method:8,told:6,xml:1,hasn:4,hash:[5,3,1],abov:[5,6,9],conf:[6,9],declar:6,eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],pub:9,address:[7,4,3],path:[5,3],along:[5,6],standard:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],tire:4,ahead:6,precursor:2,likin:4,reason:[4,5],later:[5,6,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],transact:6,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],repositori:0,extra:4,solut:4,modul:[0,2,3,4,5,6,8,9],prefer:5,put:[0,6,9],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,unnecessari:3,cloud:4,highli:5,yourself:0,httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],suppos:[5,6],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,desir:[5,6],idempot:[5,4,3,6,9],comparison:[2,4],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],central:4,compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],manpag:0,none:8,join:2,ibm:2,module_arg:8,dest:[3,6,9],alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],acm:9,explor:0,onlin:1,simul:6,occur:[],nearli:[3,6,1],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],secur:[4,3],rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,instead:[4,3],somevalu:[5,6],config:[2,6],stock:3,map:6,financ:2,resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],handl:[4,5],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],happi:2,lame:1,explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],origin:2,help:[2,5,1],xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,effici:[4,6],suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,6,7],cli:8,complex:[2,4,6],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,scene:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,unlik:[4,6],separ:6,achiev:5,mode:[4,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],mean:[5,4,3,6,1],harm:[],mental:4,due:[4,5],michael:2,laserllama:2,hard:4,idea:[2,4,5,6],wordpress:6,realli:[5,4,3,6,1],ensur:[4,6,9],backport:0,expect:6,our:1,happen:[4,3],patch:4,event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,bserver:0,reboot:[6,9],content:[0,4,5,6,2],adapt:[],rel:3,internet:2,print:[8,5],got:4,correct:[2,4,6,1],red:[2,4,5,9],smart:9,qualifi:3,painless:2,insid:6,advanc:[8,4,6],ntp:9,unpars:5,given:[4,3,9],argv:5,args_fil:5,facter:[2,4,3,6,9],small:[4,6,1],fixm:[],base:[2,4,6],believ:4,dictionari:[5,6,1],ask:[2,4],org:0,featur:[7,4,6],bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],fruit:1,yum:[2,5,3,6,9],isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],oper:[2,3,6,9],softwar:[2,4,3,9],rang:2,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,number:3,placehold:6,restrict:5,mai:[0,1,3,4,5,6,8],instruct:[0,4],alreadi:[0,5,4,3,6],puppet:[2,4],"long":[2,4,3,6,9],massiv:2,open:[4,6],datetim:5,differ:[9,0,4,6,2],convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],too:[2,4,5,6,1],statement:[2,6],termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[8,4,5,9,10],especi:4,welcom:2,tool:[2,4,3,6,8,9,10],copi:[2,3,9],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],checkout:[5,4,3],rst:[],off:[2,4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,typic:[4,9],recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],argument:[5,3,6],hypothet:[],dash:1,packag:[2,5,4,3,9],aforement:7,complet:[4,6],have:[0,1,2,4,5,6,7],need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,well:[0,4,3,6],paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,client:2,note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],contact:[8,0,4,3],build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,whether:[8,4,5],plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,don:[3,4,5,6,7,9],doc:2,adopt:4,cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,bracket:7,snapshot:3,runtim:6,clean:4,databas:6,usual:[],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,syntax:[2,4,6,1],bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,playbook:[0,1,2,3,4,5,6,7,8,9,10],hack:[2,5],radic:2,protocol:3,dereferenc:6,fine:[4,5],find:[5,4,3],varnam:6,impact:4,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,just:[0,1,2,3,4,5,6,9],pretti:[8,4],explain:5,configur:[0,1,2,4,3,6,7,9],apach:[4,6,9],state:[5,4,3,6,9],somefil:6,should:[5,4,3,1],somevar:6,about:[0,1,2,3,4,5,6],local:3,yml:6,long_running_oper:9,contribut:[2,9],variou:[4,3,6],get:[0,1,2,4,5,6,9],express:[2,8,5,6,1],stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],"public":6,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,quirk:1,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,planet:2,statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],pattern:[2,8,6,7],someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],figur:4,won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,kei:[0,5,3,6,1],style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,recent:4,pull:4,webapp:[4,9],come:5,timmi:6,addit:[2,5,6],verbos:[5,3],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],instanc:6,logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,inspir:[2,4],chmod:[5,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,three:7,been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],txt:3,quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,ani:[2,3,4,5,6,8,9],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],emploi:1,authorized_kei:0,multi:[2,4,6],look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],servic:[2,5,3,6,9],md5sum:3,straighten:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],facter_hostnam:6,error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,dag:4,myapp:9,module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],inventori:[2,3,6,7],minim:[0,5],perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],check:[4,3,6,9],member:1,python:[0,1,2,3,4,5,8,9],add:[0,4,9],tutori:[2,5],split:5,success:[5,3],document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],higher:6,http:3,hostnam:[8,6],denot:7,nest:[5,3],permit:[],rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],rais:5,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],aka:6,tune:[],built:[0,4,9],yeah:[],judgement:3,lower:[4,5],appropri:4,kept:[4,6],scenario:3,mention:6,setenforc:6,compos:6,seth:4,spent:4,non:[2,5,6],exampl:[0,1,2,3,4,5,6,7,8,9,10],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,spend:4,latest:[3,6,9],explan:5,next:6,identifi:4,execut:[2,3,4,5,6,8],less:[0,4,2],excel:[2,4],rest:10,select:[2,3,6,7],kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],trigger:[4,3,6],except:5,littl:[2,4],async_wrapp:5,valid:5,larg:4,notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,kick:[4,6,9],take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,7,6,1,2],format:[2,1,4,3,6,7,9],read:[0,8,5,1,2],fast:2,dark:8,game:2,know:[5,4,3,1],background:[2,9],step:[4,3,6],world:[0,4],bit:[4,3],password:[0,6],daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],specif:[7,8,9],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],architectur:[2,4],page:[10,0,4,1,2],emerg:2,node:[0,2,3,4,5,6,9],shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,born:4,intern:5,fabric:[2,4],heritag:4,server:[2,4,3,6,9],transport:[2,4],tmp:9,guid:[2,5,6],forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,legal:5,tracker:2,leav:[5,6],unit:5,foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],itself:8,power:[8,2,4,6],importerror:5,usag:[5,3,9],devop:2,web2:8,vhost:6,host:[0,2,3,4,5,6,7,8,9],web1:8,promot:4,although:5,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],simpler:[4,9],src:[3,6,9],sshd:2,actual:[5,4,3,6],othervar:[],surround:[],manag:[0,1,2,3,4,5,6,7,9],freenod:2,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],real:0,bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],upgrad:[3,9],noth:[6,1],pair:[5,3,1],multinod:4,contrib:5,chang:[5,3,6,9],pitfal:[2,5],perl:9,soon:[],your:[0,2,3,4,5,6,7,9],risk:6,merg:4,stare:5,behind:[4,3],git:[0,2,3,4,5,9],prepar:5,wai:[0,4,5,6,9],aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,submit:4,custom:[4,6],avail:[0,1,3,4,5,6,8,9,10],start:[0,1,2,4,3,6,9],appl:1,interfac:4,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,individu:7,far:[2,1],fork:[8,4,6,9],head:[3,9],scale:[2,4],simplejson:[0,5],enough:[7,4,9],lint:1,continu:5,taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],congratul:0,info:9,strawberri:1,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],inquir:5,wish:[0,1,4,6,7,8],caller:3,maximum:6,until:[0,5,6],asynchron:[2,6],record:1,below:6,stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,connect:6,curv:[2,4],gather:4,tasti:1,creat:[2,4],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,6],simplest:5,probabl:[4,5,6],echo:[0,6],again:[4,5,6],coder:4,googl:2,dbserver:[7,6],when:[5,4,3,6,9],detail:[2,8,9],"default":[2,4,6,7],other:[0,1,2,3,4,5,6,9],futur:[0,5],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],external_var:6,poor:5,contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],asciidoc:0,releas:[0,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],stai:6,clojur:5,faster:6,amp:0,anywher:6,accept:5,reliabl:4,portion:7,place:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],push:[4,6],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,legal:5,abil:4,follow:[4,3,6,7,8,9],scp:9,bubbl:[3,6],decid:[4,5,9],middl:[],depend:[4,5,6],sensit:[2,6],graph:4,elsewher:9,program:[2,1,3,4,5,6],mcollect:2,larg:4,blindingli:2,spec:6,introduc:2,"case":[4,5],sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],without:[4,5],fals:[3,1],exception:4,signfic:5,difficult:4,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,form:[5,6,1],shlex:5,team:4,dotnet:1,saltstack:2,straight:9,pkg:[3,6,9],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],batch:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],compar:4,favcolor:[5,6,9],trivial:[2,3],section:[2,3,6],async_statu:9,current:[4,5,9],delet:3,abbrevi:1,version:[3,6,9],suspect:4,"new":4,net:[],ever:[2,5],method:8,told:6,manag:[0,1,2,3,4,5,6,7,9],xml:1,hasn:4,hash:[5,3,1],abov:[5,6,9],conf:[6,9],eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],pub:9,address:[7,4,3],path:[5,3],along:[5,6],standard:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],tire:4,ahead:6,precursor:2,likin:4,reason:[4,5],later:[5,6,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],transact:6,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],repositori:0,extra:4,solut:4,modul:[0,2,3,4,5,6,8,9],prefer:5,put:[0,3,6,9],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,cloud:4,highli:5,yourself:0,httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],suppos:[5,6],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,desir:[5,6],idempot:[5,4,3,6,9],comparison:[2,4],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],central:4,compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],manpag:0,none:8,join:2,ibm:2,module_arg:8,dest:[3,6,9],alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],acm:9,explor:0,onlin:1,simul:6,occur:[],nearli:[3,6,1],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],secur:[4,3],rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,subdirectori:3,instead:[4,3],somevalu:[5,6],runtim:6,config:[2,6],stock:3,map:6,financ:2,resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],"long":[2,4,3,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],handl:[4,5],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],happi:2,ani:[2,3,4,5,6,8,9],lame:1,explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],origin:2,help:[2,5,1],xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,3,6,7],cli:8,complex:[2,4,6],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,scene:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,unlik:[4,6],separ:6,achiev:5,mode:[4,3,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],mean:[5,4,3,6,1],harm:[],mental:4,michael:2,laserllama:2,hard:4,idea:[2,4,5,6],wordpress:6,realli:[5,4,3,6,1],ensur:[4,6,9],backport:0,expect:6,our:1,happen:[4,3],patch:4,event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,bserver:0,reboot:[6,9],content:[0,2,3,4,5,6],adapt:[],rel:3,internet:2,print:[8,5],got:4,correct:[2,4,6,1],red:[2,4,5,9],smart:9,qualifi:3,painless:2,insid:6,advanc:[8,4,6],ntp:9,unpars:5,given:[4,3,9],argv:5,args_fil:5,facter:[2,4,3,6,9],small:[4,6,1],fixm:[],base:[2,4,6],believ:4,dictionari:[5,6,1],ask:[2,4],org:0,featur:[7,4,6],bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],fruit:1,yum:[2,5,3,6,9],isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],oper:[2,3,6,9],softwar:[2,4,3,9],rang:2,english:3,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,number:3,placehold:6,restrict:5,mai:[0,1,3,4,5,6,8],instruct:[0,4],alreadi:[0,5,4,3,6],puppet:[2,4],fast:2,owner:3,massiv:2,open:[4,6],datetim:5,differ:[9,0,4,6,2],unlink:3,bracket:7,convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],too:[2,4,5,6,1],statement:[2,6],termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[3,4,5,8,9,10],especi:4,welcom:2,tool:[2,4,3,6,8,9,10],copi:[2,3,9],leav:[5,6],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],checkout:[5,4,3],rst:[],off:[2,4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,typic:[4,9],recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],anywher:6,hypothet:[],dash:1,packag:[2,5,4,3,9],aforement:7,complet:[4,6],have:[0,1,2,4,5,6,7],need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,well:[0,4,3,6],paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,client:2,note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],contact:[8,0,4,3],build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,filesystem:3,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,whether:[8,4,5],plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,don:[3,4,5,6,7,9],doc:2,adopt:4,cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,declar:6,snapshot:3,place:2,clean:4,databas:6,usual:[],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,syntax:[2,4,6,1],bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,playbook:[0,1,2,3,4,5,6,7,8,9,10],hack:[2,5],radic:2,protocol:3,dereferenc:6,fine:[4,5],find:[5,4,3],transport:[2,4],varnam:6,impact:4,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,just:[0,1,2,3,4,5,6,9],pretti:[8,4],explain:5,configur:[0,1,2,4,3,6,7,9],apach:[4,6,9],state:[5,4,3,6,9],somefil:6,should:[5,4,3,1],somevar:6,about:[0,1,2,3,4,5,6],local:3,yml:6,long_running_oper:9,contribut:[2,9],variou:[4,3,6],get:[0,1,2,4,5,6,9],express:[2,8,5,6,1],stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],"public":6,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,quirk:1,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,planet:2,statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],pattern:[2,8,6,7],someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],figur:4,won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,kei:[0,5,3,6,1],style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,recent:4,pull:4,webapp:[4,9],come:5,timmi:6,addit:[2,5,3,6],verbos:[5,3],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],tutori:[2,5],logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,inspir:[2,4],chmod:[5,3,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,three:7,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,due:[4,5],been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],txt:3,immedi:3,quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,argument:[5,3,6],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],real:0,emploi:1,authorized_kei:0,multi:[2,4,6],look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],servic:[2,5,3,6,9],md5sum:3,straighten:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],facter_hostnam:6,error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,dag:4,myapp:9,module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],inventori:[2,3,6,7],minim:[0,5],perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],check:[4,3,6,9],member:1,python:[0,1,2,3,4,5,8,9],add:[0,4,9],instanc:6,split:5,success:[5,3],document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],higher:6,http:3,hostnam:[8,6],denot:7,nest:[5,3],permit:[],rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],rais:5,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],aka:6,tune:[],built:[0,4,9],yeah:[],judgement:3,lower:[4,5],appropri:4,kept:[4,6],scenario:3,mention:6,setenforc:6,compos:6,seth:4,spent:4,non:[2,5,6],exampl:[0,1,2,3,4,5,6,7,8,9,10],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,spend:4,latest:[3,6,9],explan:5,next:6,identifi:4,execut:[2,3,4,5,6,8],less:[0,4,2],excel:[2,4],rest:10,detail:[2,8,9],select:[2,3,6,7],kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,yet:3,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],trigger:[4,3,6],except:5,littl:[2,4],async_wrapp:5,valid:5,notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,kick:[4,6,9],take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,7,6,1,2],format:[2,1,4,3,6,7,9],read:[0,8,5,1,2],dark:8,game:2,know:[5,4,3,1],background:[2,9],step:[4,3,6],world:[0,4],bit:[4,3],password:[0,6],recurs:3,daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],specif:[7,8,9],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],architectur:[2,4],page:[10,0,4,1,2],node:[0,2,3,4,5,6,9],shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,born:4,intern:5,fabric:[2,4],heritag:4,server:[2,4,3,6,9],librari:[5,1],absent:3,tmp:9,guid:[2,5,6],forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,per:8,tracker:2,exit:[8,5],unit:5,foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],itself:8,power:[8,2,4,6],importerror:5,usag:[5,3,9],symlink:3,devop:2,web2:8,vhost:6,host:[0,2,3,4,5,6,7,8,9],web1:8,promot:4,although:5,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],simpler:[4,9],src:[3,6,9],sshd:2,actual:[5,4,3,6],othervar:[],surround:[],unnecessari:3,freenod:2,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],effici:[4,6],bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],upgrad:[3,9],noth:[6,1],pair:[5,3,1],multinod:4,contrib:5,chang:[5,3,6,9],pitfal:[2,5],perl:9,soon:[],your:[0,2,3,4,5,6,7,9],risk:6,merg:4,stare:5,behind:[4,3],git:[0,2,3,4,5,9],prepar:5,wai:[0,4,5,6,9],aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,submit:4,custom:[4,6],avail:[0,1,3,4,5,6,8,9,10],start:[0,1,2,4,3,6,9],appl:1,interfac:4,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,individu:7,far:[2,1],fork:[8,4,6,9],head:[3,9],scale:[2,4],simplejson:[0,5],enough:[7,4,9],lint:1,continu:5,taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],congratul:0,info:9,strawberri:1,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],inquir:5,wish:[0,1,4,6,7,8],caller:3,maximum:6,until:[0,5,6],asynchron:[2,6],record:1,below:[3,6],stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,connect:6,curv:[2,4],gather:4,tasti:1,creat:[2,4,3],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,3,6],simplest:5,probabl:[4,5,6],echo:[0,6],again:[4,5,6],coder:4,googl:2,dbserver:[7,6],when:[5,4,3,6,9],chown:3,chgrp:3,"default":[2,4,3,6,7],other:[0,1,2,3,4,5,6,9],futur:[0,5],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],external_var:6,poor:5,contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],asciidoc:0,releas:[0,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],stai:6,clojur:5,faster:6,amp:0,directori:[5,3,6],accept:5,reliabl:4,portion:7,emerg:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],push:[4,6],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file From d78817c426b2440feda076a3d6cb4508a0fe3d1b Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 15 Mar 2012 22:57:10 -0400 Subject: [PATCH 068/416] Add file features to examples. --- examples.html | 28 ++++++++++++++++++++++------ man/ansible-playbook.1.html | 2 +- man/ansible.1.html | 2 +- rst/examples.rst | 34 ++++++++++++++++++++++++++++------ searchindex.js | 2 +- 5 files changed, 53 insertions(+), 15 deletions(-) diff --git a/examples.html b/examples.html index a3a4d39e33e..030ab837fc0 100644 --- a/examples.html +++ b/examples.html @@ -214,17 +214,33 @@ optionally use them as template sources.

    To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the -template module to write the files using the templates. Templates are -written in Jinja2 format. Playbooks (covered elsewhere in the +template module to write the files using those templates.

    +

    Templates are written in Jinja2 format. Playbooks (covered elsewhere in the documentation) will run the setup module for you, making this even -simpler.:

    +simpler:

    ansible webservers -m setup    -a "favcolor=red ntp_server=192.168.1.1"
     ansible webservers -m template -a "src=/srv/motd.j2 dest=/etc/motd"
     ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf"
    -

    Need something like the fqdn in a template? If facter or ohai are -installed, data from these projects will also be made available to the -template engine, using ‘facter’ and ‘ohai’ prefixes for each.

    +

    Ansible variables are used in templates by using the name surrounded by double +curly-braces. If facter or ohai were installed on the remote machine, variables +from those programs can be accessed too, which the appropriate prefix:

    +
    This is an Ansible variable: {{ favcolor }}
    +This is a facter variable: {{ facter_hostname }}
    +This is an ohai variable: {{ ohai_foo }}
    +
    +

    The file module allows changing ownership and permissions on files. These +same options can be passed directly to the copy or template modules as well:

    +
    ansible webservers -m file -a "dest=/srv/foo/a.txt mode=600"
    +ansible webservers -m file -a "dest=/srv/foo/b.txt mode=600 owner=mdehaan group=mdehaan"
    +
    +

    The file module can also create directories, similar to mkdir -p:

    +
    ansible webservers -m file -a "dest=/path/to/c mode=644 owner=mdehaan group=mdehaan state=directory"
    +
    +

    As well as delete directories (recursively) and delete files:

    +
    ansible webservers -m file -a "dest=/path/to/c state=absent"
    +
    +

    The mode, owner, and group flags can also be used on the copy or template lines.

    Managing Packages

    diff --git a/man/ansible-playbook.1.html b/man/ansible-playbook.1.html index e8ddb16d569..c98d7a79524 100644 --- a/man/ansible-playbook.1.html +++ b/man/ansible-playbook.1.html @@ -1,6 +1,6 @@ -ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool +ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool used to run them. See the project home page (link below) for more information.

    ARGUMENTS

    filename.yml
    diff --git a/man/ansible.1.html b/man/ansible.1.html index 800ec399954..a03554ea586 100644 --- a/man/ansible.1.html +++ b/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

    ARGUMENTS

    host-pattern
    diff --git a/rst/examples.rst b/rst/examples.rst index 474368fee26..ba2b7564ec2 100644 --- a/rst/examples.rst +++ b/rst/examples.rst @@ -44,18 +44,40 @@ To just transfer a file directly to many different servers:: To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the -template module to write the files using the templates. Templates are -written in Jinja2 format. Playbooks (covered elsewhere in the +template module to write the files using those templates. + +Templates are written in Jinja2 format. Playbooks (covered elsewhere in the documentation) will run the setup module for you, making this even -simpler.:: +simpler:: ansible webservers -m setup -a "favcolor=red ntp_server=192.168.1.1" ansible webservers -m template -a "src=/srv/motd.j2 dest=/etc/motd" ansible webservers -m template -a "src=/srv/ntp.j2 dest=/etc/ntp.conf" -Need something like the fqdn in a template? If facter or ohai are -installed, data from these projects will also be made available to the -template engine, using 'facter' and 'ohai' prefixes for each. +Ansible variables are used in templates by using the name surrounded by double +curly-braces. If facter or ohai were installed on the remote machine, variables +from those programs can be accessed too, which the appropriate prefix:: + + This is an Ansible variable: {{ favcolor }} + This is a facter variable: {{ facter_hostname }} + This is an ohai variable: {{ ohai_foo }} + +The `file` module allows changing ownership and permissions on files. These +same options can be passed directly to the `copy` or `template` modules as well:: + + ansible webservers -m file -a "dest=/srv/foo/a.txt mode=600" + ansible webservers -m file -a "dest=/srv/foo/b.txt mode=600 owner=mdehaan group=mdehaan" + +The `file` module can also create directories, similar to `mkdir -p`:: + + ansible webservers -m file -a "dest=/path/to/c mode=644 owner=mdehaan group=mdehaan state=directory" + +As well as delete directories (recursively) and delete files:: + + ansible webservers -m file -a "dest=/path/to/c state=absent" + +The mode, owner, and group flags can also be used on the copy or template lines. + Managing Packages ````````````````` diff --git a/searchindex.js b/searchindex.js index 0b21405c2b4..0ff6b80d798 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,legal:5,abil:4,follow:[4,3,6,7,8,9],scp:9,bubbl:[3,6],decid:[4,5,9],middl:[],depend:[4,5,6],sensit:[2,6],graph:4,elsewher:9,program:[2,1,3,4,5,6],mcollect:2,larg:4,blindingli:2,spec:6,introduc:2,"case":[4,5],sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],without:[4,5],fals:[3,1],exception:4,signfic:5,difficult:4,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,form:[5,6,1],shlex:5,team:4,dotnet:1,saltstack:2,straight:9,pkg:[3,6,9],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],batch:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6],download:[0,2],further:[6,1],port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],compar:4,favcolor:[5,6,9],trivial:[2,3],section:[2,3,6],async_statu:9,current:[4,5,9],delet:3,abbrevi:1,version:[3,6,9],suspect:4,"new":4,net:[],ever:[2,5],method:8,told:6,manag:[0,1,2,3,4,5,6,7,9],xml:1,hasn:4,hash:[5,3,1],abov:[5,6,9],conf:[6,9],eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],pub:9,address:[7,4,3],path:[5,3],along:[5,6],standard:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],tire:4,ahead:6,precursor:2,likin:4,reason:[4,5],later:[5,6,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],transact:6,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],repositori:0,extra:4,solut:4,modul:[0,2,3,4,5,6,8,9],prefer:5,put:[0,3,6,9],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,cloud:4,highli:5,yourself:0,httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],suppos:[5,6],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,desir:[5,6],idempot:[5,4,3,6,9],comparison:[2,4],notif:4,stone:5,notic:4,train:4,agent:[0,9],particular:[2,6],central:4,compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],manpag:0,none:8,join:2,ibm:2,module_arg:8,dest:[3,6,9],alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],acm:9,explor:0,onlin:1,simul:6,occur:[],nearli:[3,6,1],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],secur:[4,3],rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,subdirectori:3,instead:[4,3],somevalu:[5,6],runtim:6,config:[2,6],stock:3,map:6,financ:2,resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],"long":[2,4,3,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8,9],parallel:[2,4,6,9],man:[2,10],handl:[4,5],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],happi:2,ani:[2,3,4,5,6,8,9],lame:1,explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6],exclus:6,order:[4,6],talk:[0,6],origin:2,help:[2,5,1],xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,8,3,6,7],cli:8,complex:[2,4,6],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,scene:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,unlik:[4,6],separ:6,achiev:5,mode:[4,3,6,9],timeout:6,each:[1,3,4,5,6,9],debug:1,found:[8,5],updat:[3,9],mean:[5,4,3,6,1],harm:[],mental:4,michael:2,laserllama:2,hard:4,idea:[2,4,5,6],wordpress:6,realli:[5,4,3,6,1],ensur:[4,6,9],backport:0,expect:6,our:1,happen:[4,3],patch:4,event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],safeti:7,network:2,space:3,bserver:0,reboot:[6,9],content:[0,2,3,4,5,6],adapt:[],rel:3,internet:2,print:[8,5],got:4,correct:[2,4,6,1],red:[2,4,5,9],smart:9,qualifi:3,painless:2,insid:6,advanc:[8,4,6],ntp:9,unpars:5,given:[4,3,9],argv:5,args_fil:5,facter:[2,4,3,6,9],small:[4,6,1],fixm:[],base:[2,4,6],believ:4,dictionari:[5,6,1],ask:[2,4],org:0,featur:[7,4,6],bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:9,keep:[5,6],thing:[2,1,4,5,6,7],fruit:1,yum:[2,5,3,6,9],isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],oper:[2,3,6,9],softwar:[2,4,3,9],rang:2,english:3,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,number:3,placehold:6,restrict:5,mai:[0,1,3,4,5,6,8],instruct:[0,4],alreadi:[0,5,4,3,6],puppet:[2,4],fast:2,owner:3,massiv:2,open:[4,6],datetim:5,differ:[9,0,4,6,2],unlink:3,bracket:7,convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:[],system:[0,2,3,4,5,6,7,9],construct:[8,4],too:[2,4,5,6,1],statement:[2,6],termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[3,4,5,8,9,10],especi:4,welcom:2,tool:[2,4,3,6,8,9,10],copi:[2,3,9],leav:[5,6],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],checkout:[5,4,3],rst:[],off:[2,4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[9,0,4,6,2],reus:[2,6],architect:2,str:5,were:[4,6],minut:[4,9],uses_cv:1,typic:[4,9],recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],anywher:6,hypothet:[],dash:1,packag:[2,5,4,3,9],aforement:7,complet:[4,6],have:[0,1,2,4,5,6,7],need:[0,1,3,4,5,6,9],seem:4,predic:3,seek:3,well:[0,4,3,6],paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,client:2,note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],contact:[8,0,4,3],build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,filesystem:3,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,whether:[8,4,5],plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,don:[3,4,5,6,7,9],doc:2,adopt:4,cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,declar:6,snapshot:3,place:2,clean:4,databas:6,usual:[],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,syntax:[2,4,6,1],bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,playbook:[0,1,2,3,4,5,6,7,8,9,10],hack:[2,5],radic:2,protocol:3,dereferenc:6,fine:[4,5],find:[5,4,3],transport:[2,4],varnam:6,impact:4,absolut:3,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,just:[0,1,2,3,4,5,6,9],pretti:[8,4],explain:5,configur:[0,1,2,4,3,6,7,9],apach:[4,6,9],state:[5,4,3,6,9],somefil:6,should:[5,4,3,1],somevar:6,about:[0,1,2,3,4,5,6],local:3,yml:6,long_running_oper:9,contribut:[2,9],variou:[4,3,6],get:[0,1,2,4,5,6,9],express:[2,8,5,6,1],stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:6,bar:[7,6],"public":6,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,quirk:1,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,planet:2,statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],pattern:[2,8,6,7],someth:[2,3,4,5,6,9],discoveri:3,restart:[4,3,6,9],figur:4,won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,kei:[0,5,3,6,1],style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,recent:4,pull:4,webapp:[4,9],come:5,timmi:6,addit:[2,5,3,6],verbos:[5,3],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],tutori:[2,5],logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,inspir:[2,4],chmod:[5,3,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,three:7,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,due:[4,5],been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],txt:3,immedi:3,quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,argument:[5,3,6],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6],real:0,emploi:1,authorized_kei:0,multi:[2,4,6],look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],servic:[2,5,3,6,9],md5sum:3,straighten:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],facter_hostnam:6,error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,dag:4,myapp:9,module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],inventori:[2,3,6,7],minim:[0,5],perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],check:[4,3,6,9],member:1,python:[0,1,2,3,4,5,8,9],add:[0,4,9],instanc:6,split:5,success:[5,3],document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],higher:6,http:3,hostnam:[8,6],denot:7,nest:[5,3],permit:[],rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],rais:5,user:[2,4,3,6],extern:[2,6],engin:9,php:9,distutil:[0,2],aka:6,tune:[],built:[0,4,9],yeah:[],judgement:3,lower:[4,5],appropri:4,kept:[4,6],scenario:3,mention:6,setenforc:6,compos:6,seth:4,spent:4,non:[2,5,6],exampl:[0,1,2,3,4,5,6,7,8,9,10],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],choos:3,programm:[8,4],model:6,guidelin:5,spend:4,latest:[3,6,9],explan:5,next:6,identifi:4,execut:[2,3,4,5,6,8],less:[0,4,2],excel:[2,4],rest:10,detail:[2,8,9],select:[2,3,6,7],kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,yet:3,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],trigger:[4,3,6],except:5,littl:[2,4],async_wrapp:5,valid:5,notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,kick:[4,6,9],take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,7,6,1,2],format:[2,1,4,3,6,7,9],read:[0,8,5,1,2],dark:8,game:2,know:[5,4,3,1],background:[2,9],step:[4,3,6],world:[0,4],bit:[4,3],password:[0,6],recurs:3,daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],specif:[7,8,9],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],architectur:[2,4],page:[10,0,4,1,2],node:[0,2,3,4,5,6,9],shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,born:4,intern:5,fabric:[2,4],heritag:4,server:[2,4,3,6,9],librari:[5,1],absent:3,tmp:9,guid:[2,5,6],forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,per:8,tracker:2,exit:[8,5],unit:5,foo:[7,6,9],complic:[2,4],refer:9,machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],itself:8,power:[8,2,4,6],importerror:5,usag:[5,3,9],symlink:3,devop:2,web2:8,vhost:6,host:[0,2,3,4,5,6,7,8,9],web1:8,promot:4,although:5,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],simpler:[4,9],src:[3,6,9],sshd:2,actual:[5,4,3,6],othervar:[],surround:[],unnecessari:3,freenod:2,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],effici:[4,6],bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],upgrad:[3,9],noth:[6,1],pair:[5,3,1],multinod:4,contrib:5,chang:[5,3,6,9],pitfal:[2,5],perl:9,soon:[],your:[0,2,3,4,5,6,7,9],risk:6,merg:4,stare:5,behind:[4,3],git:[0,2,3,4,5,9],prepar:5,wai:[0,4,5,6,9],aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,submit:4,custom:[4,6],avail:[0,1,3,4,5,6,8,9,10],start:[0,1,2,4,3,6,9],appl:1,interfac:4,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,individu:7,far:[2,1],fork:[8,4,6,9],head:[3,9],scale:[2,4],simplejson:[0,5],enough:[7,4,9],lint:1,continu:5,taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],congratul:0,info:9,strawberri:1,"throw":4,made:[5,4,3,9],input:[2,5],possibl:[7,5,6,9],inquir:5,wish:[0,1,4,6,7,8],caller:3,maximum:6,until:[0,5,6],asynchron:[2,6],record:1,below:[3,6],stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6],email:2,connect:6,curv:[2,4],gather:4,tasti:1,creat:[2,4,3],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,3,6],simplest:5,probabl:[4,5,6],echo:[0,6],again:[4,5,6],coder:4,googl:2,dbserver:[7,6],when:[5,4,3,6,9],chown:3,chgrp:3,"default":[2,4,3,6,7],other:[0,1,2,3,4,5,6,9],futur:[0,5],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],external_var:6,poor:5,contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],asciidoc:0,releas:[0,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],stai:6,clojur:5,faster:6,amp:0,directori:[5,3,6],accept:5,reliabl:4,portion:7,emerg:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],push:[4,6],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{all:[0,1,2,3,4,5,6,7,8,9],concept:9,forget:6,selinux:6,consum:4,pluggabl:4,invent:6,prefix:[3,6,9],code:[2,5,4,3,9],sleep:6,per:8,abil:4,follow:[4,3,6,7,8,9],scp:9,bubbl:[3,6],decid:[4,5,9],middl:[],depend:[4,5,6],sensit:[2,6],graph:4,elsewher:9,program:[2,1,3,4,5,6,9],mcollect:2,larg:4,blindingli:2,spec:6,introduc:2,"case":[4,5],sourc:[2,3,4,5,6,8,9],everi:[6,1,9],string:[5,3],without:[4,5],fals:[3,1],exception:4,signfic:5,difficult:4,failur:[8,5,4,3],veri:[8,2,4,6,9],affect:[5,3,6],implicitli:4,parameter:6,brows:5,relev:5,magic:[4,5,6],question:[2,4],level:[3,6,1],did:5,id_rsa:[0,9],list:[2,1,3,4,5,6,7,9,10],"try":[4,5],item:[8,1],sane:4,form:[5,6,1],shlex:5,team:4,dotnet:1,saltstack:2,refer:9,straight:9,librari:[5,1],pkg:[3,6,9],pleas:4,alic:6,trend:3,natur:[3,6],seper:4,direct:[4,6],batch:4,chef:[2,4],second:[6,9],design:[2,4,6],pass:[5,3,6,9],download:[0,2],further:[6,1],port:[4,9],folk:5,even:[4,6,9],what:[0,1,2,3,4,5,6],compar:4,favcolor:[5,6,9],trivial:[2,3],section:[2,3,6],async_statu:9,current:[4,5,9],delet:[3,9],abbrevi:1,version:[3,6,9],suspect:4,directori:[5,3,6,9],"new":4,net:[],ever:[2,5],method:8,told:6,xml:1,hasn:4,hash:[5,3,1],abov:[5,6,9],conf:[6,9],absolut:3,eckersberg:[4,1],gener:[4,5],never:[4,5],privat:6,here:[2,5,3,6,9],shouldn:[4,6],let:[5,6,1,9],pub:9,address:[7,4,3],path:[5,3,9],along:[5,6],standard:5,modifi:5,sinc:9,valu:[5,3,6,1,9],wait:6,box:[2,3],great:[2,4,5,6],tire:4,ahead:6,precursor:2,likin:4,reason:[4,5],later:[5,6,9],prior:3,pick:[4,9],action:[2,3,6],extrem:0,implement:[8,5],transact:6,commonli:[9,1],ourselv:6,employe:1,via:[0,2],regardless:[2,4,6,1],repositori:0,extra:4,solut:4,modul:[0,2,3,4,5,6,8,9],prefer:5,put:[0,3,6,9],unix:4,"boolean":1,instal:[0,2,3,4,5,6,9],total:6,cloud:4,highli:5,yourself:0,httpd:[6,9],from:[0,2,3,4,5,6,9],describ:[3,6],would:[5,3,6,9],commun:4,"super":2,doubl:9,visit:2,two:[0,6,7],noarch:0,few:6,live:0,handler:[2,6,9],call:[3,6,1],usr:[5,8,3,6,9],typo:5,recommend:5,msg:[5,8,3],suppos:[5,6],type:[8,4,5],tell:[3,6,9],more:[0,2,4,3,6,7],sort:4,flat:6,exit:[8,5],desir:[5,6],idempot:[5,4,3,6,9],comparison:[2,4],notif:4,stone:5,notic:4,flag:9,train:4,agent:[0,9],particular:[2,6],central:4,compani:4,easiest:[2,6],starter:[5,6],must:[5,3,6],manpag:0,none:8,join:2,ibm:2,module_arg:8,dest:[3,6,9],alia:7,setup:[2,3,9],work:[0,2,4,3,6,7,9],knows_oop:1,dev:4,remain:2,minimum:[5,6],whatev:5,erb:4,learn:[0,1,2,4,5,6,7],under:6,purpos:3,root:[2,6],proof:5,control:[2,5,3,6,9],want:[1,3,4,5,6,8,9],tar:0,give:1,process:[2,4,3,6,9],lock:6,chip:2,sudo:[0,6],share:[2,5,3,6],templat:[0,2,4,3,6,9],high:[5,9],critic:2,tag:[0,3],acm:9,explor:0,onlin:1,simul:6,occur:[],nearli:[3,6,1],alwai:[5,4,3,6],cours:4,multipl:[7,4,6,9],newlin:[],secur:[4,3],rather:[4,3],anoth:[4,1],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],how:[0,1,2,3,4,5,6,7,8,9],anyon:4,hop:4,subdirectori:3,instead:[4,3],somevalu:[5,6],config:[2,6],stock:3,map:6,financ:2,resourc:[2,4,6],referenc:[7,6],max:9,clone:[0,5],after:[4,6,9],"long":[2,4,3,6,9],lab:[2,4],befor:[4,3,6,9],ohai_:[3,6],tier:6,end:[4,3,6],args_data:5,data:[2,1,3,4,5,6,8],parallel:[2,4,6,9],man:[2,10],handl:[4,5],"short":[2,4],orchestr:[2,4,6],practic:[4,3,1],happi:2,lame:1,explicit:3,element:3,issu:[2,4],inform:[8,3],mango:1,combin:1,allow:[4,5,6,9],exclus:6,order:[4,6],talk:[0,6],origin:2,help:[2,5,1],xmpp:4,over:[2,4,9],move:[3,6],orang:1,becaus:[4,5,1],elit:1,rpmbuild:0,comma:[],hierarchi:4,effici:[4,6],suffer:4,mainli:4,paramet:[5,3,6],facter_:[3,6],jid:9,overlord:0,group:[2,3,6,7,8,9],cli:8,complex:[2,4,6],taboot:4,better:3,yaml:[2,4,6,1],pend:6,rapidli:8,infrastructur:[7,0,4,6,2],curli:9,mail:[2,4,5,9,7],job_statu:[],main:[5,6],might:[5,6],easier:[4,5,1],wouldn:4,them:[1,3,4,5,6,7,9],good:[4,5],"return":[8,2,5,4,3],thei:[3,4,5,6,7,8,9],food:1,auto:5,safe:6,dai:4,scene:3,"break":6,framework:[8,2,4],jinja2:[0,4,3,6,9],half:4,now:[0,3,4,5,6,7],discuss:4,nor:3,strive:5,choic:[2,6],multiprocess:[0,4],vidal:4,name:[2,1,3,5,6,7,9],anyth:[5,4,3],edit:0,simpl:[2,1,4,6,8,9],didn:4,unlik:[4,6],separ:6,achiev:5,mode:[4,3,6,9],timeout:6,each:[5,4,3,6,1],debug:1,found:[8,5],updat:[3,9],mean:[5,4,3,6,1],harm:[],mental:4,due:[4,5],michael:2,laserllama:2,hard:4,idea:[2,4,5,6],wordpress:6,realli:[5,4,3,6,1],ensur:[4,6,9],backport:0,expect:6,declar:6,our:1,happen:[4,3],patch:4,event:[5,4,3,6],out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,9],architectur:[2,4],safeti:7,network:2,space:3,bserver:0,reboot:[6,9],content:[0,2,3,4,5,6],adapt:[],rel:3,internet:2,print:[8,5],got:4,correct:[2,4,6,1],red:[2,4,5,9],smart:9,qualifi:3,painless:2,insid:6,advanc:[8,4,6],ntp:9,unpars:5,given:[4,3,9],argv:5,args_fil:5,facter:[2,4,3,6,9],small:[4,6,1],fixm:[],base:[2,4,6],believ:4,dictionari:[5,6,1],ask:[2,4],org:0,featur:[7,4,6],bash:[0,4,5,9],basi:6,reusabl:5,pyyaml:0,sytem:4,indent:1,recogn:6,launch:6,could:[8,4,5,6],traceback:5,synchron:6,fqdn:[],keep:[5,6],thing:[2,1,4,5,6,7],fruit:1,yum:[2,5,3,6,9],isn:[2,4,5],adrian:4,retain:4,think:[4,5],frequent:[2,4,6],first:[0,2,4,3,6,9],oper:[2,3,6,9],softwar:[2,4,3,9],rang:2,english:3,notifi:[2,4,5,6,9],render:3,feel:1,onc:[5,4,3,6],qualiti:5,number:3,placehold:6,restrict:5,mai:[0,1,3,4,5,6,8],instruct:[0,4],alreadi:[0,5,4,3,6],puppet:[2,4],fast:2,owner:[3,9],massiv:2,open:[4,6],datetim:5,differ:[9,0,4,6,2],unlink:3,convent:[2,5,3],script:[8,2,4,5,9],associ:1,top:[5,4,3,6],mkdir:9,system:[0,2,3,4,5,6,7,9],construct:[8,4],too:[2,1,4,5,6,9],statement:[2,6],termin:9,john:[4,1],"final":[],rpath:2,iptabl:[],shell:[2,5,3,9],option:[3,4,5,8,9,10],especi:4,welcom:2,tool:[2,4,3,6,8,9,10],copi:[2,3,9],took:4,specifi:[1,3,4,5,6,9],retyp:0,github:[0,5,6,2],pars:[4,5],checkout:[5,4,3],rst:[],off:[2,4,6],exactli:3,than:[0,1,2,3,4,5,6,9],wide:4,liter:3,silli:[],target:[2,7],keyword:[4,6],provid:1,remov:[3,6,9],dive:6,tree:5,richer:4,structur:[],banana:[],project:[0,4,6,2],reus:[2,6],architect:2,str:5,were:[4,6,9],minut:[4,9],uses_cv:1,typic:[4,9],recheck:5,provis:4,pre:0,sai:[4,3,6,9],bootstrap:[2,4],runner:8,favorit:2,mind:[4,5],argument:[5,3,6],hypothet:[],dash:1,packag:[2,5,4,3,9],aforement:7,complet:[4,6],have:[0,1,2,4,5,6,7],need:[0,1,3,4,5,6],seem:4,predic:3,seek:3,well:[0,4,3,6,9],paramiko:0,sat:4,imagin:6,date:5,squar:[],zero:5,self:5,client:2,note:[9,5,3,6,7],also:[0,1,2,3,4,5,6,7,8,9],ideal:[2,4],contact:[8,0,4,3],build:[8,0,4,5],indic:[3,6],environ:3,datacent:6,brace:9,hook:3,singl:[4,6],blue:6,begin:[9,1],sure:[6,9],unless:[3,6],distribut:[0,4,2],deploy:[2,4,6,9],track:9,choos:3,reach:2,deleg:4,discov:6,most:[4,3,1],plai:[3,6],regular:6,whether:[8,4,5],plan:4,deploi:[2,4,3,6,9],bsd:4,why:2,don:[3,4,5,6,7,9],doc:2,adopt:4,cover:[4,9],doe:[2,5,4,3,7],meanwhil:4,bracket:7,snapshot:3,place:2,clean:4,databas:6,usual:[],awesom:[2,6],show:[6,9],cheat:4,text:4,sent:5,aggregr:5,syntax:[2,4,6,1],bring:[4,6],directli:[5,3,6,9],raleigh:2,particularli:6,playbook:[0,1,2,3,4,5,6,7,8,9,10],permiss:9,hack:[2,5],radic:2,protocol:3,dereferenc:6,fine:[4,5],find:[5,4,3],varnam:6,impact:4,access:9,onli:[0,3,4,5,6,9],explicitli:[3,6],locat:3,just:[0,1,2,3,4,5,6,9],pretti:[8,4],explain:5,configur:[0,1,2,4,3,6,7,9],apach:[4,6,9],state:[5,4,3,6,9],somefil:6,should:[5,4,3,1],somevar:6,about:[0,1,2,3,4,5,6],local:3,yml:6,long_running_oper:9,contribut:[2,9],variou:[4,3,6],get:[0,1,2,4,5,6,9],express:[2,8,5,6,1],stop:[5,4,3,9],kind:[4,5],autom:[4,6],repo:[5,3,9],ssl:4,obviou:[2,5],ssh:[0,4,9,2],increas:6,grep:3,requir:[0,2,3,4,5,6],uvh:0,mdehaan:[6,9],bar:[7,6],"public":6,sha:3,bad:5,stuff:9,common:[2,5,6,1],contain:[5,4,3,6],usabl:[2,6],through:[0,3,2],where:[2,5,4,3],wrote:5,view:[2,10],respond:6,set:[0,5,4,3,6],dump:5,hierachi:4,quirk:1,arbitari:1,see:[0,1,2,3,4,5,6,7,9,10],sec:6,result:[5,8,3,6],arg:5,fail:[8,4,5,6],close:5,charact:1,setsebool:6,best:[5,4,3,6],subject:6,planet:2,statu:[5,6,9],still:4,extend:[2,4,6],expert:4,down:[8,6],pattern:[2,8,6,7],someth:[2,5,4,3,6],discoveri:3,restart:[4,3,6,9],figur:4,won:[6,9],between:[4,6],"import":[8,5,6],experi:4,across:4,attribut:3,altern:[6,9],solo:4,kei:[0,5,3,6,1],style:5,extens:[2,4],job:[9,1],entir:[4,5,6],aserv:0,recent:4,pull:4,webapp:[4,9],come:5,timmi:6,addit:[2,5,3,6],verbos:[5,3],both:[4,5],delimit:3,goal:2,howev:[4,5],equal:[4,5],against:[2,4,6,7],etc:[0,2,4,3,6,7,9],instanc:6,logic:6,mani:[5,6,9],com:[0,8,5,6,7],comment:5,among:4,assur:6,simpli:[3,6],author:2,can:[0,1,2,3,4,5,6,7,8,9],overview:1,inspir:[2,4],chmod:[5,3,6],distil:4,fashion:4,colon:6,shutdown:3,linux:[2,4],written:[2,5,3,6,9],poll:[2,6,9],mission:2,quit:5,coupl:4,platform:4,multiplay:2,decent:5,ansible_library_path:5,three:7,been:[2,4],json:[2,1,3,4,5,8],much:[2,4,3,6,1],besid:5,treat:[4,5],basic:[0,1,2,3,4,5,6,7],txt:[3,9],immedi:3,quickli:[2,9],capistrano:[2,4],fire:[2,4,6],rubi:[5,4,3,9,1],convert:5,ani:[2,3,4,5,6,8,9],likes_emac:1,understand:5,togeth:6,func:[2,4],turn:5,atlanta:[6,9],educ:5,those:[4,3,6,9],emploi:1,authorized_kei:0,multi:[2,4,6],look:[7,5,6,9],replac:[],hoc:[2,4,3,6,9],servic:[2,5,3,6,9],md5sum:3,straighten:4,vars_fil:6,trick:[2,6],defin:6,"while":[4,6],match:[5,6],facter_hostnam:[6,9],error:[4,5],cfengin:4,dehaan:2,layer:4,motd:[6,9],max_client:6,stdout:8,almost:[4,3],technolog:2,readm:5,site:[4,10],memcach:6,dag:4,ohai_foo:9,myapp:9,module_nam:8,somekei:5,ship:3,sever:[4,6,1],around:4,http_port:6,develop:[0,1,2,4,5,6],inventori:[2,3,6,7],minim:[0,5],perform:4,make:[0,3,4,5,6,9],ohai:[2,4,3,6,9],cross:4,same:[7,6,1,9],check:[4,3,6,9],member:1,python:[0,1,2,3,4,5,8,9],add:[0,4,9],tutori:[2,5],split:5,success:[5,3],document:[0,1,4,5,6,8,9],ansibl:[0,1,2,3,4,5,6,7,8,9,10],higher:6,http:3,hostnam:[8,6],denot:7,nest:[5,3],permit:[],rail:4,effect:[],remot:[0,3,6,9],assign:[2,6],rais:5,user:[2,4,3,6],ownership:9,extern:[2,6],engin:[],php:9,distutil:[0,2],aka:6,tune:[],built:[0,4,9],yeah:[],judgement:3,lower:[4,5],appropri:[4,9],kept:[4,6],scenario:3,mention:6,setenforc:6,compos:6,seth:4,spent:4,non:[2,5,6],exampl:[0,1,2,3,4,5,6,7,8,9,10],command:[0,2,3,4,5,6,7,8,9,10],thi:[0,1,3,4,5,6,7,9],filesystem:3,programm:[8,4],model:6,guidelin:5,spend:4,latest:[3,6,9],explan:5,next:6,identifi:4,execut:[2,3,4,5,6,8],less:[0,4,2],excel:[2,4],rest:10,detail:[2,8,9],select:[2,3,6,7],kill:[],irc:2,human:1,heavili:4,shorthand:[2,5],skill:1,simultan:9,yet:3,languag:[0,1,2,3,4,5,6,7],web:[8,4,6,10,9],versu:2,easi:[2,4,3,7],mix:[7,6],trigger:[4,3,6],except:5,littl:[2,4],async_wrapp:5,valid:5,notori:4,els:[2,6],save:[5,6],hat:[2,4],app:4,kick:[4,6,9],take:[5,4,3,6],bin:[0,3,5,6,8,9],applic:[8,4,6],march:5,which:[0,1,2,6,7,9],format:[2,1,4,3,6,7,9],read:[0,8,5,1,2],dark:8,game:2,know:[5,4,3,1],background:[2,9],step:[4,3,6],world:[0,4],bit:[4,3],password:[0,6],recurs:[3,9],daemon:[2,4],motorola:2,like:[1,3,4,5,6,7,9],specif:[7,8,9],header:7,signal:[4,6],arbitrari:4,manual:[4,6],integ:3,divers:2,remind:5,api:[8,2,5,4,3],necessari:[3,9],either:[4,3],lose:9,popular:2,async:[4,6],external_var:6,unnecessari:3,node:[0,2,3,4,5,6,9],shed:4,drop:[5,3],often:4,deal:5,webserv:[7,6,9],suppli:3,some:[0,2,3,4,5,6],back:[4,6],dead:2,born:4,intern:5,fabric:[2,4],heritag:4,server:[2,4,3,6,9],transport:[2,4],absent:[3,9],tmp:9,guid:[2,5,6],forcibl:[],lead:4,bottom:6,rpm:[0,5,2],avoid:[0,4,3],though:[2,5,4,3,6],definit:6,thank:4,legal:5,tracker:2,leav:[5,6],unit:5,foo:[7,6,9],complic:[2,4],manag:[0,1,2,3,4,5,6,7,9],machin:[0,3,4,5,6,9],core:[2,4,5],encourag:4,yamllint:1,run:[0,1,3,4,5,6,8,9],itself:8,power:[8,2,4,6],importerror:5,usag:[5,3,9],symlink:3,devop:2,web2:8,vhost:6,host:[0,2,3,4,5,6,7,8,9],web1:8,promot:4,although:5,output:[4,5,6],meantim:4,appli:4,task:[2,4,6,9],simpler:[4,9],src:[3,6,9],sshd:2,actual:[5,4,3,6],othervar:[],surround:9,page:[10,0,4,1,2],freenod:2,srv:[6,9],messag:[8,4,5],done:[4,6],industri:2,disabl:6,block:6,ntp_server:9,own:[2,4,3,6],real:0,bounc:[3,6],within:[4,3],contriv:[],sneaker:[],automat:[5,3],upgrad:[3,9],noth:[6,1],pair:[5,3,1],multinod:4,contrib:5,chang:[5,3,6,9],pitfal:[2,5],perl:9,soon:[],your:[0,2,3,4,5,6,7,9],risk:6,merg:4,stare:5,behind:[4,3],git:[0,2,3,4,5,9],prepar:5,wai:[0,4,5,6,9],aren:4,transfer:[2,5,9],support:[2,4,3,6],rotat:6,submit:4,custom:[4,6],avail:[0,1,3,4,5,6,8,9,10],start:[0,1,2,4,3,6,9],appl:1,interfac:4,includ:[2,5,3,6],lot:[2,5,9],suit:[4,6],"var":[2,6],datastructur:8,individu:7,far:[2,1],fork:[8,4,6,9],head:[3,9],scale:[2,4],simplejson:[0,5],enough:[7,4,9],lint:1,continu:5,taken:[4,6],shorter:5,link:5,sphinx:0,line:[0,1,2,3,4,5,6,7,8,9,10],"true":[5,3,1],congratul:0,info:9,strawberri:1,"throw":4,made:[5,4,3],input:[2,5],possibl:[7,5,6,9],inquir:5,wish:[0,1,4,6,7,8],caller:3,maximum:6,until:[0,5,6],asynchron:[2,6],record:1,below:[3,6],stacktrac:5,limit:[2,6,9],rerun:6,otherwis:3,problem:[4,1],similar:[2,3,6,9],email:2,connect:6,curv:[2,4],gather:4,tasti:1,creat:[2,4,3,9],certain:[4,6],nobodi:5,parser:5,doesn:[2,6,1],repres:[6,1],strongli:4,cobbler:[2,4],file:[0,1,2,3,5,6,7,9],home:3,bob:6,exist:[2,3,6],simplest:5,probabl:[4,5,6],echo:[0,6],again:[4,5,6],coder:4,googl:2,dbserver:[7,6],when:[5,4,3,6,9],chown:3,chgrp:3,"default":[2,4,3,6,7],other:[0,1,2,3,4,5,6,9],futur:[0,5],varieti:[4,5],test:[0,5,4,3,2],assum:6,you:[0,1,2,3,4,5,6,7,9],runtim:6,poor:5,contend:4,sysadmin:4,intend:5,wildcard:7,fulli:3,sequenc:2,"class":[2,6],asciidoc:0,releas:[0,4],intent:[],log:[5,6],consid:5,sbin:[3,6,9],deferenc:[],gap:4,"60k":[2,4],stai:6,clojur:5,faster:6,amp:0,anywher:6,accept:5,reliabl:4,portion:7,emerg:2,ignor:5,potenti:[],time:[0,1,2,3,4,5,6,7,9],push:[4,6],hello:0},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","Introducing Ansible","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","Using the Python API","Command Line Examples","Man Pages"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples","man"]}) \ No newline at end of file From 39d02eeff4d077aeb24d4e7f83351d4613f2ad19 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 30 Mar 2012 22:28:30 -0400 Subject: [PATCH 069/416] Add external inventory script info (and Cobbler example) to API page. --- YAMLSyntax.html | 4 +- api.html | 93 +++++++++++++++++++++++++++++--- examples.html | 4 +- faq.html | 4 +- genindex.html | 4 +- gettingstarted.html | 4 +- index.html | 12 +++-- man.html | 4 +- man/ansible-playbook.1.html | 2 +- man/ansible.1.html | 2 +- moduledev.html | 8 +-- modules.html | 6 +-- patterns.html | 4 +- playbooks.html | 8 +-- rst/api.rst | 104 +++++++++++++++++++++++++++++++++++- search.html | 4 +- searchindex.js | 2 +- 17 files changed, 226 insertions(+), 43 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 48cbc75c0cd..45dc8263621 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -117,7 +117,7 @@ s.parentNode.insertBefore(ga, s);
  • Ansible Modules
  • YAML Syntax
  • Playbooks
  • -
  • Using the Python API
  • +
  • API & Integrations
  • Module Development Guide
  • Frequently Asked Questions
  • Man Pages
  • @@ -261,7 +261,7 @@ languages:

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 15, 2012.
    + Last updated on Mar 30, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/api.html b/api.html index 29313729182..19eae3459be 100644 --- a/api.html +++ b/api.html @@ -6,7 +6,7 @@ - Using the Python API — Ansible - SSH-Based Configuration Management & Deployment + API & Integrations — Ansible - SSH-Based Configuration Management & Deployment @@ -117,7 +117,7 @@ s.parentNode.insertBefore(ga, s);
  • Ansible Modules
  • YAML Syntax
  • Playbooks
  • -
  • Using the Python API
  • +
  • API & Integrations
  • Module Development Guide
  • Frequently Asked Questions
  • Man Pages
  • @@ -128,10 +128,14 @@ s.parentNode.insertBefore(ga, s); Page
      -
    • Using the Python API
    • @@ -169,8 +173,16 @@ alt="Fork me on GitHub" alt="Fork me on GitHub">
      -
      -

      Using the Python API

      +
      +

      API & Integrations

      +

      There are two major ways to use Ansible from an API perspective. The primary way +is to use the Ansible python API to control nodes. Ansible is written in it’s own +API so you have a considerable amount of power there.

      +

      Also covered here, Ansible’s +list of hosts, groups, and variables assigned to each host can be driven from +external sources. We’ll start with the Python API.

      +
      +

      Python API

      The Python API is very powerful, and is how the ansible CLI and ansible-playbook are implemented.

      It’s pretty simple:

      @@ -200,7 +212,7 @@ expressed in the ‘ansible-modules’ documentation.:

      A module can return any type of JSON data it wants, so Ansible can be used as a framework to rapidly build powerful applications and scripts.

      -

      Detailed API Example

      +

      Detailed API Example

      The following script prints out the uptime information for all hosts:

      #!/usr/bin/python
       
      @@ -237,6 +249,73 @@ it uses the Runner() API (with all available options) to implement the
       command line tools ansible and ansible-playbook.

      +
      +

      External Inventory

      +

      Often a user of a configuration management system will want to keep inventory +in a different system. Frequent examples include LDAP, Cobbler, +or a piece of expensive enterprisey CMDB software. Ansible easily supports all +of these options via an external interventory system.

      +

      If you have a data store system where an Ansible external inventory script doesn’t already exist, this may require a little coding,J +but we have a Cobbler example in the main source tree – but it’s pretty simple, as we’ll explain below – that would provide a good starting point. Like with modules, it’s possible to build an external inventory script in any language, as long as it returns JSON.

      +

      If you are familiar with Puppet terminology, this concept is basically the same as ‘external nodes’, with the slight difference that it also defines which hosts are managed.

      +

      When the external node script is called with no arguments, the script must return a JSON hash/dictionary of all the groups to be managed, with a list of each host/IP as the value for each hash/dictionary element, like so:

      +
      {
      +    'databases'  : [ 'host1.example.com', 'host2.example.com' ],
      +    'webservers' : [ 'host2.example.com', 'host3.example.com' ],
      +    'atlanta'    : [ 'host1.example.com', 'host4.example.com', 'host5.example.com' ]
      +}
      +
      +
      +

      When called with a single argument, the name of a host from above, the script must return either an empty JSON +hash/dictionary, or a list of key/value variables to make available to templates. Returning variables is optional, +if the script does not wish to do this, returning an empty hash/dictionary is the way to go:

      +
      {
      +    'favcolor'   : 'red',
      +    'ntpserver'  : 'wolf.example.com',
      +    'monitoring' : 'pack.example.com'
      +}
      +
      +
      +

      It is expected that many Ansible users will also be Cobbler users. Cobbler has a generic +layer that allows it to represent data for multiple configuration management systems (even at the same time), and has +been referred to as a ‘lightweight CMDB’ by some admins. This particular script will communicate with Cobbler +using Cobbler’s XMLRPC API.

      +

      To tie Ansible’s inventory to Cobbler (optional), copy this script <https://github.com/ansible/ansible/blob/master/examples/scripts/cobbler_external_inventory.py> to /etc/ansible/hosts and chmod +x the file. cobblerd will now need +to be running when you are using Ansible.

      +

      Test the file by running ./etc/ansible/hosts directly. You should see some JSON data output, but it may not have +anything in it just yet.

      +

      Let’s explore what this does. In cobbler, assume a scenario somewhat like the following:

      +
      cobbler profile add --name=webserver --distro=CentOS6-x86_64
      +cobbler profile edit --name=webserver --mgmt-classes="webserver" --ksmeta="a=2 b=3"
      +cobbler system edit --name=foo --dns-name="foo.example.com" --mgmt-classes="atlanta" --ksmeta="c=4"
      +cobbler system edit --name=bar --dns-name="bar.example.com" --mgmt-classes="atlanta" --ksmeta="c=5"
      +
      +

      In the example above, the system ‘foo.example.com’ will be addressable by ansible directly, but will also be addressable when using the group names ‘webserver’ or ‘atlanta’. Since Ansible uses SSH, we’ll try to contract system foo over ‘foo.example.com’, only, never just ‘foo’. Similarly, if you try “ansible foo” it wouldn’t find the system... but “ansible ‘foo*’” would, because the system DNS name starts with ‘foo’.

      +

      The script doesn’t just provide host and group info. In addition, as a bonus, when the ‘setup’ module is run (which happens automatically when using playbooks), the variables ‘a’, ‘b’, and ‘c’ will all be auto-populated in the templates:

      +
      # file: /srv/motd.j2
      +Welcome, I am templated with a value of a={{ a }}, b={{ b }}, and c={{ c }}
      +
      +

      Which could be executed just like this:

      +
      ansible webserver -m setup
      +ansible webserver -m template -a "src=/tmp/motd.j2 dest=/etc/motd"
      +
      +

      Note that the name ‘webserver’ came from cobbler, as did the variables for the config file. You can still +pass in your own variables like normal in Ansible, but variables from the external inventory script will +override any that have the same name.

      +

      So, with the template above (motd.j2), this would result in the following data being written to /etc/motd for system ‘foo’:

      +
      Welcome, I am templated with a value of a=2, b=3, and c=4
      +
      +

      And on system ‘bar’ (bar.example.com):

      +
      Welcome, I am templated with a value of a=2, b=3, and c=5
      +
      +

      And technically, though there is no major good reason to do it, this also works too:

      +
      ansible webserver -m shell -a "echo {{ a }}"
      +
      +

      So in other words, you can use those variables in arguments/actions as well. You might use this to name +a conf.d file appropriately or something similar. Who knows.

      +

      So that’s the Cobbler integration support – using the cobbler script as an example, it should be trivial to adapt Ansible to pull inventory, as well as variable information, from any data source. If you create anything interesting, please share with the mailing list, and we can keep it in the source code tree for others to use.

      +
      +
      @@ -245,7 +324,7 @@ command line tools ansible

      Back to top

      © Copyright 2012 Michael DeHaan.
      - Last updated on Mar 15, 2012.
      + Last updated on Mar 30, 2012.
      Created using Sphinx 1.0.8.

      diff --git a/examples.html b/examples.html index 030ab837fc0..d47f9ed2fe1 100644 --- a/examples.html +++ b/examples.html @@ -117,7 +117,7 @@ s.parentNode.insertBefore(ga, s);
    • Ansible Modules
    • YAML Syntax
    • Playbooks
    • -
    • Using the Python API
    • +
    • API & Integrations
    • Module Development Guide
    • Frequently Asked Questions
    • Man Pages
    • @@ -314,7 +314,7 @@ shell commands or software upgrades only.

      Back to top

      © Copyright 2012 Michael DeHaan.
      - Last updated on Mar 15, 2012.
      + Last updated on Mar 30, 2012.
      Created using Sphinx 1.0.8.

      diff --git a/faq.html b/faq.html index f3ea701a99f..b7957b039e8 100644 --- a/faq.html +++ b/faq.html @@ -117,7 +117,7 @@ s.parentNode.insertBefore(ga, s);
    • Ansible Modules
    • YAML Syntax
    • Playbooks
    • -
    • Using the Python API
    • +
    • API & Integrations
    • Module Development Guide
    • Frequently Asked Questions
    • Man Pages
    • @@ -347,7 +347,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

      Back to top

      © Copyright 2012 Michael DeHaan.
      - Last updated on Mar 15, 2012.
      + Last updated on Mar 30, 2012.
      Created using Sphinx 1.0.8.

      diff --git a/genindex.html b/genindex.html index 0a536deb20f..956662e8f9d 100644 --- a/genindex.html +++ b/genindex.html @@ -115,7 +115,7 @@ s.parentNode.insertBefore(ga, s);
    • Ansible Modules
    • YAML Syntax
    • Playbooks
    • -
    • Using the Python API
    • +
    • API & Integrations
    • Module Development Guide
    • Frequently Asked Questions
    • Man Pages
    • @@ -174,7 +174,7 @@ alt="Fork me on GitHub"

      Back to top

      © Copyright 2012 Michael DeHaan.
      - Last updated on Mar 15, 2012.
      + Last updated on Mar 30, 2012.
      Created using Sphinx 1.0.8.

    diff --git a/gettingstarted.html b/gettingstarted.html index 9d9c07ce50f..927b90f396a 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -117,7 +117,7 @@ s.parentNode.insertBefore(ga, s);
  • Ansible Modules
  • YAML Syntax
  • Playbooks
  • -
  • Using the Python API
  • +
  • API & Integrations
  • Module Development Guide
  • Frequently Asked Questions
  • Man Pages
  • @@ -289,7 +289,7 @@ you already have a working infrastructure!

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 15, 2012.
    + Last updated on Mar 30, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/index.html b/index.html index 256829b4288..aec53502e94 100644 --- a/index.html +++ b/index.html @@ -116,7 +116,7 @@ s.parentNode.insertBefore(ga, s);
  • Ansible Modules
  • YAML Syntax
  • Playbooks
  • -
  • Using the Python API
  • +
  • API & Integrations
  • Module Development Guide
  • Frequently Asked Questions
  • Man Pages
  • @@ -298,8 +298,12 @@ you with questions about Ansible.

  • Executing A Playbook
  • -
  • Using the Python API
  • diff --git a/man.html b/man.html index ff825e52ad1..132a8b351b4 100644 --- a/man.html +++ b/man.html @@ -116,7 +116,7 @@ s.parentNode.insertBefore(ga, s);
  • Ansible Modules
  • YAML Syntax
  • Playbooks
  • -
  • Using the Python API
  • +
  • API & Integrations
  • Module Development Guide
  • Frequently Asked Questions
  • Man Pages
  • @@ -192,7 +192,7 @@ examples of these tools in use.

    Back to top

    © Copyright 2012 Michael DeHaan.
    - Last updated on Mar 15, 2012.
    + Last updated on Mar 30, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/man/ansible-playbook.1.html b/man/ansible-playbook.1.html index c98d7a79524..55fdf0c66d7 100644 --- a/man/ansible-playbook.1.html +++ b/man/ansible-playbook.1.html @@ -1,6 +1,6 @@ -ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool +ansible-playbook

    Name

    ansible-playbook — run an ansible playbook

    Synopsis

    ansible-playbook <filename.yml> … [options]

    DESCRIPTION

    Ansible playbooks are a configuration and multinode deployment system. Ansible-playbook is the tool used to run them. See the project home page (link below) for more information.

    ARGUMENTS

    filename.yml
    diff --git a/man/ansible.1.html b/man/ansible.1.html index a03554ea586..168f8914f86 100644 --- a/man/ansible.1.html +++ b/man/ansible.1.html @@ -1,6 +1,6 @@ -ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over +ansible

    Name

    ansible — run a command somewhere else

    Synopsis

    ansible <host-pattern> [-f forks] [-m module_name] [-a args]

    DESCRIPTION

    Ansible is an extra-simple tool/framework/API for doing 'remote things' over SSH.

    ARGUMENTS

    host-pattern
    diff --git a/moduledev.html b/moduledev.html index 63919fd7964..b956f99202d 100644 --- a/moduledev.html +++ b/moduledev.html @@ -27,7 +27,7 @@ - + - + + diff --git a/favicon.ico b/_static/favicon.ico similarity index 100% rename from favicon.ico rename to _static/favicon.ico diff --git a/api.html b/api.html index 94f1e5ef266..a317be1fde1 100644 --- a/api.html +++ b/api.html @@ -25,6 +25,7 @@ + diff --git a/conf.py b/conf.py index c8f3b0780ce..75a6b2b51c7 100644 --- a/conf.py +++ b/conf.py @@ -123,7 +123,7 @@ html_title = 'Ansible - SSH-Based Configuration Management & Deployment' # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. -#html_favicon = None +html_favicon = 'favicon.ico' # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, diff --git a/examples.html b/examples.html index c6640b5c336..6b73ee64aa3 100644 --- a/examples.html +++ b/examples.html @@ -25,6 +25,7 @@ + diff --git a/faq.html b/faq.html index 807850f2bb3..de84016c0fd 100644 --- a/faq.html +++ b/faq.html @@ -25,6 +25,7 @@ + diff --git a/genindex.html b/genindex.html index 63144a81ea2..6887ce4049a 100644 --- a/genindex.html +++ b/genindex.html @@ -25,6 +25,7 @@ + + diff --git a/index.html b/index.html index 6d2128b2c60..0e0a72b58de 100644 --- a/index.html +++ b/index.html @@ -25,6 +25,7 @@ + + + diff --git a/modules.html b/modules.html index c3b4102569d..2c955952d3a 100644 --- a/modules.html +++ b/modules.html @@ -25,6 +25,7 @@ + diff --git a/patterns.html b/patterns.html index 7bfea698b2e..573f20f3aab 100644 --- a/patterns.html +++ b/patterns.html @@ -25,6 +25,7 @@ + diff --git a/playbooks.html b/playbooks.html index 2b3a79dc68f..a5c6a4371be 100644 --- a/playbooks.html +++ b/playbooks.html @@ -25,6 +25,7 @@ + diff --git a/search.html b/search.html index 7f2edefed47..c390316a8c7 100644 --- a/search.html +++ b/search.html @@ -26,6 +26,7 @@ + - - +
    + @@ -155,6 +163,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    YAML Syntax

    @@ -241,13 +250,30 @@ languages:
    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index 57f5eb18a0f..540f0611ed0 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -96,6 +96,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + {% endblock %} {% block header %}{{ navBar() }}{% endblock %} @@ -110,15 +118,33 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +
    {% block body %} {% endblock %} +
    +
    {%- endblock %} {%- block footer %}
    +

    Back to top

    + + + + + + + +

    {%- if show_copyright %} {%- if hasdoc('copyright') %} {% trans path=pathto('copyright'), copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
    diff --git a/api.html b/api.html index dbd3fe936bc..b0414483a21 100644 --- a/api.html +++ b/api.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -163,6 +171,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    API & Integrations

    @@ -325,13 +334,30 @@ a conf.d file appropriately or something similar. Who knows.

    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/examples.html b/examples.html index a1aec6c1ac8..80acb6a07b0 100644 --- a/examples.html +++ b/examples.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -161,6 +169,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Command Line Examples

    @@ -340,13 +349,30 @@ a simplified syntax for this.

    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/faq.html b/faq.html index ae3e1381447..3223146a646 100644 --- a/faq.html +++ b/faq.html @@ -98,6 +98,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -168,6 +176,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Frequently Asked Questions

    @@ -347,13 +356,30 @@ tasks – whether for a QA sytem, build system, or anything you can think of
    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/genindex.html b/genindex.html index c600a6b179b..c294a1c398f 100644 --- a/genindex.html +++ b/genindex.html @@ -97,6 +97,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -147,6 +155,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Index

    @@ -156,13 +165,30 @@ s.parentNode.insertBefore(ga, s);
    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/gettingstarted.html b/gettingstarted.html index bc78fa94b00..8a84dd6c8ca 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -165,6 +173,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Downloads & Getting Started

    @@ -309,13 +318,30 @@ explore, but you already have a fully working infrastructure!

    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/index.html b/index.html index e90dcd8e5ce..607e8e930c9 100644 --- a/index.html +++ b/index.html @@ -98,6 +98,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -162,6 +170,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    The Future Is Now

    @@ -395,13 +404,30 @@ Puppet Labs, and rPath. Reach Michael by email +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/moduledev.html b/moduledev.html index 3e63ef3523c..650ead34636 100644 --- a/moduledev.html +++ b/moduledev.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -162,6 +170,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Module Development Guide

    @@ -396,13 +405,30 @@ Stop by the mailing list to inquire about requirements.

    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/modules.html b/modules.html index 2427c92a3a6..ee8c974d5c0 100644 --- a/modules.html +++ b/modules.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -172,6 +180,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Ansible Modules

    @@ -718,13 +727,30 @@ yum pkg=httpd state=installed
    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/patterns.html b/patterns.html index df3bfa303d1..b8a915542a3 100644 --- a/patterns.html +++ b/patterns.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -157,6 +165,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    The Inventory File, Patterns, and Groups

    @@ -289,13 +298,30 @@ groups. This behavior may be refined in future releases.

    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/playbooks.html b/playbooks.html index 77696002f44..b8ed159bb17 100644 --- a/playbooks.html +++ b/playbooks.html @@ -99,6 +99,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -175,6 +183,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Playbooks

    @@ -678,13 +687,30 @@ Let’s run a playbook using a parallelism level of 10:

    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    diff --git a/search.html b/search.html index 4dbaf508569..f3d386f4564 100644 --- a/search.html +++ b/search.html @@ -102,6 +102,14 @@ s.parentNode.insertBefore(ga, s); })(); +
    + @@ -148,6 +156,7 @@ s.parentNode.insertBefore(ga, s);
    Ansible
    +

    Search

    @@ -173,13 +182,30 @@ s.parentNode.insertBefore(ga, s);
    +
    +
    +

    Back to top

    + + + + + + + +

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 27, 2012.
    + Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.

    From ee20586d28943679edb558e7b1a25be782eab7ce Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sat, 28 Apr 2012 10:46:09 -0400 Subject: [PATCH 187/416] Attempt to cleanup rendering of social buttons --- YAMLSyntax.html | 24 +++++++++++++----------- _themes/bootstrap/layout.html | 25 ++++++++++++++----------- api.html | 24 +++++++++++++----------- examples.html | 24 +++++++++++++----------- faq.html | 24 +++++++++++++----------- genindex.html | 24 +++++++++++++----------- gettingstarted.html | 24 +++++++++++++----------- index.html | 24 +++++++++++++----------- moduledev.html | 24 +++++++++++++----------- modules.html | 24 +++++++++++++----------- patterns.html | 24 +++++++++++++----------- playbooks.html | 24 +++++++++++++----------- search.html | 24 +++++++++++++----------- searchindex.js | 2 +- 14 files changed, 171 insertions(+), 144 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 08d1ecfd581..50ed0835e13 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index 540f0611ed0..98cc2286f53 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -80,6 +80,7 @@ }); }()); + -
    + + + - - - - +
    +
    + {%- if show_copyright %} {%- if hasdoc('copyright') %} {% trans path=pathto('copyright'), copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
    diff --git a/api.html b/api.html index b0414483a21..4a34cab713c 100644 --- a/api.html +++ b/api.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/examples.html b/examples.html index 80acb6a07b0..32f7a89a1fe 100644 --- a/examples.html +++ b/examples.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/faq.html b/faq.html index 3223146a646..f3b37b2c74c 100644 --- a/faq.html +++ b/faq.html @@ -82,6 +82,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/genindex.html b/genindex.html index c294a1c398f..72851dd8d2f 100644 --- a/genindex.html +++ b/genindex.html @@ -81,6 +81,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/gettingstarted.html b/gettingstarted.html index 8a84dd6c8ca..62ab071cf37 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/index.html b/index.html index 607e8e930c9..ee675fcdc27 100644 --- a/index.html +++ b/index.html @@ -82,6 +82,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/moduledev.html b/moduledev.html index 650ead34636..6e9dd73774d 100644 --- a/moduledev.html +++ b/moduledev.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/modules.html b/modules.html index ee8c974d5c0..3064dd23683 100644 --- a/modules.html +++ b/modules.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/patterns.html b/patterns.html index b8a915542a3..e3174851d6e 100644 --- a/patterns.html +++ b/patterns.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/playbooks.html b/playbooks.html index b8ed159bb17..e13c2b998e1 100644 --- a/playbooks.html +++ b/playbooks.html @@ -83,6 +83,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/search.html b/search.html index f3d386f4564..caf53cdf901 100644 --- a/search.html +++ b/search.html @@ -86,6 +86,7 @@ }); }()); + -
    + + + - - - - +
    +
    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    Created using Sphinx 1.0.8.
    diff --git a/searchindex.js b/searchindex.js index fc11f44a931..51e20bc5d13 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,behavior:[7,3],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],src:[2,8,3,6,9],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,5,3,6,9],meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,comparison:[2,4],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],won:[6,9],experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,stuck:6,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,"long":[2,4,3,6,8,9],ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,richer:4,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,restructur:6,suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,didn:[4,9],linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[4,5,6,7,8,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[2,3,4,5,6,8],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],tho:3,client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,5,3,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,5,8,3,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:1,explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],choos:[3,6],undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,implement:[8,4,5],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 589ae67d9579124dc43410a13b5098596ee7b72d Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sat, 28 Apr 2012 10:50:20 -0400 Subject: [PATCH 188/416] work on footer --- YAMLSyntax.html | 16 +++++++--------- _themes/bootstrap/layout.html | 17 ++++++----------- api.html | 16 +++++++--------- examples.html | 16 +++++++--------- faq.html | 16 +++++++--------- genindex.html | 16 +++++++--------- gettingstarted.html | 16 +++++++--------- index.html | 16 +++++++--------- moduledev.html | 16 +++++++--------- modules.html | 16 +++++++--------- patterns.html | 16 +++++++--------- playbooks.html | 16 +++++++--------- search.html | 16 +++++++--------- searchindex.js | 2 +- 14 files changed, 91 insertions(+), 120 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 50ed0835e13..4942a391001 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -262,21 +262,19 @@ languages:
    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index 98cc2286f53..47181010754 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -135,19 +135,17 @@ s.parentNode.insertBefore(ga, s); {%- endblock %} {%- block footer %} -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    +
    +
    +

    {%- if show_copyright %} {%- if hasdoc('copyright') %} {% trans path=pathto('copyright'), copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
    @@ -158,9 +156,6 @@ s.parentNode.insertBefore(ga, s); {%- if last_updated %} {% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
    {%- endif %} - {%- if show_sphinx %} - {% trans sphinx_version=sphinx_version|e %}Created using Sphinx {{ sphinx_version }}.{% endtrans %}
    - {%- endif %}

    diff --git a/api.html b/api.html index 4a34cab713c..9ca1ce4a2df 100644 --- a/api.html +++ b/api.html @@ -346,21 +346,19 @@ a conf.d file appropriately or something similar. Who knows.


    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/examples.html b/examples.html index 32f7a89a1fe..345f3eaaebd 100644 --- a/examples.html +++ b/examples.html @@ -361,21 +361,19 @@ a simplified syntax for this.


    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/faq.html b/faq.html index f3b37b2c74c..4a6e180ce04 100644 --- a/faq.html +++ b/faq.html @@ -368,21 +368,19 @@ tasks – whether for a QA sytem, build system, or anything you can think of
    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/genindex.html b/genindex.html index 72851dd8d2f..87acddaeb68 100644 --- a/genindex.html +++ b/genindex.html @@ -177,21 +177,19 @@ s.parentNode.insertBefore(ga, s);
    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/gettingstarted.html b/gettingstarted.html index 62ab071cf37..cc69f686229 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -330,21 +330,19 @@ explore, but you already have a fully working infrastructure!


    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/index.html b/index.html index ee675fcdc27..91b0fa7d4f8 100644 --- a/index.html +++ b/index.html @@ -416,21 +416,19 @@ Puppet Labs, and rPath. Reach Michael by email
    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/moduledev.html b/moduledev.html index 6e9dd73774d..7c7d13d96a1 100644 --- a/moduledev.html +++ b/moduledev.html @@ -417,21 +417,19 @@ Stop by the mailing list to inquire about requirements.


    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/modules.html b/modules.html index 3064dd23683..2d2a3b60def 100644 --- a/modules.html +++ b/modules.html @@ -739,21 +739,19 @@ yum pkg=httpd state=installed
    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/patterns.html b/patterns.html index e3174851d6e..e8715dc6158 100644 --- a/patterns.html +++ b/patterns.html @@ -310,21 +310,19 @@ groups. This behavior may be refined in future releases.


    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/playbooks.html b/playbooks.html index e13c2b998e1..9adbec659db 100644 --- a/playbooks.html +++ b/playbooks.html @@ -699,21 +699,19 @@ Let’s run a playbook using a parallelism level of 10:


    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/search.html b/search.html index caf53cdf901..a8de0f80d48 100644 --- a/search.html +++ b/search.html @@ -194,21 +194,19 @@ s.parentNode.insertBefore(ga, s);
    -
    - -
    -

    Back to top

    -

    -

    +

    -

    -
    +

    +
    + +
    +
    +

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    - Created using Sphinx 1.0.8.

    diff --git a/searchindex.js b/searchindex.js index 51e20bc5d13..70daedeabcf 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[4,5,6,7,8,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[2,3,4,5,6,8],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],tho:3,client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,5,3,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,5,8,3,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:1,explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],choos:[3,6],undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,implement:[8,4,5],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,5,3,6,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],won:[6,9],experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,richer:4,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,restructur:6,suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 07d7b7c802c4a5b63148f9a699541c03783bf23f Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sat, 28 Apr 2012 10:50:55 -0400 Subject: [PATCH 189/416] Remove double tweet links --- _themes/bootstrap/layout.html | 1 - 1 file changed, 1 deletion(-) diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index 47181010754..a0481b9631e 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -130,7 +130,6 @@ s.parentNode.insertBefore(ga, s);
    {% block body %} {% endblock %}
    -
    {%- endblock %} From b388ac721e795ebfed3744558d26bb364a19f2e9 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sat, 28 Apr 2012 10:53:15 -0400 Subject: [PATCH 190/416] move stuff back into footer --- YAMLSyntax.html | 9 ++++----- _themes/bootstrap/layout.html | 8 ++++---- api.html | 9 ++++----- examples.html | 9 ++++----- faq.html | 9 ++++----- genindex.html | 9 ++++----- gettingstarted.html | 9 ++++----- index.html | 9 ++++----- moduledev.html | 9 ++++----- modules.html | 9 ++++----- patterns.html | 9 ++++----- playbooks.html | 9 ++++----- search.html | 9 ++++----- searchindex.js | 2 +- 14 files changed, 53 insertions(+), 65 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 4942a391001..f0d09c7c2fd 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -260,18 +260,17 @@ languages:
    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index a0481b9631e..5c7234b6dd5 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -134,16 +134,16 @@ s.parentNode.insertBefore(ga, s); {%- endblock %} {%- block footer %} +

    + +
    +

    -
    - -
    -

    {%- if show_copyright %} {%- if hasdoc('copyright') %} diff --git a/api.html b/api.html index 9ca1ce4a2df..54a6c896aee 100644 --- a/api.html +++ b/api.html @@ -344,18 +344,17 @@ a conf.d file appropriately or something similar. Who knows.


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/examples.html b/examples.html index 345f3eaaebd..a79a2bfd6f6 100644 --- a/examples.html +++ b/examples.html @@ -359,18 +359,17 @@ a simplified syntax for this.


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/faq.html b/faq.html index 4a6e180ce04..9aa5e0e3ece 100644 --- a/faq.html +++ b/faq.html @@ -366,18 +366,17 @@ tasks – whether for a QA sytem, build system, or anything you can think of
    -

    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/genindex.html b/genindex.html index 87acddaeb68..c29d8052f1d 100644 --- a/genindex.html +++ b/genindex.html @@ -175,18 +175,17 @@ s.parentNode.insertBefore(ga, s);
    -

    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/gettingstarted.html b/gettingstarted.html index cc69f686229..7080b88b972 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -328,18 +328,17 @@ explore, but you already have a fully working infrastructure!


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/index.html b/index.html index 91b0fa7d4f8..c96f86a6b5a 100644 --- a/index.html +++ b/index.html @@ -414,18 +414,17 @@ Puppet Labs, and rPath. Reach Michael by email -

    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/moduledev.html b/moduledev.html index 7c7d13d96a1..0df88072344 100644 --- a/moduledev.html +++ b/moduledev.html @@ -415,18 +415,17 @@ Stop by the mailing list to inquire about requirements.


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/modules.html b/modules.html index 2d2a3b60def..d086c7769e1 100644 --- a/modules.html +++ b/modules.html @@ -737,18 +737,17 @@ yum pkg=httpd state=installed
    -

    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/patterns.html b/patterns.html index e8715dc6158..0758a339667 100644 --- a/patterns.html +++ b/patterns.html @@ -308,18 +308,17 @@ groups. This behavior may be refined in future releases.


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/playbooks.html b/playbooks.html index 9adbec659db..dca0af80fe8 100644 --- a/playbooks.html +++ b/playbooks.html @@ -697,18 +697,17 @@ Let’s run a playbook using a parallelism level of 10:


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/search.html b/search.html index a8de0f80d48..e3580c2f762 100644 --- a/search.html +++ b/search.html @@ -192,18 +192,17 @@ s.parentNode.insertBefore(ga, s);


    -
    +
    + +
    +

    -
    - -
    -

    © Copyright 2012 Michael DeHaan.
    Last updated on Apr 28, 2012.
    diff --git a/searchindex.js b/searchindex.js index 70daedeabcf..fc11f44a931 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,5,3,6,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],won:[6,9],experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,richer:4,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,restructur:6,suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,behavior:[7,3],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],src:[2,8,3,6,9],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,5,3,6,9],meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,comparison:[2,4],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],won:[6,9],experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,stuck:6,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,"long":[2,4,3,6,8,9],ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,richer:4,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,restructur:6,suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,didn:[4,9],linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 7d228c51984f535c5d1a142191c800f22b0cd756 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sat, 28 Apr 2012 11:20:38 -0400 Subject: [PATCH 191/416] Add github fork banner to docs project to correct for missing akamai resource. --- YAMLSyntax.html | 2 +- _themes/bootstrap/layout.html | 2 +- api.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- github.png | Bin 0 -> 7927 bytes index.html | 4 ++-- moduledev.html | 2 +- modules.html | 2 +- patterns.html | 2 +- playbooks.html | 2 +- rst/index.rst | 2 +- search.html | 2 +- searchindex.js | 2 +- 16 files changed, 16 insertions(+), 16 deletions(-) create mode 100644 github.png diff --git a/YAMLSyntax.html b/YAMLSyntax.html index f0d09c7c2fd..eaa24de8755 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -167,7 +167,7 @@ s.parentNode.insertBefore(ga, s);

    -Fork me on GitHub +Fork me on GitHub
    diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index 5c7234b6dd5..1be86e2f0e6 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -22,7 +22,7 @@
    -Fork me on GitHub +Fork me on GitHub {% endmacro %} {%- block extrahead %} diff --git a/api.html b/api.html index 54a6c896aee..9a61506c9c6 100644 --- a/api.html +++ b/api.html @@ -175,7 +175,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/examples.html b/examples.html index a79a2bfd6f6..8d51ea50c84 100644 --- a/examples.html +++ b/examples.html @@ -173,7 +173,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/faq.html b/faq.html index 9aa5e0e3ece..763e09e71c5 100644 --- a/faq.html +++ b/faq.html @@ -180,7 +180,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/genindex.html b/genindex.html index c29d8052f1d..4d3b27dad30 100644 --- a/genindex.html +++ b/genindex.html @@ -159,7 +159,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/gettingstarted.html b/gettingstarted.html index 7080b88b972..94359d03005 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -177,7 +177,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/github.png b/github.png new file mode 100644 index 0000000000000000000000000000000000000000..1e19c21262bccf6ae951636758b99708de331f27 GIT binary patch literal 7927 zcmXw8bySqk*I!~07na=$I2^ai>x+i_xrESm4M^zGPSG@kVYL3p;=oc%Id-%Q@%~YDq zvreF?jpbGr`rJnfA(0~K1Pr-&-nt8|9;|INzrS>9?3n-PyB8$laI|&1y!w#ddO5#X zUR#SO89|{?*Eyn#o2Z9V%fG9n_pqhl$FF)u)8uPILNwZJ)BbddiFq%)d5@Hxs9#l{ zeWjnBP^yb+nV-9w6VGP%fhCF}mE;NNi9BnDf^_ungK8T2+6@ASgs}Z&&N8?sCQ#4C zPVxCQwA8L89;Cof=t0M%VF!px{9E?+h_$z27;%PY;%-EcEEH5R0+{MJ4VYiL$B|&v z@o&uAh9SH!Cy#$HN49Rn`Wt`~Yu!$o^Gh4+lG{W)6T0%1ayHF}pWlhHq5UmMdQbGb zukaJ(8IE5N2ZhAEip#hQytXbl1FK)N{&ff{#NHx3!&BALgU@{+qxXp``-)KAnl)4( zj-gHdv^m>*^u2DpM;4SJo^Dsc&LQUTi=%z^1u?n)b~DY^1TzX**@DY<-n5w1edQ+d z`J85gfIMI6_T&o6UU1O`WP8~C&!)+(boCs{;jsBOQokk~X=77xHxM7_s;T*rsJ^ia z4_xx#>R&pv#zl`Jy+2*dkzWzH;zhA3~UD8&-a# znQqRn7Z&!>ru{57 z+wUWH5Lui;4XZNX3fiqLm-Amzq|8b>EkXymyH=y{`wk5YGHxP&Sg}+{<#*-B#PwhF zTT;plTi#+0boSVH%d%P(Zo?+WWxD2z*k387E~b~*F<>5@-rlerk z-Kg_UMw-Q<6WgZA3o-QP52{s9x473^qCujHWRED3;FH=*1suJ#LFb*SDDj(c!%=?aHn|ARiBJBH1?TgD<1d)sq8I>#)XQb5}TiGpU^<8O=_cNy&Er4?g?M ze0Aa4sX3d7lWeo}D;~sRw5G>_&KLsckyTGm1m8_rbAcxITw?T$%?aMGW%zBtIJ=%QTPfT^n1AvuQy>ybTpy&dXeTjHiiEkH-8n}?Zx#cxeTJMPkGh| z6O901G?i2(0cBmprD;FtrzUKXzv5=)zOVz0VE2jFUpv|8uSVUk5eMd~WKX6yXnqvL zGKb2llN!-!*=Z$>eiN26W@Y8G_*s&)^Qo@Bmi>%LofY+)-!wOd+LSWHk7Hq2z!t4q zR>3a$8gl&O@2)(=d6={2wlIG|leTD!621DSfzfM4RMlf3+V!F~nF51jr^a`qlE9&% zZ&e42tU}MF$EOj=OD8T-A50N?V|xdLI|1RN>W%cCiQOXm+kpt zBXA2o`0u*7N>e#9n#L~0#zvhM@2Eo2PBmp1?Uaf35i9Yzi8*^5X&m-MaD6<|7Jw20o_1!|lbaQo5Ed0+lmF20>j*fGU8A=Ka&5xhs{Ewc0laERZ|*hIm|dj-83mh+vgEMeI0{}6um zg>GJJxntO?K^m92kUTH4VT(e?>o~K)mlg-jQcWI5+w;<16bEES@~i6)opF487t};Gi{SnSOXCpmv32y~Olc~Av46#1Vg^bv83LxgBI9>AVhzLQ2qwm+ zl5O0Zt#8hbAS~LV6;$I|ebn3;aFgWvQ`3Tb13af^#XhXLwmUJVFP!UrNpY85Q6E!SH|zA1^q#_KX9(|H(P$bl)2-zydtCdnDvHBmd!gq& z)vv%(VVtiqz1~)83Dx6A>w>F&lTQ_-WWIU`9Rs zll~Pt)Lh48# zpxUOwC<4%n+(XN5`t}4r=CeCoO4`A}2`lk9qReyBHD!#2(y~((XB9;bQL)&llT^1k zy^XsI(0**<%gYPZ3Lx1V*Jzj7kLWz-;-$_$pg&fa0Q?BIti&4*X*OHlvhUO>x(*AC zwBwx<=y5?iuN4uuhtbuO5q{(mYGcvutz@BCSQ9psgG*Eoa$}5RJD(*3Y%eIHA&WNu zgAkn5J^3CY-EP`nh009I&5}yOqLos0F05!u_Y%UfjEIIY4*EoQn(|_S0-xS|WZo++ z1L2es8a27y2?4)Q%Q#Nu=Zh-xF@x@XLjN&IA{n_{Sw*K6NX=k{DA(d7cEI}wE-?x1 zK!BGl_7HwFwi(#xfwsBZhMGZ>9JOtqJL5k(4+*A(e*JSg);c-PRp1;V{)o*z;Jm8+ zFE6!vUWrr{(SQ&Y8Q|aO8Wm_pIa_9xHmaDbHHMJjE!|7iBbhm5h8CIP=b z$PW32pu+^iXv(TX7y8)W225CBL$xA@&1L z66r#uCR&j?qQ#=G#h;w>h=w5WiIS9xV|>-8`AjPiPiD#xc{GBG%;bZ|u~cPA`CPSp z320O#eMY*SgyL}6lOJEwHolNTzha8>LQ6%LdwT(qEI z#q^)ZCjMwHPuUW~$ULNnih)ZqEs&7qa)%Y>Au1tptEa52s~%UVE^>IJ{_t8TmYX2! z3@AJVfGAk}!rm}b*bxmHo`IJgUd-AQ7L!-IbR{HMjf|wSqHeCi0}kB*|IAQWUn5Ds z&b1hylv(US2-x3O*Ssr0Ug2;a*ThXWZd6)%cRLhA+q-eWb^NA+_FHF3=p+pcnlmle zfR%0$DSjncQ$fdT`es40gyBiWA&R{0SQBz%ZdMYZTOql>A+!H>`K_@5P+(9<)7s8X zMDXf$5Ftvt!7jaeoOlu4-f(NTb7)zsm&Z$KMO8Q3&jcGNo=!*?d6dLX2g!7TnKHss z0`eHPwloIUTd$jsIQn&{YA7QoO(~8-X-h1BQAO8&r6zc{n|mjMt{59|2-0k3LSq}T zq(*Qd1L=hMjCyVZ-29&s2pR=Q`iaY-Qe^;NIr(b3pM&_<4GdKz!>B~z;B8(j3T~Os z=qKZE8hOxboG)bJT|cN*8?!GUd~dBhbQS_^Ks;9eGX$C^w)D1q!1>zZWg@F$C+dwW z*1yCm&x1-0-#q5AsSp_Z#>#Z|@N(U7nKjK(0Jzq!X{Z*6bkDFXk;0JAXT*2pg4S+- zSw%2E1s;CN-ty?d)7haoY#qp2h!#&phtUgj{z7P`-Z`!77Evz%3vzR^mpOj4b>o%6 zc}AO*>GTL*KKIF_+h*kMTBCpcNn*!HbS^f*&bumV{5p5v!GPers-oH|WRG>PL0Lx# z#oEMO+b@c!dfPwRMqnM4#$k9$ZeoR3tx=H^AJAB!3Om_RdAK>&L8s#bLXGR$Bhw4WMn~lc&Wk zOH2Fe?RU8YqrFv&Cj|Ibl(sNfu$DD-3RZ!WMFDD#KU6}-+=Ez8DHy&&SSi4%LKAPX{ji8$-@Qo^cvZEZd!bcwE6TSab^ zq;;4eihgIIP+jA0EsV*YDlIh?O_0cn*Q#>)!^2-`8?;t6K2a_!091u}*)(7c$Z~pz zGEM&N43NH`A#4Madf+NyaRnUQPfxpbs$onLrhnhn_l44&w{09^_BL>+RFe^O9~dMj zMu7~}>jZpm65ff7g9uvSJ2GeV^N^^r@kU|s>0_g1erg+4FJ9Go?o&u?tPYzsWL3{0 zKms!}!F~NvwtvG-&vyWy83`~}9FoT{K>m{ws(R8FGp(V!ch_8&r~KaXcxmhxcd$tI z@h;Dwxy~RH>|XlR!Z=t>BOpfec$&^nQk}%qkP)Ze5JSwYN?Y$@o*@J8F6uX}K0)rq zNB?T@ZyIHu?%tedS020|EU>_XAcIRR(t(m|7as{(oQ-BQ1tnk+)_lOiL6rSsjj*jw zdoXP%pSovY3f}vxnf5otLMO7 zPrkn6Pc$Zrp5u1ffEqi#x6Aa zrKON5FWT76dz-aL3KW$UjQ2kDn{ntjEyv&t=Wtkj85_g2X0{cm%l{EDe8mQoEw#nk zS2h2AtOxMvsE{q4T3jo#vzD3fEvali3L$enDB<^43q5QCwDz*qotl_q&{G? zXE}p1T~aap!YD;Xr@&jSMdHZePMBCpYQ;mQW+V2y2yByZP;Pn|O49KL02#6pm(JlA zFSg(0XqM2BPU)P}7O|Uvn60+ejSZ5&xM=j4eLwT4%;EIMJGT+G;Nixr9SH)`quIx5 zGYcgzii(0+{-$7sh=ri*SM^q+XwJ(#PJ1v zywMs0OY~&zeSpte#q-8nIlELNrAR+t1O1jJ*>Hgw4oKZOVnWdVxf zq%Qe+A$h^6JI4j@tetytE}+>#)dNuF)Px1fGL@hr;?J6J^+feS9X#)=@uR7s3?%tD z9Lz)&DSUao_w#km!Q7J=N?BHLs6dwTM|z1mmBVN|M@RUxoJt^ABrAUMcT^sOj=HCm z>FY=MNtle*;qsVPycT&o(wvY$BprOKKx8GYiIeBY*cw#XI=~p4T-?E zCa25^e4_OeOoaxO{(CRK8Xt|U@Xl{*{3)9r0a7iJ5CWEwE**| z{gX0mv@aecRB)|M=r_eZLQ2W`+A-(qV$7z-$W=~GqtZ4lMLE8~!FVBxl=P`F2bk>@ z7Q4i&SGP+dN8x&FEN&uw^p!Mp0XU6P6~s)3Q%V6vY%G~B2KqD>!eRAoyr)ZMFnO0KZos;g?|An%h5B?B5_5kCK#cFJfyt>!oCZ?Q%6rL$k6iarW2% zAOsjjrLt6puK9+8Tc$_a*af4d^-gD> z&OGI*z`RyI>oF3zZ-OQuJ(@Bk8)#$0wP&9W)^V7g;G`1qW{Q6$?>P1W*o5LjI>Ks* z41@@Eo8Y^!w7zSdgIFRN%k2;X;CNKM{gEr3Vo*^A6+3l~H>{M*8N|4vT4nOo)nw&y zj0$$18bjzg7EV8WnK~fQmr+h^C0Ix2Pc9E$ZuNvyr=uf8+%!}d2e&2$GWxNA>hFpi4z)d<>tPGYONSc`eH{d(bdSL!cc{ z{D>(0N@sGtw-w{NsYMyo?EFk!;x}!#yM4V;*-cVUaE z5!nW^FM|d@2B@Xo*V-f$lX+GGJlVCwP^Q%pq0I$$9Tg|v1^!V9mXXpMbrQ%;Wispa znYtzBDcYx&vprQ+B@2LLN|oNq;l<4Pp$IP;CO5Uhz1v>B^>k!c(cT87iuG1FLT>U7ujnO%ZCzFZp*snkcrF1Uv*W*4}GAV0?&QHtRqj(2Rg^zk*6V)VUutxG4gdiM|RtmRY>_s(eM}eP{9)u687hE)&183 z$Kl&^39nD>_QM}w6tnmqZKTw!G(k%v9oihuVMd(HMOYPuKFtL|Fdb+2p8-mK45ZzW zNM8A9QPzd3t^GZs{zSqOryxhns&sJc9QpbPcZ;Ia@-{NvgTYPpQ61~YA6YfH_v32! z-G|0;YACdV70qHv?8va&5J$YP*6#GV5XKLko!Oeq=vBs*RR^J;bO{}k$f5pT?@k2! zYy3zPdBVBQXyxKK9Dz4nLHLvf*q};||9*dJq5gDjlRNgvP=~q;T$}$PO1gdXnc`$s zSNC7b=cIWqcs6-7ENh_^T(=ES_MSc!Zb``tI|n%KTd>Q^L~A6NOyzPgiD(YZTu!tz zV8{FSD^fua{t>9!ZxdQZSjyDB1^8UGw8Y!a=*1yvXmiAqjH}g5l_M(H?DdptZ>C9@ zCO*TS{_od>Zy{&1pxq0Rv6rcf<{UD*(_Dg`!b8U%%Ng$ z$#b%wi)N(V%8zQ`D4F*5Es%Cg*QXBYHw*9EX*q|48pnB#~%w*C8bSQjKwqrjlF35~hP>(wV5Geg*7`I21*%R-T z-<|I*0@ZEBa1q8VXEL9Zf@}cTd;I=?EqNxVW{u7@F^_#KkaRj%GFDk`N#%4XeM)(? zp`9#vUs))N7O!tIlcpmY!Q=FU<*d7^El}S$r=-4$?5K}ho5)Q1GDT5<%8&ACoIAK@kvrLF}&Z+nO z@Lq3UUpFO#r*i&B-bq*8^pV2O<-XK>>R`J*q>x+569n?Sw^yUmGz~az|0B`@V}{Ih(>v&%$YZ#@jN&oE zeaEkE{f7#ZO@B<(Pfv-{#$Qm=2rk*UzMcsr ziS!7wGHk9BnujR_^l!f61G3)Uu6loCpMIZ9U5sN2)zI2DdM3od7MX3=ti+3fgIkLX z8CatCdjx9oBh7-%_ArE&OOoN$hYC&6AOhZ$f4jgp&3z-kxN+DRR`xYXrFSfyMq@z~ zr{odf&RjcdMZyUS1Cv#4KvdgGkSx1Fbu!~Xe()| VW=p$pVk+5ycXG0W literal 0 HcmV?d00001 diff --git a/index.html b/index.html index c96f86a6b5a..97d420f4156 100644 --- a/index.html +++ b/index.html @@ -174,7 +174,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    @@ -409,7 +409,7 @@ internet infrastructure, finance, chip design, and more. Michael also helped co-author Func, a precursor to Ansible, which is used to orchestrate systems in lots of diverse places. He’s worked on systems software for IBM, Motorola, Red Hat’s Emerging Technologies Group, -Puppet Labs, and rPath. Reach Michael by email here.

    +Puppet Labs, and is now with rPath Reach Michael by email here.

    diff --git a/moduledev.html b/moduledev.html index 0df88072344..ba6cf3b93dc 100644 --- a/moduledev.html +++ b/moduledev.html @@ -174,7 +174,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/modules.html b/modules.html index d086c7769e1..5ddce9e2539 100644 --- a/modules.html +++ b/modules.html @@ -184,7 +184,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/patterns.html b/patterns.html index 0758a339667..0e516c1ee17 100644 --- a/patterns.html +++ b/patterns.html @@ -169,7 +169,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/playbooks.html b/playbooks.html index dca0af80fe8..05921174a73 100644 --- a/playbooks.html +++ b/playbooks.html @@ -187,7 +187,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/rst/index.rst b/rst/index.rst index e30b5507ff1..737bde3f2d0 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -139,6 +139,6 @@ internet infrastructure, finance, chip design, and more. Michael also helped co-author `Func `_, a precursor to Ansible, which is used to orchestrate systems in lots of diverse places. He's worked on systems software for IBM, Motorola, Red Hat's Emerging Technologies Group, -Puppet Labs, and rPath. Reach Michael by email `here `_. +Puppet Labs, and is now with `rPath `_ Reach Michael by email `here `_. diff --git a/search.html b/search.html index e3580c2f762..320da890953 100644 --- a/search.html +++ b/search.html @@ -160,7 +160,7 @@ s.parentNode.insertBefore(ga, s);
    -Fork me on GitHub +Fork me on GitHub
    diff --git a/searchindex.js b/searchindex.js index fc11f44a931..51e20bc5d13 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,behavior:[7,3],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],src:[2,8,3,6,9],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,5,3,6,9],meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,comparison:[2,4],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],won:[6,9],experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,stuck:6,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,"long":[2,4,3,6,8,9],ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,richer:4,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,restructur:6,suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,didn:[4,9],linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[4,5,6,7,8,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[2,3,4,5,6,8],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],tho:3,client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,5,3,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,5,8,3,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:1,explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],choos:[3,6],undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,implement:[8,4,5],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 139a1324e9014f81c7664f297ec61cf6ac9c821a Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 2 May 2012 00:23:47 -0400 Subject: [PATCH 192/416] Allude to ansible-pull, more docs coming later. --- rst/index.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rst/index.rst b/rst/index.rst index 737bde3f2d0..12c77234fde 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -24,6 +24,10 @@ version of software if required. Multi-machine software deployment is poorly solved by most systems management tools -- often due to architectural nature of being pull oriented and having complex ordering systems, they cover configuration but fail at deployment when updating tiers of machines in well defined steps. This results in using two (or more) logically distinct tools and having complex overlap between them. +If you actually do need pull oriented mode, though, Ansible 0.4 and later can run playbooks in pull mode as well. +This is useful in extreme scaling scenarios or when automatic system remediation is desired. Since Ansible remains +server and daemonless, scaling potential is unlimited, and no resources are wasted on running management daemons. + Deployment and Configuration, Unified ````````````````````````````````````` From 16c4802476e99a23bc9a09b3781815d03f8fc268 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 2 May 2012 00:24:01 -0400 Subject: [PATCH 193/416] Docs rebuild --- YAMLSyntax.html | 2 +- api.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 5 ++++- moduledev.html | 2 +- modules.html | 14 +++++++++----- patterns.html | 2 +- playbooks.html | 2 +- search.html | 2 +- searchindex.js | 2 +- 13 files changed, 24 insertions(+), 17 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index eaa24de8755..80d5cedd4d4 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -273,7 +273,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/api.html b/api.html index 9a61506c9c6..20d4dbbad49 100644 --- a/api.html +++ b/api.html @@ -357,7 +357,7 @@ a conf.d file appropriately or something similar. Who knows.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/examples.html b/examples.html index 8d51ea50c84..5a5780f7eb0 100644 --- a/examples.html +++ b/examples.html @@ -372,7 +372,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/faq.html b/faq.html index 763e09e71c5..e53dc57b087 100644 --- a/faq.html +++ b/faq.html @@ -379,7 +379,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/genindex.html b/genindex.html index 4d3b27dad30..7e6ee1841de 100644 --- a/genindex.html +++ b/genindex.html @@ -188,7 +188,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 94359d03005..6fced5ea074 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -341,7 +341,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/index.html b/index.html index 97d420f4156..00be249855b 100644 --- a/index.html +++ b/index.html @@ -201,6 +201,9 @@ more plays, each executed against a different batch of nodes. Think about webservers, database servers, and backend servers in a multi-node web environment. A play can address each set of machines in a cycle, ensuring the configurations of the machines were correct and also updating them to the specified version of software if required.

    Multi-machine software deployment is poorly solved by most systems management tools – often due to architectural nature of being pull oriented and having complex ordering systems, they cover configuration but fail at deployment when updating tiers of machines in well defined steps. This results in using two (or more) logically distinct tools and having complex overlap between them.

    +

    If you actually do need pull oriented mode, though, Ansible 0.4 and later can run playbooks in pull mode as well. +This is useful in extreme scaling scenarios or when automatic system remediation is desired. Since Ansible remains +server and daemonless, scaling potential is unlimited, and no resources are wasted on running management daemons.

    Deployment and Configuration, Unified

    @@ -427,7 +430,7 @@ Puppet Labs, and is now with -
  • ‘user’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present.
  • +
  • ‘user’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify ‘_default’, it will use the ‘user’ portion of default context from the policy if available.
  • serole:

      -
    • ‘role’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present.
    • +
    • ‘role’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify ‘_default’, it will use the ‘role’ portion of default context from the policy if available.

    setype:

      -
    • ‘type’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present.
    • +
    • ‘type’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify ‘_default’, it will use the ‘type’ portion of default context from the policy if available.

    selevel:

      -
    • ‘level’ part of SELinux file context. This is the MLS and MCS attribute of the file context. It defaults to ‘s0’. Only used only used on hosts with SELinux present.
    • +
    • ‘level’ part of SELinux file context. This is the MLS and MCS attribute of the file context, also sometimes known as the ‘range’. It defaults to ‘s0’. Only used only used on hosts with SELinux present. If you specify ‘_default’, it will use the ‘level’ portion of default context from the policy if available.

    context:

      @@ -610,6 +610,10 @@ be a relative or absolute path.
      • Optionally sets the description of the user
      +

      uid:

      +
        +
      • optional uid to set for the user
      • +

      group:

      • Optionally sets the user’s primary group, takes a group name.
      • @@ -750,7 +754,7 @@ yum pkg=httpd state=installed

        © Copyright 2012 Michael DeHaan.
        - Last updated on Apr 28, 2012.
        + Last updated on May 02, 2012.

    diff --git a/patterns.html b/patterns.html index 0e516c1ee17..972b904d20a 100644 --- a/patterns.html +++ b/patterns.html @@ -321,7 +321,7 @@ groups. This behavior may be refined in future releases.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/playbooks.html b/playbooks.html index 05921174a73..3102b91ba90 100644 --- a/playbooks.html +++ b/playbooks.html @@ -710,7 +710,7 @@ Let’s run a playbook using a parallelism level of 10:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/search.html b/search.html index 320da890953..2d6a057d517 100644 --- a/search.html +++ b/search.html @@ -205,7 +205,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Apr 28, 2012.
    + Last updated on May 02, 2012.

    diff --git a/searchindex.js b/searchindex.js index 51e20bc5d13..b378eb0b3ae 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[4,5,6,7,8,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:2,render:3,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:6,master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[2,3,4,5,6,8],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:8,ansible_:6,hypothet:[],tho:3,client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:[],cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[5,3,6],flag:[],particular:[2,3,6,7,8,9],compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,5,3,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,5,8,3,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:1,explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],choos:[3,6],undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,implement:[8,4,5],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:7,emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,2,3,5,6,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 0c2dd7b05752b420973b29727073150d143294c6 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 2 May 2012 00:34:37 -0400 Subject: [PATCH 194/416] Clarify include section --- rst/playbooks.rst | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/rst/playbooks.rst b/rst/playbooks.rst index acc8f24c4fd..c837c2ddb55 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -405,12 +405,7 @@ Include directives look like this:: - tasks: - include: tasks/foo.yml -Variables passed in can be used in the include files too. Assume a variable named 'user'. Using -`jinja2` syntax, anywhere in the included file, you can say:: - - {{ user }} - -I can also pass variables into includes directly. We might call this a 'parameterized include'. +You can also pass variables into includes directly. We might call this a 'parameterized include'. For instance, if deploying multiple wordpress instances, I could contain all of my wordpress tasks in a single wordpress.yml file, and use it like so:: @@ -420,15 +415,22 @@ contain all of my wordpress tasks in a single wordpress.yml file, and use it lik - include: wordpress.yml user=alice - include: wordpress.yml user=bob +Variables passed in can be used in the included files. Using +`jinja2` syntax, in the included file, you can reference them like this:: + + {{ user }} + +or, more simply, using Ansible's simplified variable syntax:: + + $user + In addition to the explicitly passed in parameters, all variables from -the vars section are also available for use here as well. Variables that bubble -up from tools like facter and ohai are not usable here though -- but they ARE available for use -inside 'action' lines and in templates. +the vars section are also available for use here as well. .. note:: Include statements are only usable from the top level playbook file. This means includes can not include other - includes. + includes. This may be implemented in a later release. Includes can also be used in the 'handlers' section, for instance, if you want to define how to restart apache, you only have to do that once for all From 1c5f5acadfca09d9d909fd59ea4fb479e02242c9 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 2 May 2012 00:34:56 -0400 Subject: [PATCH 195/416] Rebuild --- playbooks.html | 19 ++++++++++--------- searchindex.js | 2 +- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/playbooks.html b/playbooks.html index 3102b91ba90..de710ead19c 100644 --- a/playbooks.html +++ b/playbooks.html @@ -533,11 +533,7 @@ include files to do this.

    - tasks:
        - include: tasks/foo.yml
    -

    Variables passed in can be used in the include files too. Assume a variable named ‘user’. Using -jinja2 syntax, anywhere in the included file, you can say:

    -
    {{ user }}
    -
    -

    I can also pass variables into includes directly. We might call this a ‘parameterized include’.

    +

    You can also pass variables into includes directly. We might call this a ‘parameterized include’.

    For instance, if deploying multiple wordpress instances, I could contain all of my wordpress tasks in a single wordpress.yml file, and use it like so:

    - tasks:
    @@ -545,15 +541,20 @@ contain all of my wordpress tasks in a single wordpress.yml file, and use it lik
       - include: wordpress.yml user=alice
       - include: wordpress.yml user=bob
    +

    Variables passed in can be used in the included files. Using +jinja2 syntax, in the included file, you can reference them like this:

    +
    {{ user }}
    +
    +

    or, more simply, using Ansible’s simplified variable syntax:

    +
    $user
    +

    In addition to the explicitly passed in parameters, all variables from -the vars section are also available for use here as well. Variables that bubble -up from tools like facter and ohai are not usable here though – but they ARE available for use -inside ‘action’ lines and in templates.

    +the vars section are also available for use here as well.

    Note

    Include statements are only usable from the top level playbook file. This means includes can not include other -includes.

    +includes. This may be implemented in a later release.

    Includes can also be used in the ‘handlers’ section, for instance, if you want to define how to restart apache, you only have to do that once for all diff --git a/searchindex.js b/searchindex.js index b378eb0b3ae..9bbda5198fe 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,6,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[4,5,6,7,8,9],though:[2,3,4,5,6,8],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8,6],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:3,contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,2,3,5,6,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:9,creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,5,8,3,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:1,favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,implement:[8,4,5],ini:7,inc:3,detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[4,5,6,7,8,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[8,2,5,4,3],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,daemonless:2,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],tho:3,client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],width:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,submit:[2,4],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,comparison:[2,4],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],behavior:[7,3],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],dbserver:[7,6],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],great:[2,4,5,6],didn:[4,9],hypervisor:3,technolog:2,later:[0,2,3,5,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,src:[2,8,3,6,9],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,5,8,3,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:1,explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],choos:[3,6],undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,implement:[8,4,5,6],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From b247da54f1d8ac8f044aa579c753537d9ed5a1e1 Mon Sep 17 00:00:00 2001 From: John Callender Date: Tue, 1 May 2012 22:35:02 -0700 Subject: [PATCH 196/416] Issue #82: Minor edits to doc text and formatting --- rst/api.rst | 4 ++-- rst/examples.rst | 15 ++++++++------- rst/gettingstarted.rst | 2 +- rst/index.rst | 5 ++--- rst/moduledev.rst | 8 ++++---- rst/modules.rst | 42 +++++++++++++++++++++--------------------- rst/patterns.rst | 4 ++-- rst/playbooks.rst | 24 +++++++++++++----------- 8 files changed, 53 insertions(+), 51 deletions(-) diff --git a/rst/api.rst b/rst/api.rst index fe19e844f74..4fdbaa46429 100644 --- a/rst/api.rst +++ b/rst/api.rst @@ -87,7 +87,7 @@ External Inventory Often a user of a configuration management system will want to keep inventory in a different system. Frequent examples include LDAP, `Cobbler `_, or a piece of expensive enterprisey CMDB software. Ansible easily supports all -of these options via an external interventory system. +of these options via an external inventory system. If you have a data store system where an Ansible external inventory script doesn't already exist, this may require a little coding, but we have a `Cobbler example `_ in the main source tree -- but it's pretty simple, as we'll explain below -- that would provide a good starting point. Like with modules, it's possible to build an external inventory script in any language, as long as it returns JSON. @@ -165,7 +165,7 @@ And technically, though there is no major good reason to do it, this also works ansible webserver -m shell -a "echo {{ a }}" So in other words, you can use those variables in arguments/actions as well. You might use this to name -a conf.d file appropriately or something similar. Who knows. +a conf.d file appropriately or something similar. Who knows? So that's the Cobbler integration support -- using the cobbler script as an example, it should be trivial to adapt Ansible to pull inventory, as well as variable information, from any data source. If you create anything interesting, please share with the mailing list, and we can keep it in the source code tree for others to use. diff --git a/rst/examples.rst b/rst/examples.rst index 3345ac97d7b..0403a6d8dbd 100644 --- a/rst/examples.rst +++ b/rst/examples.rst @@ -25,7 +25,7 @@ If you want to run commands as a different user than root:: ansible atlanta -a "/usr/bin/foo" -u yourname -If you want to run commands through sudo: +If you want to run commands through sudo:: ansible atlanta -a "/usr/bin/foo" -u yourname --sudo [--ask-sudo-pass] @@ -45,13 +45,13 @@ module looks like this:: ansible raleigh -m shell -a 'echo $TERM' When running any command with the ansible "ad hoc" CLI (as opposed to playbooks), pay particular attention -to shell quoting rules, so the shell doesn't eat a variable before it gets passed to Ansible. For example, u -using double vs single quotes would evaluate the variable on the box you were on. +to shell quoting rules, so the shell doesn't eat a variable before it gets passed to Ansible. For example, +using double vs single quotes in the above example would evaluate the variable on the box you were on. So far we've been demoing simple command execution, but most ansible modules usually do not work like simple scripts. They make the remote system look like you state, and run the commands necessary to get it there. This is commonly referred to as 'idempotence', and is a core design goal of ansible. -However, we also recognize that running ad-hoc commands is equally imporant, so Ansible easily supports both. +However, we also recognize that running ad-hoc commands is equally important, so Ansible easily supports both. File Transfer & Templating @@ -62,7 +62,7 @@ Here's another use case for the `/usr/bin/ansible` command line. Ansible can SCP lots of files to multiple machines in parallel, and optionally use them as template sources. -To just transfer a file directly to many different servers:: +To transfer a file directly to many different servers:: ansible atlanta -m copy -a "src=/etc/hosts dest=/tmp/hosts" @@ -70,7 +70,8 @@ To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the template module to write the files using those templates. -Templates are written in Jinja2 format. Playbooks (covered elsewhere in the +Templates are written in `Jinja2 `_ format. +Playbooks (covered elsewhere in the documentation) will run the setup module for you, making this even simpler:: @@ -131,7 +132,7 @@ Ensure a package is not installed:: ansible-webservers -m yum -a "pkg=acme state=removed" -Currently Ansible only has a module for managing packages with yum. You can install +Currently Ansible only has modules for managing packages with yum and apt. You can install for other packages for now using the command module or (better!) contribute a module for other package managers. Stop by the mailing list for info/details. diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index b919c310e0f..62001b00076 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -89,7 +89,7 @@ build an RPM you can distribute and install:: Note that if you are tracking the upstream source (i.e. git), the RPM revision will not be bumped with every source code change. To get around this, you can use -rpm `-Uvh` with `--force` when RPM tells you the package is still at the +``rpm -Uvh`` with ``--force`` when RPM tells you the package is still at the same version. This is perfectly safe to do. Debian, Gentoo, Arch, Others diff --git a/rst/index.rst b/rst/index.rst index 737bde3f2d0..54c2d64f35f 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -27,8 +27,7 @@ Multi-machine software deployment is poorly solved by most systems management to Deployment and Configuration, Unified ````````````````````````````````````` -Other deployment (compared to config) oriented frameworks similarly cover deployment well but lack a strongly defined resource model and devolve into glorified remote scripts. Ansible playbooks -- having been designed with this problem in mind -- are good at both deployment & idempotent configuration, meaning you don't have to spread your infrastructure management out between different tools (Puppet+Capistrano, Chef+Fabric, etc), and performing ordered steps between different classes of machines is no problem, yet our modules affect system state only when required -- while avoiding the problem of fragile scripting that assumes certain starting -or ending states. +Other deployment (compared to config) oriented frameworks similarly cover deployment well but lack a strongly defined resource model and devolve into glorified remote scripts. Ansible playbooks -- having been designed with this problem in mind -- are good at both deployment & idempotent configuration, meaning you don't have to spread your infrastructure management out between different tools (Puppet+Capistrano, Chef+Fabric, etc). Performing ordered steps between different classes of machines is no problem, yet our modules affect system state only when required -- while avoiding the problem of fragile scripting that assumes certain starting or ending states. Ansible is also unique in other ways. Extending ansible does not require programming in any particular language -- you can write :doc:`modules` as idempotent scripts or programs that return simple JSON. Ansible is also pragmatic, so when you need to, it's also trivially easy to just execute useful shell commands. @@ -139,6 +138,6 @@ internet infrastructure, finance, chip design, and more. Michael also helped co-author `Func `_, a precursor to Ansible, which is used to orchestrate systems in lots of diverse places. He's worked on systems software for IBM, Motorola, Red Hat's Emerging Technologies Group, -Puppet Labs, and is now with `rPath `_ Reach Michael by email `here `_. +Puppet Labs, and is now with `rPath `_. Reach Michael by email `here `_. diff --git a/rst/moduledev.rst b/rst/moduledev.rst index 43448788403..28f84036fd3 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -5,7 +5,7 @@ Ansible modules are reusable units of magic that can be used by the Ansible API, or by the `ansible` or `ansible-playbook` programs. Modules can be written in any language and are found in the path specified -by `ANSIBLE_LIBRARY_PATH` or the `--module-path` command line option. +by `ANSIBLE_LIBRARY_PATH` or the ``--module-path`` command line option. Tutorial ```````` @@ -53,7 +53,7 @@ You should see output that looks something like this:: {u'time': u'2012-03-14 22:13:48.539183'} -If you did not, you might have a typo in your module, so recheck it and try again +If you did not, you might have a typo in your module, so recheck it and try again. Reading Input ````````````` @@ -76,7 +76,7 @@ If no time parameter is set, we'll just leave the time as is and return the curr use the shell module. However, it probably makes a decent tutorial. Let's look at the code. Read the comments as we'll explain as we go. Note that this -highly verbose because it's intended as an educational example. You can write modules +is highly verbose because it's intended as an educational example. You can write modules a lot shorter than this:: #!/usr/bin/python @@ -203,7 +203,7 @@ Conventions As a reminder from the example code above, here are some basic conventions and guidelines: -* Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file +* Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file. * Modules must be self contained in one file to be auto-transferred by ansible diff --git a/rst/modules.rst b/rst/modules.rst index ceba10939bf..09d039de96b 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -26,7 +26,7 @@ From playbooks, Ansible modules are executed in a very similar way:: All modules technically return JSON format data, though if you are using the command line or playbooks, you don't really need to know much about that. If you're writing your own module, you care, and this means you do -not have to write modules in any particular language -- you get tho choose. +not have to write modules in any particular language -- you get to choose. Most modules other than command are `idempotent`, meaning they will seek to avoid changes to the system unless a change needs to be made. When using Ansible @@ -52,7 +52,7 @@ Manages apt-packages (such as for Debian/Ubuntu). *update-cache*: -* Whether apt cache must be updated prior operation. Optional, and can be +* Whether the apt cache must be updated prior to operation. Optional, and can be 'yes', or 'no'. The default is 'no'. This can be done as the part of a package operation or as a seperate step. @@ -96,7 +96,7 @@ paths to commands must be fully qualified. This module does not support change hooks and returns the return code from the program as well as timing information about how long the -command was running for. +command was running. Example action from Ansible :doc:`playbooks`:: @@ -196,7 +196,7 @@ All parameters available to the file module are also available when running the *owner*: -* name of user that should own the file or directory, as would be given to `chown`. +* name of user that should own the file or directory, as would be given to `chown` *group*: @@ -208,7 +208,7 @@ All parameters available to the file module are also available when running the *dest*: -* location where the symlink will be created for 'link' state, also an alias for 'path'. +* location where the symlink will be created for 'link' state, also an alias for 'path' *seuser*: @@ -224,11 +224,11 @@ All parameters available to the file module are also available when running the *selevel*: -* 'level' part of SELinux file context. This is the MLS and MCS attribute of the file context. It defaults to 's0'. Only used only used on hosts with SELinux present. +* 'level' part of SELinux file context. This is the MLS and MCS attribute of the file context. It defaults to 's0'. Only used on hosts with SELinux present. *context*: -* accepts only 'default' as value. This will restore a file's selinux context to the default context in the policy. Does nothing if no default is available. +* accepts only 'default' as value. This will restore a file's selinux context to the default context in the policy. Does nothing if no default is available. Only used on hosts with SELinux present. Example action from Ansible :doc:`playbooks`:: @@ -351,7 +351,7 @@ will execute this module automatically as the first step in each play using the variables section, so it is unnecessary to make explicit calls to setup within a playbook. -Ansible provides may 'facts' about the system, automatically. +Ansible provides many 'facts' about the system, automatically. Some of the variables that are supplied are listed below. These in particular are from a VMWare Fusion 4 VM running CentOS 6.2:: @@ -425,13 +425,13 @@ also be snapshotted into the JSON file for usage in templating. These variables are prefixed with ``facter_`` and ``ohai_`` so it's easy to tell their source. -All variables are bubbled up to the caller. Using the ansible facts and chosing +All variables are bubbled up to the caller. Using the ansible facts and choosing to not install facter and ohai means you can avoid ruby-dependencies on your remote systems. -*anything*: +*variablename*: - * Any other parameters can be named basically anything, and set a ``key=value`` pair in the JSON file for use in templating. + * Arbitrary names can be used as variables. 'variablename' can be basically anything, and sets a ``key=value`` pair in the JSON file for use in templating. Example action from Ansible :doc:`playbooks`:: @@ -463,7 +463,7 @@ use your best judgement. This module does not support change hooks and returns the return code from the program as well as timing information about how long the -command was running for. +command was running. Example action from a playbook:: @@ -477,8 +477,8 @@ template Templates a file out to a remote server. Call the :ref:`setup` module prior to usage if you are not running from a playbook. In addition to the options -listed below, the arguments available to the `file` module can also be passed to the copy -module. +listed below, the arguments available to the `file` and `copy` modules can also be passed +to the template module. *src*: @@ -487,7 +487,7 @@ module. *dest*: -* Location to render the template on the remote server. +* Location to render the template on the remote server This module also returns md5sum information about the resultant file. @@ -513,19 +513,19 @@ Creates user accounts, manipulates existing user accounts, and removes user acco *group*: -* Optionally sets the user's primary group, takes a group name. +* Optionally sets the user's primary group, takes a group name *groups*: -* Put the user in the specified groups, takes comma delimited group names. +* Put the user in the specified groups, takes comma delimited group names *append*: -* If true, will only add additional groups to the user listed in 'groups', rather than making the user only be in those specified groups. +* If true, will only add additional groups to the user listed in 'groups', rather than making the user only be in those specified groups *shell*: -* Optionally sets the user's shell. +* Optionally sets the user's shell *createhome*: @@ -541,11 +541,11 @@ Creates user accounts, manipulates existing user accounts, and removes user acco *force*: -* When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for --force is also used when removing the user. Value is 'yes' or 'no', default is 'no'. +* When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for ``--force`` is also used when removing the user. Value is 'yes' or 'no', default is 'no'. *remove*: -* When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for --remove is also used when removing the user. Value is 'yes' or 'no', default is 'no'. +* When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for ``--remove`` is also used when removing the user. Value is 'yes' or 'no', default is 'no'. Example action from Ansible :doc:`playbooks`:: diff --git a/rst/patterns.rst b/rst/patterns.rst index 8d0486484d5..4158e0740fe 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -25,7 +25,7 @@ The format for /etc/ansible/hosts looks like this:: two.example.com three.example.com -The things in brackets are group names, you don't have to have them, +The things in brackets are group names. You don't have to have them, but they are useful. If you have hosts that run on non-standard SSH ports you can put the port number @@ -127,7 +127,7 @@ style file with a YAML one.:: vars: - asdf: 1234 -Tip: Be sure to start your YAML file with the YAML record designator "---". +Tip: Be sure to start your YAML file with the YAML record designator ``---``. NOTE: variables specified in playbooks will override variables specified in the host file. Further, if a host is in multiple groups, currently, the diff --git a/rst/playbooks.rst b/rst/playbooks.rst index acc8f24c4fd..0ae6d69c288 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -80,7 +80,7 @@ Support for running things from sudo is also available:: user: yourname sudo: True -If you need to specify a password to sudo, run `ansible-playbook` with `--ask-sudo-pass` (`-K`). +If you need to specify a password to sudo, run `ansible-playbook` with ``--ask-sudo-pass`` (`-K`). If you run a sudo playbook and the playbook seems to hang, it's probably stuck at the sudo prompt. Just `Control-C` to kill it and run it again with `-K`. @@ -138,13 +138,13 @@ playbook. If things fail, simply correct the playbook file and rerun. The goal of each task is to execute a module, with very specific arguments. Variables, as mentioned above, can be used in arguments to modules. -Modules other than `command` are 'idempotent', meaning if you run them +Modules other than `command` and `shell` are 'idempotent', meaning if you run them again, they will make the changes they are told to make to bring the system to the desired state. This makes it very safe to rerun the same playbook multiple times. They won't change things unless they have to change things. -Command will actually rerun the same command again, +The `command` and `shell` modules will actually rerun the same command again, which is totally ok if the command is something like 'chmod' or 'setsebool', etc. @@ -159,9 +159,9 @@ the service module takes key=value arguments:: - name: make sure apache is running action: service name=httpd state=running -The command module is the one module that just takes a list -of arguments, and doesn't use the key=value form. This makes -it work just like you would expect. Simple:: +The `command` and `shell` modules are the one modules that just takes a list +of arguments, and don't use the key=value form. This makes +them work just like you would expect. Simple:: tasks: - name: disable selinux @@ -181,7 +181,7 @@ Running Operations On Change ```````````````````````````` As we've mentioned, nearly all modules are written to be 'idempotent' and can relay when -they have affected a change on the remote system. Playbooks recognize this and +they have made a change on the remote system. Playbooks recognize this and have a basic event system that can be used to respond to change. These 'notify' actions are triggered at the end of each 'play' in a playbook, and @@ -255,7 +255,7 @@ within a template or even an action line:: NOTE: No database or other complex system is required to exchange data between hosts. The hosts that you want to reference data from must be included in either the current play or any previous play. -External Variables And Prompted or Sensitive Data +External Variables and Prompted or Sensitive Data +++++++++++++++++++++++++++++++++++++++++++++++++ It's a great idea to keep your playbooks under source control, but @@ -355,6 +355,8 @@ but it is easily handled with a minimum of syntax in an Ansible Playbook:: - name: make sure apache is running action: service name=$apache state=running +Note that a variable (`$facter_operatingsystem`) is being interpolated into the list of +filenames being defined for vars_files. As a reminder, the various YAML files contain just keys and values:: @@ -432,7 +434,7 @@ inside 'action' lines and in templates. Includes can also be used in the 'handlers' section, for instance, if you want to define how to restart apache, you only have to do that once for all -of your playbooks. You might make a notifiers.yaml that looked like:: +of your playbooks. You might make a handlers.yml that looks like:: ---- # this might be in a file like handlers/handlers.yml @@ -505,7 +507,7 @@ Asynchronous Actions and Polling By default tasks in playbooks block, meaning the connections stay open until the task is done on each node. If executing playbooks with -a small parallelism value (aka `--forks`), you may wish that long +a small parallelism value (aka ``--forks``), you may wish that long running operations can go faster. The easiest way to do this is to kick them off all at once and then poll until they are done. @@ -548,7 +550,7 @@ Alternatively, if you do not need to wait on the task to complete, you may commands later in the playbook against those same resources. .. note:: - Using a higher value for `--forks` will result in kicking off asynchronous + Using a higher value for ``--forks`` will result in kicking off asynchronous tasks even faster. This also increases the efficiency of polling. Executing A Playbook From 26c141e96e46af2d705a7f7b60ddcba66f5d9e00 Mon Sep 17 00:00:00 2001 From: John Callender Date: Wed, 2 May 2012 06:53:29 -0700 Subject: [PATCH 197/416] Issue #84: Doc tweaks for modules, moduledev, and playbooks --- rst/moduledev.rst | 8 +++++--- rst/modules.rst | 6 ++++-- rst/playbooks.rst | 6 ++++++ 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/rst/moduledev.rst b/rst/moduledev.rst index 28f84036fd3..8eb767c020a 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -188,11 +188,13 @@ You should also never do this in a module:: Because the output is supposed to be valid JSON. Except that's not quite true, but we'll get to that later. -Further, modules must not output anything on stderr, even if the JSON returned -out stdout is valid. This is due to the internals of our SSH library, more or less. +Modules must not output anything on standard error, because the system will merge +standard out with standard error and prevent the JSON from parsing. Capturing standard +error and returning it as a variable in the JSON on standard out is fine, and is, in fact, +how the command module is implemented. If a module returns stderr or otherwise fails to produce valid JSON, the actual output -will still be shown in Ansible, however, but the command will not succeed. +will still be shown in Ansible, but the command will not succeed. Always use the hacking/test-module script when developing modules and it will warn you about these kind of things. diff --git a/rst/modules.rst b/rst/modules.rst index 09d039de96b..c8a3492f60e 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -431,7 +431,9 @@ on your remote systems. *variablename*: - * Arbitrary names can be used as variables. 'variablename' can be basically anything, and sets a ``key=value`` pair in the JSON file for use in templating. +* Arbitrary variable names, which must be a mix of alphanumeric characters and +underscores, can also be defined. Setting a variable creates a +``key=value`` pair in the JSON file for use in templating. Example action from Ansible :doc:`playbooks`:: @@ -451,7 +453,7 @@ shell The shell module takes the command name followed by a list of arguments, space delimited. It is almost exactly like the command module -but runs the command through the shell rather than directly. +but runs the command through the user's configured shell on the remote node. The given command will be executed on all selected nodes. diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 0ae6d69c288..ff510affe5f 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -501,6 +501,12 @@ To save some typing, repeated tasks can be written in short-hand like so:: - testuser1 - testuser2 +The above would be the equivalent of:: + + - name: add user testuser1 + action: user name=testuser1 state=present groups=wheel + - name: add user testuser2 + action: user name=testuser2 state=present groups=wheel Asynchronous Actions and Polling ++++++++++++++++++++++++++++++++ From 2059c5f6579f18a6c1f68913f6e13ec4ffb8beb1 Mon Sep 17 00:00:00 2001 From: Stephen Fromm Date: Wed, 2 May 2012 12:03:56 -0700 Subject: [PATCH 198/416] Update file documentation for se* options Describes how you can use '_default' to seuser, serole, setype, and selevel to use the default context from the policy, if available. --- rst/modules.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index 22483c0129e..6ed357237dd 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -207,19 +207,19 @@ All parameters available to the file module are also available when running the *seuser*: -* 'user' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. +* 'user' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify '_default', it will use the 'user' portion of default context from the policy if available. *serole*: -* 'role' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. +* 'role' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify '_default', it will use the 'role' portion of default context from the policy if available. *setype*: -* 'type' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. +* 'type' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify '_default', it will use the 'type' portion of default context from the policy if available. *selevel*: -* 'level' part of SELinux file context. This is the MLS and MCS attribute of the file context. It defaults to 's0'. Only used only used on hosts with SELinux present. +* 'level' part of SELinux file context. This is the MLS and MCS attribute of the file context, also sometimes known as the 'range'. It defaults to 's0'. Only used only used on hosts with SELinux present. If you specify '_default', it will use the 'level' portion of default context from the policy if available. Example action from Ansible :doc:`playbooks`:: From 01576f9447166d82dba0b49da0e5494ea7f3bd76 Mon Sep 17 00:00:00 2001 From: Peter Sankauskas Date: Thu, 3 May 2012 10:47:27 -0700 Subject: [PATCH 199/416] Add UID to user module documentation --- rst/modules.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rst/modules.rst b/rst/modules.rst index ceba10939bf..81d39a63ef4 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -511,6 +511,10 @@ Creates user accounts, manipulates existing user accounts, and removes user acco * Optionally sets the description of the user +*uid*: + +* optional uid to set for the user + *group*: * Optionally sets the user's primary group, takes a group name. From dfd671d60e330196808d068ac682757dfecd73d9 Mon Sep 17 00:00:00 2001 From: Wes Johnson Date: Thu, 3 May 2012 16:54:41 -0700 Subject: [PATCH 200/416] change 'name' to a better description for variable example. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 'make a directory' is a bad description, since the command "template …" doesn't actually create a directory. --- rst/playbooks.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rst/playbooks.rst b/rst/playbooks.rst index acc8f24c4fd..7e3abb1b80e 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -171,7 +171,7 @@ Variables can be used in action lines. Suppose you defined a variable called 'vhost' in the 'vars' section, you could do this:: tasks: - - name: make a directory + - name: create a virtual host file for $vhost action: template src=somefile.j2 dest=/etc/httpd/conf.d/$vhost Those same variables are usable in templates, which we'll get to later. From 21550f65868bf16ed650de3247a30e4da350ccfa Mon Sep 17 00:00:00 2001 From: Wes Johnson Date: Thu, 3 May 2012 16:55:17 -0700 Subject: [PATCH 201/416] ignore eclipse's .project file --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index efa7555c55f..2b1065c32bf 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,5 @@ ansible*.xml .buildinfo objects.inv .doctrees + +.project From 8f165e1d3c38ba3b8a08aef84f1afb3d3dad174f Mon Sep 17 00:00:00 2001 From: Wes Johnson Date: Thu, 3 May 2012 17:04:47 -0700 Subject: [PATCH 202/416] Revert "ignore eclipse's .project file" This reverts commit 21550f65868bf16ed650de3247a30e4da350ccfa. --- .gitignore | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitignore b/.gitignore index 2b1065c32bf..efa7555c55f 100644 --- a/.gitignore +++ b/.gitignore @@ -11,5 +11,3 @@ ansible*.xml .buildinfo objects.inv .doctrees - -.project From b06c4a1618a8efda82b7e63d483aa9a1e70b48e8 Mon Sep 17 00:00:00 2001 From: Wes Johnson Date: Thu, 3 May 2012 17:47:44 -0700 Subject: [PATCH 203/416] rewrite file's 'dest' argument Previously, there were two entries for 'dest'. I've combined them in a way that makes sense to me. This will be superfluous when 'path' is made. Ideally, I'd like to see 'path' have the bulk of the definition, and 'dest' to be an alias to 'path'. --- rst/modules.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/rst/modules.rst b/rst/modules.rst index 2c0ba42e2d2..6e7b7508d77 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -185,6 +185,7 @@ All parameters available to the file module are also available when running the *dest*: * absolute path to a file on the filesystem. +* alias for 'path'. Sets an absolute path to a file on the filesystem when used with 'state=file'. When used with 'state=link', sets the destination to create a symbolic link defined by 'src' key. *state*: From 77f33a70baa2ede6d7cbf6a48a750e8b7fd09ab7 Mon Sep 17 00:00:00 2001 From: Wes Johnson Date: Thu, 3 May 2012 18:01:11 -0700 Subject: [PATCH 204/416] remove old dest entries --- rst/modules.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index 6e7b7508d77..7856372e522 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -184,7 +184,6 @@ All parameters available to the file module are also available when running the *dest*: -* absolute path to a file on the filesystem. * alias for 'path'. Sets an absolute path to a file on the filesystem when used with 'state=file'. When used with 'state=link', sets the destination to create a symbolic link defined by 'src' key. *state*: @@ -207,10 +206,6 @@ All parameters available to the file module are also available when running the * path of the file to link to (applies only to 'link' state) -*dest*: - -* location where the symlink will be created for 'link' state, also an alias for 'path'. - *seuser*: * 'user' part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify '_default', it will use the 'user' portion of default context from the policy if available. From eadc78549fe716f601c085a4f4030c42a7b6a6c7 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 2 May 2012 00:55:54 -0400 Subject: [PATCH 205/416] Rebuild --- api.html | 4 ++-- examples.html | 17 +++++++-------- gettingstarted.html | 2 +- index.html | 7 +++---- moduledev.html | 16 ++++++++------- modules.html | 50 ++++++++++++++++++++------------------------- patterns.html | 4 ++-- playbooks.html | 34 ++++++++++++++++++------------ rst/modules.rst | 4 +--- searchindex.js | 2 +- 10 files changed, 71 insertions(+), 69 deletions(-) diff --git a/api.html b/api.html index 20d4dbbad49..41e5f0f00f1 100644 --- a/api.html +++ b/api.html @@ -263,7 +263,7 @@ command line tools ansible

    Often a user of a configuration management system will want to keep inventory in a different system. Frequent examples include LDAP, Cobbler, or a piece of expensive enterprisey CMDB software. Ansible easily supports all -of these options via an external interventory system.

    +of these options via an external inventory system.

    If you have a data store system where an Ansible external inventory script doesn’t already exist, this may require a little coding, but we have a Cobbler example in the main source tree – but it’s pretty simple, as we’ll explain below – that would provide a good starting point. Like with modules, it’s possible to build an external inventory script in any language, as long as it returns JSON.

    If you are familiar with Puppet terminology, this concept is basically the same as ‘external nodes’, with the slight difference that it also defines which hosts are managed.

    @@ -325,7 +325,7 @@ override any that have the same name.

    ansible webserver -m shell -a "echo {{ a }}"

    So in other words, you can use those variables in arguments/actions as well. You might use this to name -a conf.d file appropriately or something similar. Who knows.

    +a conf.d file appropriately or something similar. Who knows?

    So that’s the Cobbler integration support – using the cobbler script as an example, it should be trivial to adapt Ansible to pull inventory, as well as variable information, from any data source. If you create anything interesting, please share with the mailing list, and we can keep it in the source code tree for others to use.

    See also

    diff --git a/examples.html b/examples.html index 5a5780f7eb0..b5619762e16 100644 --- a/examples.html +++ b/examples.html @@ -201,8 +201,8 @@ ssh-add ~/.ssh/id_rsa.pub
    ansible atlanta -a "/usr/bin/foo" -u yourname

    If you want to run commands through sudo:

    -
    -
    ansible atlanta -a “/usr/bin/foo” -u yourname –sudo [–ask-sudo-pass]
    +
    ansible atlanta -a "/usr/bin/foo" -u yourname --sudo [--ask-sudo-pass]
    +

    Use –ask-sudo-pass (-K) if you are not using passwordless sudo.

    Ok, so those are basics. If you didn’t read about patterns and groups yet, go back and read The Inventory File, Patterns, and Groups.

    The -f 10 in the above specifies the usage of 10 simultaneous processes. Normally commands also take @@ -215,25 +215,26 @@ module looks like this:

    ansible raleigh -m shell -a 'echo $TERM'

    When running any command with the ansible “ad hoc” CLI (as opposed to playbooks), pay particular attention -to shell quoting rules, so the shell doesn’t eat a variable before it gets passed to Ansible. For example, u -using double vs single quotes would evaluate the variable on the box you were on.

    +to shell quoting rules, so the shell doesn’t eat a variable before it gets passed to Ansible. For example, +using double vs single quotes in the above example would evaluate the variable on the box you were on.

    So far we’ve been demoing simple command execution, but most ansible modules usually do not work like simple scripts. They make the remote system look like you state, and run the commands necessary to get it there. This is commonly referred to as ‘idempotence’, and is a core design goal of ansible. -However, we also recognize that running ad-hoc commands is equally imporant, so Ansible easily supports both.

    +However, we also recognize that running ad-hoc commands is equally important, so Ansible easily supports both.

    File Transfer & Templating

    Here’s another use case for the /usr/bin/ansible command line.

    Ansible can SCP lots of files to multiple machines in parallel, and optionally use them as template sources.

    -

    To just transfer a file directly to many different servers:

    +

    To transfer a file directly to many different servers:

    ansible atlanta -m copy -a "src=/etc/hosts dest=/tmp/hosts"

    To use templating, first run the setup module to put the template variables you would like to use on the remote host. Then use the template module to write the files using those templates.

    -

    Templates are written in Jinja2 format. Playbooks (covered elsewhere in the +

    Templates are written in Jinja2 format. +Playbooks (covered elsewhere in the documentation) will run the setup module for you, making this even simpler:

    ansible webservers -m setup    -a "favcolor=red ntp_server=192.168.1.1"
    @@ -281,7 +282,7 @@ ansible webservers -m file -a "dest=/srv/foo/b.txt mode=600 owner=mdehaan group=
     

    Ensure a package is not installed:

    ansible-webservers -m yum -a "pkg=acme state=removed"
    -

    Currently Ansible only has a module for managing packages with yum. You can install +

    Currently Ansible only has modules for managing packages with yum and apt. You can install for other packages for now using the command module or (better!) contribute a module for other package managers. Stop by the mailing list for info/details.

    diff --git a/gettingstarted.html b/gettingstarted.html index 6fced5ea074..5a26a60e77c 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -259,7 +259,7 @@ $ sudo rpm -Uvh ~/rpmbuild/RPMS/noarch/ansible-*.noarch.rpm

    Note that if you are tracking the upstream source (i.e. git), the RPM revision will not be bumped with every source code change. To get around this, you can use -rpm -Uvh with –force when RPM tells you the package is still at the +rpm -Uvh with --force when RPM tells you the package is still at the same version. This is perfectly safe to do.

    diff --git a/index.html b/index.html index 00be249855b..d476cea8d2b 100644 --- a/index.html +++ b/index.html @@ -207,8 +207,7 @@ server and daemonless, scaling potential is unlimited, and no resources are wast

    Deployment and Configuration, Unified

    -

    Other deployment (compared to config) oriented frameworks similarly cover deployment well but lack a strongly defined resource model and devolve into glorified remote scripts. Ansible playbooks – having been designed with this problem in mind – are good at both deployment & idempotent configuration, meaning you don’t have to spread your infrastructure management out between different tools (Puppet+Capistrano, Chef+Fabric, etc), and performing ordered steps between different classes of machines is no problem, yet our modules affect system state only when required – while avoiding the problem of fragile scripting that assumes certain starting -or ending states.

    +

    Other deployment (compared to config) oriented frameworks similarly cover deployment well but lack a strongly defined resource model and devolve into glorified remote scripts. Ansible playbooks – having been designed with this problem in mind – are good at both deployment & idempotent configuration, meaning you don’t have to spread your infrastructure management out between different tools (Puppet+Capistrano, Chef+Fabric, etc). Performing ordered steps between different classes of machines is no problem, yet our modules affect system state only when required – while avoiding the problem of fragile scripting that assumes certain starting or ending states.

    Ansible is also unique in other ways. Extending ansible does not require programming in any particular language – you can write Ansible Modules as idempotent scripts or programs that return simple JSON. Ansible is also pragmatic, so when you need to, it’s also trivially easy to just execute useful shell commands.

    Why use Ansible versus other configuration management tools? (Puppet, Chef, etc?) Ansible will have far less code, it will be (by extension) more correct, and it will be the @@ -345,7 +344,7 @@ Email:   Power Tricks

    diff --git a/moduledev.html b/moduledev.html index e16e40f0f9a..e0a7d01da27 100644 --- a/moduledev.html +++ b/moduledev.html @@ -186,7 +186,7 @@ s.parentNode.insertBefore(ga, s);

    Ansible modules are reusable units of magic that can be used by the Ansible API, or by the ansible or ansible-playbook programs.

    Modules can be written in any language and are found in the path specified -by ANSIBLE_LIBRARY_PATH or the –module-path command line option.

    +by ANSIBLE_LIBRARY_PATH or the --module-path command line option.

    Tutorial

    Let’s build a module to get and set the system time. For starters, let’s build @@ -226,7 +226,7 @@ chmod +x ansible/hacking/test-module

    {u'time': u'2012-03-14 22:13:48.539183'}
     
    -

    If you did not, you might have a typo in your module, so recheck it and try again

    +

    If you did not, you might have a typo in your module, so recheck it and try again.

    Reading Input

    @@ -240,7 +240,7 @@ Here we’ll do some basic parsing to treat the input as key=value.

    If no time parameter is set, we’ll just leave the time as is and return the current time.

    Let’s look at the code. Read the comments as we’ll explain as we go. Note that this -highly verbose because it’s intended as an educational example. You can write modules +is highly verbose because it’s intended as an educational example. You can write modules a lot shorter than this:

    #!/usr/bin/python
     
    @@ -349,10 +349,12 @@ json isn’t in the Python standard library until 2.5.:

    Because the output is supposed to be valid JSON. Except that’s not quite true, but we’ll get to that later.

    -

    Further, modules must not output anything on stderr, even if the JSON returned -out stdout is valid. This is due to the internals of our SSH library, more or less.

    +

    Modules must not output anything on standard error, because the system will merge +standard out with standard error and prevent the JSON from parsing. Capturing standard +error and returning it as a variable in the JSON on standard out is fine, and is, in fact, +how the command module is implemented.

    If a module returns stderr or otherwise fails to produce valid JSON, the actual output -will still be shown in Ansible, however, but the command will not succeed.

    +will still be shown in Ansible, but the command will not succeed.

    Always use the hacking/test-module script when developing modules and it will warn you about these kind of things.

    @@ -361,7 +363,7 @@ you about these kind of things.

    As a reminder from the example code above, here are some basic conventions and guidelines:

      -
    • Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file
    • +
    • Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file.
    • Modules must be self contained in one file to be auto-transferred by ansible
    • If packaging modules in an RPM, they only need to be installed on the control machine and should be dropped into /usr/share/ansible. This is entirely optional.
    • Modules should return JSON or key=value results all on one line. JSON is best if you can do JSON. All return types must be hashes (dictionaries) although they can be nested.
    • diff --git a/modules.html b/modules.html index ad26645960d..18bf2026d7f 100644 --- a/modules.html +++ b/modules.html @@ -214,7 +214,7 @@ of the command you want to run.

      All modules technically return JSON format data, though if you are using the command line or playbooks, you don’t really need to know much about that. If you’re writing your own module, you care, and this means you do -not have to write modules in any particular language – you get tho choose.

      +not have to write modules in any particular language – you get to choose.

      Most modules other than command are idempotent, meaning they will seek to avoid changes to the system unless a change needs to be made. When using Ansible playbooks, these modules can trigger ‘change events’. Unless otherwise @@ -233,7 +233,7 @@ noted, any given module does support change hooks.

    update-cache:

      -
    • Whether apt cache must be updated prior operation. Optional, and can be +
    • Whether the apt cache must be updated prior to operation. Optional, and can be ‘yes’, or ‘no’. The default is ‘no’. This can be done as the part of a package operation or as a seperate step.
    @@ -269,7 +269,7 @@ operations like “<”, “>”, “|”, and  paths to commands must be fully qualified.

    This module does not support change hooks and returns the return code from the program as well as timing information about how long the -command was running for.

    +command was running.

    Example action from Ansible Playbooks:

    command /sbin/shutdown -t now
    @@ -334,7 +334,7 @@ All parameters available to the file module are also available when running the template modules.

    dest:

      -
    • absolute path to a file on the filesystem.
    • +
    • alias for ‘path’. Sets an absolute path to a file on the filesystem when used with ‘state=file’. When used with ‘state=link’, sets the destination to create a symbolic link defined by ‘src’ key.

    state:

      @@ -346,7 +346,7 @@ All parameters available to the file module are also available when running the

    owner:

      -
    • name of user that should own the file or directory, as would be given to chown.
    • +
    • name of user that should own the file or directory, as would be given to chown

    group:

    group:

      -
    • Optionally sets the user’s primary group, takes a group name.
    • +
    • Optionally sets the user’s primary group, takes a group name

    groups:

      -
    • Put the user in the specified groups, takes comma delimited group names.
    • +
    • Put the user in the specified groups, takes comma delimited group names

    append:

      -
    • If true, will only add additional groups to the user listed in ‘groups’, rather than making the user only be in those specified groups.
    • +
    • If true, will only add additional groups to the user listed in ‘groups’, rather than making the user only be in those specified groups

    shell:

      -
    • Optionally sets the user’s shell.
    • +
    • Optionally sets the user’s shell

    createhome:

      @@ -644,11 +638,11 @@ be a relative or absolute path.

    force:

      -
    • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for –force is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.
    • +
    • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for --force is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.

    remove:

      -
    • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for –remove is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.
    • +
    • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for --remove is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.

    Example action from Ansible Playbooks:

    user name=mdehaan comment=awesome passwd=awWxVV.JvmdHw createhome=yes
    diff --git a/patterns.html b/patterns.html
    index 972b904d20a..fdc1ab7d176 100644
    --- a/patterns.html
    +++ b/patterns.html
    @@ -196,7 +196,7 @@ Ansible’s inventory file, which defaults to /etc/ansible/hosts.

    three.example.com
    -

    The things in brackets are group names, you don’t have to have them, +

    The things in brackets are group names. You don’t have to have them, but they are useful.

    If you have hosts that run on non-standard SSH ports you can put the port number after the hostname with a colon. This requires Ansible 0.3 (integration branch):

    @@ -285,7 +285,7 @@ style file with a YAML one.:

    vars: - asdf: 1234
    -

    Tip: Be sure to start your YAML file with the YAML record designator “—”.

    +

    Tip: Be sure to start your YAML file with the YAML record designator ---.

    NOTE: variables specified in playbooks will override variables specified in the host file. Further, if a host is in multiple groups, currently, the variables set by the last loaded group will win over variables set in other diff --git a/playbooks.html b/playbooks.html index de710ead19c..2d9bb580fff 100644 --- a/playbooks.html +++ b/playbooks.html @@ -157,7 +157,7 @@ s.parentNode.insertBefore(ga, s);

  • Power Tricks
  • -

    If you need to specify a password to sudo, run ansible-playbook with –ask-sudo-pass (-K). +

    If you need to specify a password to sudo, run ansible-playbook with --ask-sudo-pass (-K). If you run a sudo playbook and the playbook seems to hang, it’s probably stuck at the sudo prompt. Just Control-C to kill it and run it again with -K.

    @@ -308,12 +308,12 @@ before moving on to the next task.

    playbook. If things fail, simply correct the playbook file and rerun.

    The goal of each task is to execute a module, with very specific arguments. Variables, as mentioned above, can be used in arguments to modules.

    -

    Modules other than command are ‘idempotent’, meaning if you run them +

    Modules other than command and shell are ‘idempotent’, meaning if you run them again, they will make the changes they are told to make to bring the system to the desired state. This makes it very safe to rerun the same playbook multiple times. They won’t change things unless they have to change things.

    -

    Command will actually rerun the same command again, +

    The command and shell modules will actually rerun the same command again, which is totally ok if the command is something like ‘chmod’ or ‘setsebool’, etc.

    Every task must have a name, which is included in the output from @@ -325,9 +325,9 @@ the service module takes key=value arguments:

    - name: make sure apache is running action: service name=httpd state=running
    -

    The command module is the one module that just takes a list -of arguments, and doesn’t use the key=value form. This makes -it work just like you would expect. Simple:

    +

    The command and shell modules are the one modules that just takes a list +of arguments, and don’t use the key=value form. This makes +them work just like you would expect. Simple:

    tasks:
       - name: disable selinux
         action: command /sbin/setenforce 0
    @@ -335,7 +335,7 @@ it work just like you would expect. Simple:

    Variables can be used in action lines. Suppose you defined a variable called ‘vhost’ in the ‘vars’ section, you could do this:

    tasks:
    -  - name: make a directory
    +  - name: create a virtual host file for $vhost
         action: template src=somefile.j2 dest=/etc/httpd/conf.d/$vhost

    Those same variables are usable in templates, which we’ll get to later.

    @@ -344,7 +344,7 @@ a variable called ‘vhost’ in the ‘vars’ section, you cou

    Running Operations On Change

    As we’ve mentioned, nearly all modules are written to be ‘idempotent’ and can relay when -they have affected a change on the remote system. Playbooks recognize this and +they have made a change on the remote system. Playbooks recognize this and have a basic event system that can be used to respond to change.

    These ‘notify’ actions are triggered at the end of each ‘play’ in a playbook, and trigger only once each. For instance, multiple resources may indicate @@ -406,7 +406,7 @@ within a template or even an action line:

    want to reference data from must be included in either the current play or any previous play.

    -

    External Variables And Prompted or Sensitive Data

    +

    External Variables and Prompted or Sensitive Data

    It’s a great idea to keep your playbooks under source control, but you may wish to make the playbook source public while keeping certain important variables private. Similarly, sometimes you may just @@ -492,6 +492,8 @@ but it is easily handled with a minimum of syntax in an Ansible Playbook:

    - name: make sure apache is running action: service name=$apache state=running
    +

    Note that a variable ($facter_operatingsystem) is being interpolated into the list of +filenames being defined for vars_files.

    As a reminder, the various YAML files contain just keys and values:

    ---
     # for vars/CentOS.yml
    @@ -558,7 +560,7 @@ includes.  This may be implemented in a later release.

    Includes can also be used in the ‘handlers’ section, for instance, if you want to define how to restart apache, you only have to do that once for all -of your playbooks. You might make a notifiers.yaml that looked like:

    +of your playbooks. You might make a handlers.yml that looks like:

    ----
     # this might be in a file like handlers/handlers.yml
     - name: restart apache
    @@ -618,12 +620,18 @@ actually one of the things playbooks were invented to do.

    - testuser1 - testuser2
    +

    The above would be the equivalent of:

    +
    - name: add user testuser1
    +  action: user name=testuser1 state=present groups=wheel
    +- name: add user testuser2
    +  action: user name=testuser2 state=present groups=wheel
    +

    Asynchronous Actions and Polling

    By default tasks in playbooks block, meaning the connections stay open until the task is done on each node. If executing playbooks with -a small parallelism value (aka –forks), you may wish that long +a small parallelism value (aka --forks), you may wish that long running operations can go faster. The easiest way to do this is to kick them off all at once and then poll until they are done.

    You will also want to use asynchronous mode on very long running @@ -665,7 +673,7 @@ commands later in the playbook against those same resources.

    Note

    -

    Using a higher value for –forks will result in kicking off asynchronous +

    Using a higher value for --forks will result in kicking off asynchronous tasks even faster. This also increases the efficiency of polling.

    diff --git a/rst/modules.rst b/rst/modules.rst index 3c84ed5a2b6..03ab892342b 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -427,9 +427,7 @@ on your remote systems. *variablename*: -* Arbitrary variable names, which must be a mix of alphanumeric characters and -underscores, can also be defined. Setting a variable creates a -``key=value`` pair in the JSON file for use in templating. +* Arbitrary variable names, which must be a mix of alphanumeric characters and underscores, can also be defined. Setting a variable creates a ``key=value`` pair in the JSON file for use in templating. Example action from Ansible :doc:`playbooks`:: diff --git a/searchindex.js b/searchindex.js index 9bbda5198fe..ec9548cef82 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3,6],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[4,5,6,7,8,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[8,2,5,4,3],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,daemonless:2,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,3,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],tho:3,client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],width:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,submit:[2,4],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,5,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[8,5,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:[8,5],worri:4,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:8,improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,comparison:[2,4],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,1,4,5,6,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,3,4,5,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,previou:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],behavior:[7,3],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:9,othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,1,6,7,8,9],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],dbserver:[7,6],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:3,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],great:[2,4,5,6],didn:[4,9],hypervisor:3,technolog:2,later:[0,2,3,5,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,src:[2,8,3,6,9],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,5,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,4,3,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,5,8,3,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:1,explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,6],baisc:[],which:[0,1,2,4,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],choos:[3,6],undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,5,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:4,transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,implement:[8,4,5,6],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:3,other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[8,7,4,6,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[8,2,5,4,3],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,daemonless:2,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],tho:[],client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:8,worri:4,destin:3,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1,7],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,2,3,5,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,3,5,6,8,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:[3,1],explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],interpol:6,undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],captur:5,linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 7f5c1b8f02edec1f75f9844cb9510522da795c51 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sun, 6 May 2012 15:05:42 -0400 Subject: [PATCH 206/416] Temporary note about YAML support in 0.4, in case anyone tries it, coming back very very soon! --- YAMLSyntax.html | 2 +- api.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 4 ++-- moduledev.html | 2 +- modules.html | 2 +- patterns.html | 13 ++++++++----- playbooks.html | 2 +- rst/patterns.rst | 9 ++++++--- search.html | 2 +- searchindex.js | 2 +- 14 files changed, 27 insertions(+), 21 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 80d5cedd4d4..c1154010d96 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -273,7 +273,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/api.html b/api.html index 41e5f0f00f1..3ee2eb94747 100644 --- a/api.html +++ b/api.html @@ -357,7 +357,7 @@ a conf.d file appropriately or something similar. Who knows?

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/examples.html b/examples.html index b5619762e16..94f66b4568a 100644 --- a/examples.html +++ b/examples.html @@ -373,7 +373,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/faq.html b/faq.html index e53dc57b087..8a8c26ee8d7 100644 --- a/faq.html +++ b/faq.html @@ -379,7 +379,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/genindex.html b/genindex.html index 7e6ee1841de..81d090ee708 100644 --- a/genindex.html +++ b/genindex.html @@ -188,7 +188,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 5a26a60e77c..03c2b4f6962 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -341,7 +341,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/index.html b/index.html index d476cea8d2b..7b6de04e35d 100644 --- a/index.html +++ b/index.html @@ -294,7 +294,7 @@ Email:   The Inventory File, Patterns, and Groups
  • Command Line Examples @@ -243,9 +243,12 @@ wildcards:

  • Easy enough. See Command Line Examples and then Playbooks for how to do things to selected hosts.

    -
    -

    Advanced Inventory File Format

    -

    (This features requires the integration branch of Ansible, soon to be release 0.3)

    +
    +

    YAML Inventory Format

    +

    (temporary message: This features requires the master branch of Ansible, 0.3, and is currently +disabled on 0.4 (devel), pending some upgrades. It will be back in 0.4 soon, along with the ability +to assign variables more simply, even without the YAML inventory format, which will result in this +section being rewritten and clarified)

    Once you read about playbooks you’ll quickly see how useful it will be to assign particular variables to particular hosts and groups of hosts. While the default INI-style host format doesn’t allow this, switching to the YAML inventory format can add some compelling capabilities. Just replace your INI @@ -321,7 +324,7 @@ groups. This behavior may be refined in future releases.

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/playbooks.html b/playbooks.html index 2d9bb580fff..ec5e79860d2 100644 --- a/playbooks.html +++ b/playbooks.html @@ -719,7 +719,7 @@ Let’s run a playbook using a parallelism level of 10:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/rst/patterns.rst b/rst/patterns.rst index 4158e0740fe..56e9fb4bba8 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -82,10 +82,13 @@ It's also ok to mix wildcard patterns and groups at the same time:: Easy enough. See :doc:`examples` and then :doc:`playbooks` for how to do things to selected hosts. -Advanced Inventory File Format -++++++++++++++++++++++++++++++ +YAML Inventory Format ++++++++++++++++++++++ -(This features requires the integration branch of Ansible, soon to be release 0.3) +(temporary message: This features requires the master branch of Ansible, 0.3, and is currently +disabled on 0.4 (devel), pending some upgrades. It will be back in 0.4 soon, along with the ability +to assign variables more simply, even without the YAML inventory format, which will result in this +section being rewritten and clarified) Once you read about playbooks you'll quickly see how useful it will be to assign particular variables to particular hosts and groups of hosts. While the default INI-style host format doesn't allow this, diff --git a/search.html b/search.html index 2d6a057d517..81f4a58c648 100644 --- a/search.html +++ b/search.html @@ -205,7 +205,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 02, 2012.
    + Last updated on May 06, 2012.

    diff --git a/searchindex.js b/searchindex.js index ec9548cef82..859c7b58412 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[8,7,4,6,9],thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[8,2,5,4,3],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,daemonless:2,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,7,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],tho:[],client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:8,worri:4,destin:3,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1,7],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,2,4,6,7],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1,7],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,2,3,5,6,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,3,5,6,8,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:[3,1],explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],interpol:6,undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:8,host2:8,host1:8,smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],captur:5,linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,7,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],pattern_goes_her:7,replac:7,"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:7,top:[4,5,6],sometim:[3,6],master:[7,8],too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,7,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[7,5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,2,3,5,6,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:8,worri:4,destin:3,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[7,4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:[7,4],follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:7,rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,interpol:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[7,3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:7,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[9,0,4,6,7],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1,7],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[7,3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:7,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:7,insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3,7],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:[7,6],ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From f0d9f9652c845b70a62cec002bcf77251ad68dd8 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sun, 6 May 2012 17:13:57 -0400 Subject: [PATCH 207/416] Document inventory format upgrades in 0.4 --- index.html | 5 ++- patterns.html | 81 +++++++++++++++++++++++++++++++++++------------- rst/patterns.rst | 78 ++++++++++++++++++++++++++++++++++------------ searchindex.js | 2 +- 4 files changed, 123 insertions(+), 43 deletions(-) diff --git a/index.html b/index.html index 7b6de04e35d..80bf1103d07 100644 --- a/index.html +++ b/index.html @@ -292,8 +292,11 @@ Email:   
  • The Inventory File, Patterns, and Groups
  • diff --git a/patterns.html b/patterns.html index a95c22a0a32..d521f216fe3 100644 --- a/patterns.html +++ b/patterns.html @@ -146,8 +146,11 @@ s.parentNode.insertBefore(ga, s); class="dropdown-toggle">Page
    • The Inventory File, Patterns, and Groups
    • @@ -181,9 +184,9 @@ s.parentNode.insertBefore(ga, s);

      Ansible works against multiple systems in your infrastructure at the same time. It does this by selecting portions of systems listed in Ansible’s inventory file, which defaults to /etc/ansible/hosts.

      -
      -

      Basic Inventory File Format

      -

      The format for /etc/ansible/hosts looks like this:

      +
      +

      Hosts and Groups

      +

      The format for /etc/ansible/hosts is an INI format and looks like this:

      mail.example.com
       
       [webservers]
      @@ -199,9 +202,9 @@ Ansible’s inventory file, which defaults to /etc/ansible/hosts.

      The things in brackets are group names. You don’t have to have them, but they are useful.

      If you have hosts that run on non-standard SSH ports you can put the port number -after the hostname with a colon. This requires Ansible 0.3 (integration branch):

      -
      four.example.com:5309
      -
      +after the hostname with a colon.

      +
      +
      four.example.com:5309

      Selecting Targets

      @@ -211,7 +214,7 @@ after the hostname with a colon. This requires Ansible 0.3 (integration branch)

      Such as:

      ansible webservers -m service -a "name=httpd state=restarted"
      -

      Within Playbooks, these patterns can also be used, for even greater purposes.

      +

      Within Playbooks, these patterns can be used for even greater purposes.

      Anyway, to use Ansible, you’ll first need to know how to tell Ansible which hosts in your inventory file to talk to. This is done by designating particular host names or groups of hosts.

      The following patterns target all hosts in the inventory file:

      @@ -239,20 +242,60 @@ wildcards:

      Note

      -

      It is not possible to target a host not in the inventory file. This is a safety feature.

      +

      It is not possible to target a host not in the inventory file, unless using playbooks with –override-hosts. More on that later. This is a safety feature.

      Easy enough. See Command Line Examples and then Playbooks for how to do things to selected hosts.

      +
      +

      Host Variables

      +

      Using the 0.4 branch of Ansible, it is easy to assign variables to hosts that will be used +later in playbooks:

      +
      [atlanta]
      +host1 http_port=80 maxRequestsPerChild=808
      +host2 http_port=303 maxRequestsPerChild=909
      +
      +
      +
      +

      Group Variables

      +

      Using the 0.4 branch of Ansible, variables can also be applied to an entire group at once:

      +
      [atlanta]
      +host1
      +host2
      +
      +[atlanta:vars]
      +ntp_server=ntp.atlanta.example.com
      +proxy=proxy.atlanta.example.com
      +
      +
      +
      +

      Groups of Groups

      +

      Using the 0.4 branch of Ansible, it is possible to make groups of groups:

      +
      [atlanta]
      +host1
      +host2
      +
      +[raleigh]
      +host2
      +host3
      +
      +[southeast:children]
      +alpha
      +beta
      +
      +[southeast:vars]
      +some_server=foo.southeast.example.com
      +
      +[usa:children]
      +southeast
      +northeast
      +southwest
      +southeast
      +
      +

      YAML Inventory Format

      -

      (temporary message: This features requires the master branch of Ansible, 0.3, and is currently -disabled on 0.4 (devel), pending some upgrades. It will be back in 0.4 soon, along with the ability -to assign variables more simply, even without the YAML inventory format, which will result in this -section being rewritten and clarified)

      -

      Once you read about playbooks you’ll quickly see how useful it will be to assign particular variables -to particular hosts and groups of hosts. While the default INI-style host format doesn’t allow this, -switching to the YAML inventory format can add some compelling capabilities. Just replace your INI -style file with a YAML one.:

      +

      For people using 0.3, or those that prefer to use it, the inventory file can also be expressed in +YAML:

      ---
       
       # some ungrouped hosts, either use the short string form or the "host: " prefix
      @@ -289,10 +332,6 @@ style file with a YAML one.:

      - asdf: 1234

      Tip: Be sure to start your YAML file with the YAML record designator ---.

      -

      NOTE: variables specified in playbooks will override variables specified -in the host file. Further, if a host is in multiple groups, currently, the -variables set by the last loaded group will win over variables set in other -groups. This behavior may be refined in future releases.

      See also

      diff --git a/rst/patterns.rst b/rst/patterns.rst index 56e9fb4bba8..dced3b8d317 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -9,10 +9,10 @@ Ansible's inventory file, which defaults to /etc/ansible/hosts. .. _inventoryformat: -Basic Inventory File Format -+++++++++++++++++++++++++++ +Hosts and Groups +++++++++++++++++ -The format for /etc/ansible/hosts looks like this:: +The format for /etc/ansible/hosts is an INI format and looks like this:: mail.example.com @@ -29,7 +29,7 @@ The things in brackets are group names. You don't have to have them, but they are useful. If you have hosts that run on non-standard SSH ports you can put the port number -after the hostname with a colon. This requires Ansible 0.3 (integration branch):: +after the hostname with a colon. four.example.com:5309 @@ -44,7 +44,7 @@ Such as:: ansible webservers -m service -a "name=httpd state=restarted" -Within :doc:`playbooks`, these patterns can also be used, for even greater purposes. +Within :doc:`playbooks`, these patterns can be used for even greater purposes. Anyway, to use Ansible, you'll first need to know how to tell Ansible which hosts in your inventory file to talk to. This is done by designating particular host names or groups of hosts. @@ -78,22 +78,65 @@ It's also ok to mix wildcard patterns and groups at the same time:: one*.com:dbservers .. note:: - It is not possible to target a host not in the inventory file. This is a safety feature. + It is not possible to target a host not in the inventory file, unless using playbooks with --override-hosts. More on that later. This is a safety feature. Easy enough. See :doc:`examples` and then :doc:`playbooks` for how to do things to selected hosts. +Host Variables +++++++++++++++ + +Using the 0.4 branch of Ansible, it is easy to assign variables to hosts that will be used +later in playbooks:: + + [atlanta] + host1 http_port=80 maxRequestsPerChild=808 + host2 http_port=303 maxRequestsPerChild=909 + + +Group Variables ++++++++++++++++ + +Using the 0.4 branch of Ansible, variables can also be applied to an entire group at once:: + + [atlanta] + host1 + host2 + + [atlanta:vars] + ntp_server=ntp.atlanta.example.com + proxy=proxy.atlanta.example.com + +Groups of Groups +++++++++++++++++ + +Using the 0.4 branch of Ansible, it is possible to make groups of groups:: + + [atlanta] + host1 + host2 + + [raleigh] + host2 + host3 + + [southeast:children] + alpha + beta + + [southeast:vars] + some_server=foo.southeast.example.com + + [usa:children] + southeast + northeast + southwest + southeast + YAML Inventory Format +++++++++++++++++++++ -(temporary message: This features requires the master branch of Ansible, 0.3, and is currently -disabled on 0.4 (devel), pending some upgrades. It will be back in 0.4 soon, along with the ability -to assign variables more simply, even without the YAML inventory format, which will result in this -section being rewritten and clarified) - -Once you read about playbooks you'll quickly see how useful it will be to assign particular variables -to particular hosts and groups of hosts. While the default INI-style host format doesn't allow this, -switching to the YAML inventory format can add some compelling capabilities. Just replace your INI -style file with a YAML one.:: +For people using 0.3, or those that prefer to use it, the inventory file can also be expressed in +YAML:: --- @@ -132,11 +175,6 @@ style file with a YAML one.:: Tip: Be sure to start your YAML file with the YAML record designator ``---``. -NOTE: variables specified in playbooks will override variables specified -in the host file. Further, if a host is in multiple groups, currently, the -variables set by the last loaded group will win over variables set in other -groups. This behavior may be refined in future releases. - .. seealso:: :doc:`examples` diff --git a/searchindex.js b/searchindex.js index 859c7b58412..d1de146d4c3 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:[7,3],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:7,top:[4,5,6],sometim:[3,6],master:[7,8],too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,7,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9,7],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:7,tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[3,4,5,6,7,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[7,5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,7,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":7,mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,7,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],pair:[5,3,1],later:[0,2,3,5,6,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:7,repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,7,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[8,4,3,6,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:8,worri:4,destin:3,myapp:9,http_port:6,develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:7,fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[7,4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,7,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:7,orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:[7,4],follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1,7],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:[7,5],pend:7,rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,interpol:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[2,7],delimit:3,thor:7,context:3,whole:4,load:7,simpli:[7,3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6,7],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:7,user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[9,0,4,6,7],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1,7],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:2,nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:7,app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],commun:[8,4],doubl:9,upgrad:[7,3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,7,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,8,5,6,1],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,7,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:7,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:7,insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,2,4,3,6,7],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3,7],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3,7],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,7,8,9],host4:8,host3:8,host2:8,host1:8,smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:[7,6],ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:7,hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,7,8,9],futur:[0,2,3,4,5,7],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,children:7,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],interpol:6,ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,behavior:3,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[5,4,3,6,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9,7],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:7,pair:[5,3,1],later:[0,2,3,5,6,7,9],meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:8,worri:4,destin:3,myapp:9,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:[7,3],cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:2,delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[7,3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:[2,7],nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],northeast:7,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:[],mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,some_serv:7,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,stuck:6,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,"long":[2,4,3,6,8,9],ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[7,4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[7,4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,8,9],host4:8,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,didn:[4,9],captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:[],hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[0,5,4,3,2],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From e485aec3552dbff0646b6d7b906dd79fd4e90aef Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sun, 6 May 2012 17:14:21 -0400 Subject: [PATCH 208/416] Rebuild --- searchindex.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/searchindex.js b/searchindex.js index d1de146d4c3..7970a8f84a5 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,children:7,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],interpol:6,ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,behavior:3,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[5,4,3,6,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9,7],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:7,pair:[5,3,1],later:[0,2,3,5,6,7,9],meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:8,worri:4,destin:3,myapp:9,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:[7,3],cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:2,delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[7,3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:[2,7],nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],northeast:7,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:[],mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,some_serv:7,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,stuck:6,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,"long":[2,4,3,6,8,9],ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[7,4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[7,4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,8,9],host4:8,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,didn:[4,9],captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:[],hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[0,5,4,3,2],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[8,7,4,6,9],thunder:4,scp:9,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:3,eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[8,2,5,4,3],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,daemonless:2,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],tho:[],client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[5,4,3,6,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9,7],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:7,pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:8,worri:4,destin:3,myapp:9,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,children:7,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:[7,3],bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:2,delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[7,3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:[2,7],nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],northeast:7,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,2,3,5,6,7,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:[],mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,pitfal:[2,5],out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,3,5,6,8,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:[3,1],explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[7,4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[7,4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],interpol:6,undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],captur:5,linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],some_serv:7,hang:6,merg:[4,5],transfer:[2,5,9],pattern_goes_her:7,replac:[],"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[0,5,4,3,2],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 2d75199d83dc92cd138cf25ec4ceea60da40f367 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sun, 6 May 2012 17:16:42 -0400 Subject: [PATCH 209/416] Fix doc error about nested groups --- patterns.html | 4 ++-- rst/patterns.rst | 4 ++-- searchindex.js | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/patterns.html b/patterns.html index d521f216fe3..3734bae5005 100644 --- a/patterns.html +++ b/patterns.html @@ -279,8 +279,8 @@ host2 host3 [southeast:children] -alpha -beta +atlanta +raleigh [southeast:vars] some_server=foo.southeast.example.com diff --git a/rst/patterns.rst b/rst/patterns.rst index dced3b8d317..a0c4f3d4c29 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -120,8 +120,8 @@ Using the 0.4 branch of Ansible, it is possible to make groups of groups:: host3 [southeast:children] - alpha - beta + atlanta + raleigh [southeast:vars] some_server=foo.southeast.example.com diff --git a/searchindex.js b/searchindex.js index 7970a8f84a5..077f01eac6a 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,consider:8,ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],even:[8,7,4,6,9],thunder:4,scp:9,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,behavior:3,eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,dehaan:2,overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],fall:6,orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,written:[0,2,5,6,8,9],ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,ansible_form_factor:3,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,unlik:[4,6],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,contact:[8,0,4,3],blue:6,though:[8,2,5,4,3],deleg:4,regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],"public":6,bad:5,respond:6,daemonless:2,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],themselv:6,hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],add:[0,4,3,6,8,9],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],tho:[],client:2,thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],deal:5,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],condit:[2,6],foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,surround:9,simul:6,produc:5,bounc:[3,6],contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],stuck:6,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],altogeth:2,"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,featur:[7,0,4,6,2],"abstract":4,fedoraproject:[],cobbler:[8,2,4],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],somelog:3,word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[5,4,3,6,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9,7],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,accept:[5,3],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,facter_hostnam:[6,9],chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,favorit:[2,6],predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],xyz:3,non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,"long":[2,4,3,6,8,9],oppos:9,open:[4,6],somegroup:3,given:[4,3,9],unlink:3,convent:[2,8,5],width:2,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],forc:[0,3],ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:7,pair:[5,3,1],adopt:4,meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],rotat:6,xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,ansible_ssh_host_key_dsa_publ:3,innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],colon:[7,6],webapp:[4,9],poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],exist:[2,8,3,6,9],stdout:8,worri:4,destin:3,myapp:9,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],found:[8,5,6],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,wolf:8,industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,fast:2,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],event:[5,4,3,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],forget:[6,9],selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,children:7,nors:7,program:[2,1,3,4,5,6,9],mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],failur:[8,4,5],veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],what:[0,1,2,3,4,5,6,8],sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],method:8,hasn:4,full:[2,6],hash:[8,5,1],gif:2,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],demo:9,taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],templat:[2,4,3,6,8,9],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,args_data:5,associ:1,"short":[2,4,6,7],help:[0,1,2,3,4,5,6,7,8,9],xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,instruct:[0,4,2],easili:[0,2,4,6,8,9],achiev:5,fulli:[0,3],only_if:6,ansible_kernel:3,subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,orient:[2,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,well:[0,2,4,3,6,8,9],packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,also:[0,1,2,3,4,5,6,7,8,9],append:3,brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:[7,3],bug:[0,2],filesystem:[3,6],cover:[8,2,4,9],clojur:5,clean:4,usual:9,awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:2,delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,host4:8,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,convert:5,gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],abov:[8,5,6,9],error:[4,5,6],loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],centos6:8,async_wrapp:5,appli:[7,3,6],input:[2,5,6],build:[8,0,4,5],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],lose:9,step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,ansible_python_vers:3,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,transport:[2,4],peopl:[2,7],nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],id_rsa:[0,9],michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],folk:5,turn:[2,4,5,6],compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],northeast:7,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],great:[2,4,5,6],hypervisor:3,technolog:2,later:[0,2,3,5,6,7,9],typic:[4,9],control:[2,3,4,5,6,8,9],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],few:6,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],sbin:[3,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,employe:[4,1],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,srv:[8,3,6,9],panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,drop:5,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:[],mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,pitfal:[2,5],out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],appl:1,termin:9,"final":3,shell:[2,3,5,6,8,9],hassl:2,rst:[],exactli:3,richer:4,structur:[],charact:[3,1],explicit:3,sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],cfengin:4,border:[],paramiko:0,mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[7,4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],state:[2,3,4,5,6,7,9],progress:0,email:2,kei:[0,1,2,3,4,5,6,8],job:[9,1],entir:[7,4,5,6],homebrew:0,"2pm":2,addit:[2,5,8,3,6],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,evalu:[6,9],platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],virt:[2,3],site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],inc:3,ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],seth:4,exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],interpol:6,undefin:3,latest:[0,3,6,9],lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],host5:8,cleanup:6,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,branch:7,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],cellspac:[],async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,revers:[2,3],captur:5,linux:[0,4,3,2],"export":0,home:3,librari:[5,3,1],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],about:[0,1,2,3,4,5,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],some_serv:7,hang:6,merg:[4,5],transfer:[2,5,9],pattern_goes_her:7,replac:[],"var":[2,3,6,7],individu:7,simplejson:[0,5],subscrib:2,continu:5,eat:9,succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],pin:3,is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,probabl:[0,4,5,6],detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[0,5,4,3,2],rememb:9,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,children:7,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:3,eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[5,4,3,6,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9,7],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:[],pair:[5,3,1],later:[0,2,3,5,6,7,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:8,worri:4,destin:3,myapp:9,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,interpol:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:2,delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[7,3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:[2,7],nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],northeast:7,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:[],mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,some_serv:7,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[7,4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[7,4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,8,9],host4:8,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:[],hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[0,5,4,3,2],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From fc7bb858e48205e3f17ea57959a9f55784d228fe Mon Sep 17 00:00:00 2001 From: Matt Coddington Date: Fri, 11 May 2012 17:20:25 -0400 Subject: [PATCH 210/416] Clarifications/fixes for executable inventory examples --- rst/api.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rst/api.rst b/rst/api.rst index 4fdbaa46429..7ee739d544b 100644 --- a/rst/api.rst +++ b/rst/api.rst @@ -97,7 +97,7 @@ If you are familiar with Puppet terminology, this concept is basically the same Script Conventions `````````````````` -When the external node script is called with no arguments, the script must return a JSON hash/dictionary of all the groups to be managed, with a list of each host/IP as the value for each hash/dictionary element, like so:: +When the external node script is called with the single argument '--list', the script must return a JSON hash/dictionary of all the groups to be managed, with a list of each host/IP as the value for each hash/dictionary element, like so:: { 'databases' : [ 'host1.example.com', 'host2.example.com' ], @@ -105,8 +105,8 @@ When the external node script is called with no arguments, the script must retur 'atlanta' : [ 'host1.example.com', 'host4.example.com', 'host5.example.com' ] } -When called with a single argument, the name of a host from above, the script must return either an empty JSON -hash/dictionary, or a list of key/value variables to make available to templates. Returning variables is optional, +When called with the arguments '--host ' (where is a host from above), the script must return either an empty JSON +hash/dictionary, or a list of key/value variables to make available to templates or playbooks. Returning variables is optional, if the script does not wish to do this, returning an empty hash/dictionary is the way to go:: { From 1051d8f5caa8786c4e711ebe50ee3a4b009c3d1b Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 00:42:26 -0400 Subject: [PATCH 211/416] Update git module docs --- rst/modules.rst | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/rst/modules.rst b/rst/modules.rst index 03ab892342b..f710dfd8311 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -244,7 +244,7 @@ Deploys software (or files) from git checkouts. *repo*: -* git or http protocol address of the repo to checkout. +* git, ssh, or http protocol address of the git repo to checkout. *dest*: @@ -255,6 +255,10 @@ Deploys software (or files) from git checkouts. * What version to check out -- either the git SHA, the literal string ``HEAD``, or a tag name. +*branch*: + +* (new in 0.4) Which branch name to checkout. Defaults to 'master'. + Example action from Ansible :doc:`playbooks`:: git repo=git://foosball.example.org/path/to/repo.git dest=/srv/checkout version=release-0.22 @@ -325,6 +329,11 @@ Controls services on remote machines. Started/stopped are idempotent actions that will not run commands unless necessary. ``restarted`` will always bounce the service. +*enabled*: + +* (new in 0.4) Whether the service should start on boot. Either 'yes' or 'no'. + Uses chkconfig or updates-rc.d as appropriate. + *name*: * The name of the service. From 0151ed4508499ca558f8a4df0eb54a5c27e1a354 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 00:46:12 -0400 Subject: [PATCH 212/416] misc clarifications --- rst/modules.rst | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index f710dfd8311..0ac5ea45e5b 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -44,7 +44,8 @@ Manages apt-packages (such as for Debian/Ubuntu). *pkg*: -* A package name or package specifier with version, like foo=1.0 +* A package name or package specifier with version, like `foo`, or `foo=1.0` to +install a specific version of the foo package. *state*: @@ -624,7 +625,8 @@ Will install, upgrade, remove, and list packages with the yum package manager. * When 'list' is supplied instead of 'state', the yum module can list various configuration attributes. Values include 'installed', 'updates', - 'available', 'repos', or any package specifier. + 'available', 'repos', or any package specifier. (This is more intended for + use with /usr/bin/ansible or the API, not playbooks.) Example action from Ansible :doc:`playbooks`:: From f4e01d2b190744be768559d113ad2079db9cc5d9 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 00:58:27 -0400 Subject: [PATCH 213/416] notes about EPEL and release cycles --- rst/gettingstarted.rst | 32 +++++++++++++++++++++----------- rst/playbooks.rst | 2 +- 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index 62001b00076..cc7f8861741 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -34,16 +34,21 @@ These distributions don't have Python 2.6 by default, but it is easily installab Getting Ansible ``````````````` -As the project is still pretty new, you will probably want to clone -the git checkout, so you can keep up with all of the latest features, -and also easily contribute back to the project (if you want). +If you are interested in using all the latest features, you may wish to keep up to date +with the development branch of the git checkout. This also makes it easiest to contribute +back to the project. Instructions for installing from source are below. +Ansible's release cycles are about one month long. Due to this +short release cycle, any bugs will generally be fixed in the next release versus maintaining +backports on the stable branch. + You may also wish to follow the `Github project `_ if you have a github account. This is also where we keep the issue tracker for sharing bugs and feature ideas. + Running From Checkout +++++++++++++++++++++ @@ -51,6 +56,7 @@ Ansible is trivially easy to run from a checkout, root permissions are not requi to use it:: $ git clone git://github.com/ansible/ansible.git + $ git checkout -t origin/devel $ cd ./ansible $ source ./hacking/env-setup @@ -71,6 +77,7 @@ If you are not working from a distribution where Ansible is packaged yet, you ca using "make install". This is done through `python-distutils`:: $ git clone git://github.com/ansible/ansible.git + $ git checkout -t origin/devel $ cd ./ansible $ sudo make install @@ -78,8 +85,13 @@ using "make install". This is done through `python-distutils`:: Via RPM +++++++ -In the near future, pre-built packages will be available through your -distribution. Until that time, you can use the ``make rpm`` command to +RPMs for the last Ansible release are available for `EPEL `_ 6 and currently supported +Fedora distributions. + + # install the epel-release RPM if needed on CentOS, RHEL, or Scientific Linux + $ sudo yum install ansible + +You can also use the ``make rpm`` command to build an RPM you can distribute and install:: $ git clone git://github.com/ansible/ansible.git @@ -97,8 +109,9 @@ Debian, Gentoo, Arch, Others Gentoo eBuilds are available `here `_ -Debian package recipes are in progress -- see the source checkout, in the packaging/debian -directory. +Debian package recipes can be built from the source checkout, run:: + + make debian An Arch PKGBUILD is available on `AUR `_ If you have python3 installed on Arch, you probably want to symlink python to python2.:: @@ -106,7 +119,7 @@ If you have python3 installed on Arch, you probably want to symlink python to py sudo ln -sf /usr/bin/python2 /usr/bin/python If you would like to package Ansible for Homebrew, BSD, or others, -please stop by the mailing list and say hi. +please stop by the mailing list and say hi! Tagged Releases @@ -117,9 +130,6 @@ project page: * `Ansible/downloads `_ -At this point in Ansible's development, running or building from checkout is preferred -if you want access to all of the latest modules and improvements. - Your first commands ``````````````````` diff --git a/rst/playbooks.rst b/rst/playbooks.rst index adf42a5a613..eaf4ff34f52 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -236,7 +236,7 @@ to run a playbook inside a OS installer, such as an Anaconda kickstart. To run an entire playbook locally, just set the "hosts:" line to "hosts:127.0.0.1" and then run the playbook like so:: - playbook playbook.yml --connection=local + ansible-playbook playbook.yml --connection=local Alternatively, a local connection can be used in a single playbook play, even if other plays in the playbook use the default remote connection type:: From 2166ed8e98857e122db467cbecdbf85a0744ba88 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:04:26 -0400 Subject: [PATCH 214/416] Document sudo -U --- rst/examples.rst | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/rst/examples.rst b/rst/examples.rst index 0403a6d8dbd..48d0146263d 100644 --- a/rst/examples.rst +++ b/rst/examples.rst @@ -17,11 +17,14 @@ set up SSH-agent so it can remember our credentials:: ssh-agent bash ssh-add ~/.ssh/id_rsa.pub -Now to run the command on all servers in a group, in this case, 'atlanta':: +If you don't want to use ssh-agent and want to instead SSH with a password instead of keys, you can with +--ask-pass (-k), but it's much better to just use ssh-agent. + +Now to run the command on all servers in a group, in this case, 'atlanta', in 10 parallel forks:: ansible atlanta -a "/sbin/reboot" -f 10 -If you want to run commands as a different user than root:: +If you want to run commands as a different user than root, it looks like this:: ansible atlanta -a "/usr/bin/foo" -u yourname @@ -29,15 +32,21 @@ If you want to run commands through sudo:: ansible atlanta -a "/usr/bin/foo" -u yourname --sudo [--ask-sudo-pass] -Use --ask-sudo-pass (-K) if you are not using passwordless sudo. +Use --ask-sudo-pass (-K) if you are not using passwordless sudo. This will interactively prompt +you for the password to use. Use of passwordless sudo makes things easier to automate, but it's +not required. + +It is also possible to sudo to a user other than root using --sudo-user (-U):: + + ansible atlanta -a "/usr/bin/foo" -u yourname -U otheruser [--ask-sudo-pass] Ok, so those are basics. If you didn't read about patterns and groups yet, go back and read :doc:`patterns`. The -f 10 in the above specifies the usage of 10 simultaneous processes. Normally commands also take a `-m` for module name, but the default module name is 'command', so we didn't need to specify that -here. We'll use `-m` later to run some other :doc:`modules`. +all of the time. We'll use `-m` in later examples to run some other :doc:`modules`. -The command module requires absolute paths and does not support shell variables. If we want to +Note that the command module requires absolute paths and does not support shell variables. If we want to execute a module using the shell, we can do those things, and also use pipe and redirection operators. Read more about the differences on the :doc:`modules` page. The shell module looks like this:: From c9f6a2c978712a7da69394edd819299fa457cdaa Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:05:32 -0400 Subject: [PATCH 215/416] Undocument override hosts (gone in 0.4, use -i "host1,host2" if you must, but want to leave that undocumented as it's not a best practice so much. --- rst/patterns.rst | 3 --- 1 file changed, 3 deletions(-) diff --git a/rst/patterns.rst b/rst/patterns.rst index a0c4f3d4c29..24fb82698b8 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -77,9 +77,6 @@ It's also ok to mix wildcard patterns and groups at the same time:: one*.com:dbservers -.. note:: - It is not possible to target a host not in the inventory file, unless using playbooks with --override-hosts. More on that later. This is a safety feature. - Easy enough. See :doc:`examples` and then :doc:`playbooks` for how to do things to selected hosts. Host Variables From a00ab37b220093ebf5ab4318049d02b96af9b046 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:20:31 -0400 Subject: [PATCH 216/416] Document raw module. --- rst/modules.rst | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/rst/modules.rst b/rst/modules.rst index 0ac5ea45e5b..1012fd1fe43 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -319,6 +319,26 @@ any changes on the system. .. _service: +raw +``` + +Executes a low-down and dirty SSH command, not going through the module subsystem. +This module is new in Ansible 0.4. + +This is useful and should only be done in two cases. The first case is installing +python-simplejson on older (python 2.4 and before) hosts that need it as a dependency +to run modules, since nearly all core modules require it. Another is speaking to any +devices such as routers that do not have any Python installed. In any other case, +using the 'shell' or 'command' module is much more appropriate. + +Arguments given to 'raw' are run directly through the configured remote shell and +only output is returned. There is no error detection or change handler support +for this module. + +Example from `/usr/bin/ansible` to bootstrap a legacy python 2.4 host: + + ansible newhost.example.com raw -a "yum install python-simplejson" + service ``````` From 7ea369a06801bcec4aaa76652fa2daa4b512c095 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:26:40 -0400 Subject: [PATCH 217/416] Doc system flags --- rst/modules.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/rst/modules.rst b/rst/modules.rst index 1012fd1fe43..82d80cd024d 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -283,6 +283,11 @@ Adds or removes groups. * either 'absent', or 'present'. 'present' is the default. +*system*: + +* (new in 0.4) Indicates the group (when being created), should be a system group. This does not allow changing groups from and to system groups. + + To control members of the group, see the users resource. Example action from Ansible :doc:`playbooks`:: @@ -569,6 +574,10 @@ Creates user accounts, manipulates existing user accounts, and removes user acco * Defaults to 'present'. When 'absent', the user account will be removed if present. Optionally additional removal behaviors can be set with the 'force' or 'remove' parameter values (see below). +*system*: + +* (new in 0.4) Indicates the user (when being created), should be a system account. This does not allow changing users from and to system accounts. + *force*: * When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for ``--force`` is also used when removing the user. Value is 'yes' or 'no', default is 'no'. From d9fe6e959bec5f700fed6d94021dfeadab65b43f Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:27:34 -0400 Subject: [PATCH 218/416] update docs --- rst/modules.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index 82d80cd024d..8f90da4ada2 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -285,7 +285,7 @@ Adds or removes groups. *system*: -* (new in 0.4) Indicates the group (when being created), should be a system group. This does not allow changing groups from and to system groups. +* (new in 0.4) Indicates the group (when being created), should be a system group. This does not allow changing groups from and to system groups. Value is 'yes' or 'no', default is 'no'. To control members of the group, see the users resource. @@ -576,7 +576,7 @@ Creates user accounts, manipulates existing user accounts, and removes user acco *system*: -* (new in 0.4) Indicates the user (when being created), should be a system account. This does not allow changing users from and to system accounts. +* (new in 0.4) Indicates the user (when being created), should be a system account. This does not allow changing users from and to system accounts. Value is 'yes' or 'no', default is 'no'. *force*: From c193f774c2ab2e81c36315f81c663f24281f114e Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:33:19 -0400 Subject: [PATCH 219/416] Doc custom facts --- rst/moduledev.rst | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/rst/moduledev.rst b/rst/moduledev.rst index 8eb767c020a..5fc6652a0c1 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -166,8 +166,32 @@ Let's test that module:: This should return something like:: - {"changed": true, "time": "2012-03-14 12:23:00.000307"} - + {"changed": True, "time": "2012-03-14 12:23:00.000307"} + + +Module Provided 'Facts' +``````````````````````` + +The 'setup' module that ships with Ansible provides many variables about a system that can be used in playbooks +and templates. However, it's possible to also add your own facts without modifying the system module. To do +this, just have the module return a `ansible_facts` key, like so, along with other return data. This requires +Ansible 0.4 and later:: + + { + "changed" : True, + "rc" : 5, + "ansible_facts" : { + "leptons" : 5000 + "colors" : { + "red" : "FF0000", + "white" : "FFFFFF" + } + } + } + +These 'facts' will be available to all statements called after that module (but not before) in the playbook. +A good idea might be make a module called 'site_facts' and always call it at the top of each playbook, though +we're always open to improving the selection of core facts in Ansible as well. Common Pitfalls ``````````````` From 8559f0167d47d7a6718175213e8d54f642b2ce72 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:36:52 -0400 Subject: [PATCH 220/416] var section tweaks --- rst/patterns.rst | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/rst/patterns.rst b/rst/patterns.rst index 24fb82698b8..dd317423e39 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -103,10 +103,12 @@ Using the 0.4 branch of Ansible, variables can also be applied to an entire grou ntp_server=ntp.atlanta.example.com proxy=proxy.atlanta.example.com -Groups of Groups -++++++++++++++++ +Groups of Groups, and Group Variables ++++++++++++++++++++++++++++++++++++++ -Using the 0.4 branch of Ansible, it is possible to make groups of groups:: +Using Ansible 0.4, it is possible to make groups of groups and assign +variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not +/usr/bin/ansible. [atlanta] host1 @@ -122,6 +124,9 @@ Using the 0.4 branch of Ansible, it is possible to make groups of groups:: [southeast:vars] some_server=foo.southeast.example.com + halon_system_timeout=30 + self_destruct_countdown=60 + escape_pods=2 [usa:children] southeast From f81000c127d09d231471f457a004c06a3753ce07 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:41:00 -0400 Subject: [PATCH 221/416] Document list on service module --- rst/modules.rst | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index 8f90da4ada2..fe6742ac3ef 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -49,7 +49,7 @@ install a specific version of the foo package. *state*: -* Can be either 'installed', 'removed', or 'latest'. The default is 'installed'. +* Can be either 'installed', 'removed', or 'latest'. The default is 'installed'. (In 0.4 and later, the aliases 'absent' and 'present' can also be used. They correspond with 'removed' and 'installed') *update-cache*: @@ -360,6 +360,10 @@ Controls services on remote machines. * (new in 0.4) Whether the service should start on boot. Either 'yes' or 'no'. Uses chkconfig or updates-rc.d as appropriate. +*list*: + +* (new in 0.4) When used with the value 'status', returns the status of the service along with other results. This is primarily useful for /usr/bin/ansible, and not meaningful for playbooks. + *name*: * The name of the service. @@ -370,7 +374,6 @@ Example action from Ansible :doc:`playbooks`:: service name=httpd state=stopped service name=httpd state=restarted - .. _setup: setup @@ -648,7 +651,7 @@ Will install, upgrade, remove, and list packages with the yum package manager. *state*: -* Can be either 'installed', 'latest', or 'removed'. The default is 'installed'. +* Can be either 'installed', 'latest', or 'removed'. The default is 'installed'. (In 0.4 and later, the aliases 'absent' and 'present' can also be used. They correspond with 'removed' and 'installed') *list*: From 85cedf52ef65fbbb6f693fa525d78fb474cc8b47 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 10 May 2012 01:41:31 -0400 Subject: [PATCH 222/416] fix rst + docs rebuild --- YAMLSyntax.html | 2 +- api.html | 8 +++---- examples.html | 19 ++++++++++----- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 30 +++++++++++++++--------- index.html | 8 ++++--- moduledev.html | 27 +++++++++++++++++++-- modules.html | 57 ++++++++++++++++++++++++++++++++++++++------- patterns.html | 44 +++++++++++++++++----------------- playbooks.html | 4 ++-- rst/modules.rst | 3 +-- search.html | 2 +- searchindex.js | 2 +- 14 files changed, 143 insertions(+), 67 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index c1154010d96..1420656a658 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -273,7 +273,7 @@ languages:

      © Copyright 2012 Michael DeHaan.
      - Last updated on May 06, 2012.
      + Last updated on May 10, 2012.

      diff --git a/api.html b/api.html index 3ee2eb94747..6add0c3e5f6 100644 --- a/api.html +++ b/api.html @@ -268,7 +268,7 @@ of these options via an external inventory system.

      If you are familiar with Puppet terminology, this concept is basically the same as ‘external nodes’, with the slight difference that it also defines which hosts are managed.

      Script Conventions

      -

      When the external node script is called with no arguments, the script must return a JSON hash/dictionary of all the groups to be managed, with a list of each host/IP as the value for each hash/dictionary element, like so:

      +

      When the external node script is called with the single argument ‘–list’, the script must return a JSON hash/dictionary of all the groups to be managed, with a list of each host/IP as the value for each hash/dictionary element, like so:

      {
           'databases'  : [ 'host1.example.com', 'host2.example.com' ],
           'webservers' : [ 'host2.example.com', 'host3.example.com' ],
      @@ -276,8 +276,8 @@ of these options via an external inventory system.

      }
      -

      When called with a single argument, the name of a host from above, the script must return either an empty JSON -hash/dictionary, or a list of key/value variables to make available to templates. Returning variables is optional, +

      When called with the arguments ‘–host <hostname>’ (where <hostname> is a host from above), the script must return either an empty JSON +hash/dictionary, or a list of key/value variables to make available to templates or playbooks. Returning variables is optional, if the script does not wish to do this, returning an empty hash/dictionary is the way to go:

      {
           'favcolor'   : 'red',
      @@ -357,7 +357,7 @@ a conf.d file appropriately or something similar.  Who knows?

      © Copyright 2012 Michael DeHaan.
      - Last updated on May 06, 2012.
      + Last updated on May 10, 2012.

      diff --git a/examples.html b/examples.html index 94f66b4568a..510ef3c3269 100644 --- a/examples.html +++ b/examples.html @@ -194,21 +194,28 @@ set up SSH-agent so it can remember our credentials:

      ssh-agent bash
       ssh-add ~/.ssh/id_rsa.pub
      -

      Now to run the command on all servers in a group, in this case, ‘atlanta’:

      +

      If you don’t want to use ssh-agent and want to instead SSH with a password instead of keys, you can with +–ask-pass (-k), but it’s much better to just use ssh-agent.

      +

      Now to run the command on all servers in a group, in this case, ‘atlanta’, in 10 parallel forks:

      ansible atlanta -a "/sbin/reboot" -f 10
      -

      If you want to run commands as a different user than root:

      +

      If you want to run commands as a different user than root, it looks like this:

      ansible atlanta -a "/usr/bin/foo" -u yourname

      If you want to run commands through sudo:

      ansible atlanta -a "/usr/bin/foo" -u yourname --sudo [--ask-sudo-pass]
      -

      Use –ask-sudo-pass (-K) if you are not using passwordless sudo.

      +

      Use –ask-sudo-pass (-K) if you are not using passwordless sudo. This will interactively prompt +you for the password to use. Use of passwordless sudo makes things easier to automate, but it’s +not required.

      +

      It is also possible to sudo to a user other than root using –sudo-user (-U):

      +
      ansible atlanta -a "/usr/bin/foo" -u yourname -U otheruser [--ask-sudo-pass]
      +

      Ok, so those are basics. If you didn’t read about patterns and groups yet, go back and read The Inventory File, Patterns, and Groups.

      The -f 10 in the above specifies the usage of 10 simultaneous processes. Normally commands also take a -m for module name, but the default module name is ‘command’, so we didn’t need to specify that -here. We’ll use -m later to run some other Ansible Modules.

      -

      The command module requires absolute paths and does not support shell variables. If we want to +all of the time. We’ll use -m in later examples to run some other Ansible Modules.

      +

      Note that the command module requires absolute paths and does not support shell variables. If we want to execute a module using the shell, we can do those things, and also use pipe and redirection operators. Read more about the differences on the Ansible Modules page. The shell module looks like this:

      @@ -373,7 +380,7 @@ a simplified syntax for this.

      © Copyright 2012 Michael DeHaan.
      - Last updated on May 06, 2012.
      + Last updated on May 10, 2012.

      diff --git a/faq.html b/faq.html index 8a8c26ee8d7..da793af9cd3 100644 --- a/faq.html +++ b/faq.html @@ -379,7 +379,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

      © Copyright 2012 Michael DeHaan.
      - Last updated on May 06, 2012.
      + Last updated on May 10, 2012.

      diff --git a/genindex.html b/genindex.html index 81d090ee708..10f12fbe204 100644 --- a/genindex.html +++ b/genindex.html @@ -188,7 +188,7 @@ s.parentNode.insertBefore(ga, s);

      © Copyright 2012 Michael DeHaan.
      - Last updated on May 06, 2012.
      + Last updated on May 10, 2012.

      diff --git a/gettingstarted.html b/gettingstarted.html index 03c2b4f6962..ab2ce2429a6 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -215,10 +215,13 @@ also need:

      Getting Ansible

      -

      As the project is still pretty new, you will probably want to clone -the git checkout, so you can keep up with all of the latest features, -and also easily contribute back to the project (if you want).

      +

      If you are interested in using all the latest features, you may wish to keep up to date +with the development branch of the git checkout. This also makes it easiest to contribute +back to the project.

      Instructions for installing from source are below.

      +

      Ansible’s release cycles are about one month long. Due to this +short release cycle, any bugs will generally be fixed in the next release versus maintaining +backports on the stable branch.

      You may also wish to follow the Github project if you have a github account. This is also where we keep the issue tracker for sharing bugs and feature ideas.

      @@ -227,6 +230,7 @@ bugs and feature ideas.

      Ansible is trivially easy to run from a checkout, root permissions are not required to use it:

      $ git clone git://github.com/ansible/ansible.git
      +$ git checkout -t origin/devel
       $ cd ./ansible
       $ source ./hacking/env-setup
      @@ -243,14 +247,19 @@ $ export ANSIBLE_HOSTS=~/ansible_hosts

      If you are not working from a distribution where Ansible is packaged yet, you can install Ansible using “make install”. This is done through python-distutils:

      $ git clone git://github.com/ansible/ansible.git
      +$ git checkout -t origin/devel
       $ cd ./ansible
       $ sudo make install

      Via RPM

      -

      In the near future, pre-built packages will be available through your -distribution. Until that time, you can use the make rpm command to +

      RPMs for the last Ansible release are available for EPEL 6 and currently supported +Fedora distributions.

      +
      +
      # install the epel-release RPM if needed on CentOS, RHEL, or Scientific Linux +$ sudo yum install ansible
      +

      You can also use the make rpm command to build an RPM you can distribute and install:

      $ git clone git://github.com/ansible/ansible.git
       $ cd ./ansible
      @@ -265,14 +274,15 @@ same version.  This is perfectly safe to do.

      Debian, Gentoo, Arch, Others

      Gentoo eBuilds are available here

      -

      Debian package recipes are in progress – see the source checkout, in the packaging/debian -directory.

      +

      Debian package recipes can be built from the source checkout, run:

      +
      make debian
      +

      An Arch PKGBUILD is available on AUR If you have python3 installed on Arch, you probably want to symlink python to python2.:

      sudo ln -sf /usr/bin/python2 /usr/bin/python

      If you would like to package Ansible for Homebrew, BSD, or others, -please stop by the mailing list and say hi.

      +please stop by the mailing list and say hi!

      Tagged Releases

      @@ -281,8 +291,6 @@ project page:

      -

      At this point in Ansible’s development, running or building from checkout is preferred -if you want access to all of the latest modules and improvements.

      @@ -341,7 +349,7 @@ explore, but you already have a fully working infrastructure!

      © Copyright 2012 Michael DeHaan.
      - Last updated on May 06, 2012.
      + Last updated on May 10, 2012.

      diff --git a/index.html b/index.html index 80bf1103d07..8c86ffa8235 100644 --- a/index.html +++ b/index.html @@ -296,7 +296,7 @@ Email:   Selecting Targets
    • Host Variables
    • Group Variables
    • -
    • Groups of Groups
    • +
    • Groups of Groups, and Group Variables
    • YAML Inventory Format
    @@ -321,7 +321,8 @@ Email:   group
  • ohai
  • ping
  • -
  • service
  • +
  • raw
  • +
  • service
  • setup
  • shell
  • template
  • @@ -375,6 +376,7 @@ Email:   Tutorial
  • Testing Modules
  • Reading Input
  • +
  • Module Provided ‘Facts’
  • Common Pitfalls
  • Conventions
  • Shorthand Vs JSON
  • @@ -432,7 +434,7 @@ Puppet Labs, and is now with Tutorial
  • Testing Modules
  • Reading Input
  • +
  • Module Provided ‘Facts’
  • Common Pitfalls
  • Conventions
  • Shorthand Vs JSON
  • @@ -328,10 +329,32 @@ a lot shorter than this:

    ansible/hacking/test-module ./time time=\"March 14 12:23\"

    This should return something like:

    -
    {"changed": true, "time": "2012-03-14 12:23:00.000307"}
    +
    {"changed": True, "time": "2012-03-14 12:23:00.000307"}
     
    +
    +

    Module Provided ‘Facts’

    +

    The ‘setup’ module that ships with Ansible provides many variables about a system that can be used in playbooks +and templates. However, it’s possible to also add your own facts without modifying the system module. To do +this, just have the module return a ansible_facts key, like so, along with other return data. This requires +Ansible 0.4 and later:

    +
    {
    +    "changed" : True,
    +    "rc" : 5,
    +    "ansible_facts" : {
    +        "leptons" : 5000
    +        "colors" : {
    +            "red"   : "FF0000",
    +            "white" : "FFFFFF"
    +        }
    +    }
    +}
    +
    +

    These ‘facts’ will be available to all statements called after that module (but not before) in the playbook. +A good idea might be make a module called ‘site_facts’ and always call it at the top of each playbook, though +we’re always open to improving the selection of core facts in Ansible as well.

    +

    Common Pitfalls

    If writing a module in Python and you have managed nodes running @@ -430,7 +453,7 @@ Stop by the mailing list to inquire about requirements.

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 06, 2012.
    + Last updated on May 10, 2012.

    diff --git a/modules.html b/modules.html index 129dd282473..08637d0c605 100644 --- a/modules.html +++ b/modules.html @@ -156,7 +156,8 @@ s.parentNode.insertBefore(ga, s);
  • group
  • ohai
  • ping
  • -
  • service
  • +
  • raw
  • +
  • service
  • setup
  • shell
  • template
  • @@ -225,11 +226,11 @@ noted, any given module does support change hooks.

    Manages apt-packages (such as for Debian/Ubuntu).

    pkg:

      -
    • A package name or package specifier with version, like foo=1.0
    • +
    • A package name or package specifier with version, like foo, or foo=1.0 to install a specific version of the foo package.

    state:

      -
    • Can be either ‘installed’, ‘removed’, or ‘latest’. The default is ‘installed’.
    • +
    • Can be either ‘installed’, ‘removed’, or ‘latest’. The default is ‘installed’. (In 0.4 and later, the aliases ‘absent’ and ‘present’ can also be used. They correspond with ‘removed’ and ‘installed’)

    update-cache:

      @@ -390,7 +391,7 @@ file path=/some/path state=directory context=default

      Deploys software (or files) from git checkouts.

      repo:

        -
      • git or http protocol address of the repo to checkout.
      • +
      • git, ssh, or http protocol address of the git repo to checkout.

      dest:

        @@ -401,6 +402,10 @@ file path=/some/path state=directory context=default
      • What version to check out – either the git SHA, the literal string HEAD, or a tag name.
      +

      branch:

      +
        +
      • (new in 0.4) Which branch name to checkout. Defaults to ‘master’.
      • +

      Example action from Ansible Playbooks:

      git repo=git://foosball.example.org/path/to/repo.git dest=/srv/checkout version=release-0.22
      @@ -420,6 +425,10 @@ file path=/some/path state=directory context=default
      • either ‘absent’, or ‘present’. ‘present’ is the default.
      +

      system:

      +
        +
      • (new in 0.4) Indicates the group (when being created), should be a system group. This does not allow changing groups from and to system groups. Value is ‘yes’ or ‘no’, default is ‘no’.
      • +

      To control members of the group, see the users resource.

      Example action from Ansible Playbooks:

      group name=somegroup state=present
      @@ -443,8 +452,24 @@ successful contact.

      takes no parameters & does not support change hooks, nor does it make any changes on the system.

      -
      -

      service

      +
      +

      raw

      +

      Executes a low-down and dirty SSH command, not going through the module subsystem. +This module is new in Ansible 0.4.

      +

      This is useful and should only be done in two cases. The first case is installing +python-simplejson on older (python 2.4 and before) hosts that need it as a dependency +to run modules, since nearly all core modules require it. Another is speaking to any +devices such as routers that do not have any Python installed. In any other case, +using the ‘shell’ or ‘command’ module is much more appropriate.

      +

      Arguments given to ‘raw’ are run directly through the configured remote shell and +only output is returned. There is no error detection or change handler support +for this module.

      +

      Example from /usr/bin/ansible to bootstrap a legacy python 2.4 host:

      +
      +
      ansible newhost.example.com raw -a “yum install python-simplejson”
      +
      +
      +

      service

      Controls services on remote machines.

      state:

        @@ -452,6 +477,15 @@ any changes on the system.

        Started/stopped are idempotent actions that will not run commands unless necessary. restarted will always bounce the service.
      +

      enabled:

      +
        +
      • (new in 0.4) Whether the service should start on boot. Either ‘yes’ or ‘no’. +Uses chkconfig or updates-rc.d as appropriate.
      • +
      +

      list:

      +
        +
      • (new in 0.4) When used with the value ‘status’, returns the status of the service along with other results. This is primarily useful for /usr/bin/ansible, and not meaningful for playbooks.
      • +

      name:

      • The name of the service.
      • @@ -636,6 +670,10 @@ be a relative or absolute path.
        • Defaults to ‘present’. When ‘absent’, the user account will be removed if present. Optionally additional removal behaviors can be set with the ‘force’ or ‘remove’ parameter values (see below).
        +

        system:

        +
          +
        • (new in 0.4) Indicates the user (when being created), should be a system account. This does not allow changing users from and to system accounts. Value is ‘yes’ or ‘no’, default is ‘no’.
        • +

        force:

        • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for --force is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.
        • @@ -696,13 +734,14 @@ ansible host -m virt -a "command=virttype"

        state:

          -
        • Can be either ‘installed’, ‘latest’, or ‘removed’. The default is ‘installed’.
        • +
        • Can be either ‘installed’, ‘latest’, or ‘removed’. The default is ‘installed’. (In 0.4 and later, the aliases ‘absent’ and ‘present’ can also be used. They correspond with ‘removed’ and ‘installed’)

        list:

        • When ‘list’ is supplied instead of ‘state’, the yum module can list various configuration attributes. Values include ‘installed’, ‘updates’, -‘available’, ‘repos’, or any package specifier.
        • +‘available’, ‘repos’, or any package specifier. (This is more intended for +use with /usr/bin/ansible or the API, not playbooks.)

        Example action from Ansible Playbooks:

        yum pkg=httpd state=latest
        @@ -748,7 +787,7 @@ yum pkg=httpd state=installed

        © Copyright 2012 Michael DeHaan.
        - Last updated on May 06, 2012.
        + Last updated on May 10, 2012.

        diff --git a/patterns.html b/patterns.html index 3734bae5005..fd05ba7157c 100644 --- a/patterns.html +++ b/patterns.html @@ -150,7 +150,7 @@ s.parentNode.insertBefore(ga, s);
      • Selecting Targets
      • Host Variables
      • Group Variables
      • -
      • Groups of Groups
      • +
      • Groups of Groups, and Group Variables
      • YAML Inventory Format
      @@ -240,10 +240,6 @@ wildcards:

      It’s also ok to mix wildcard patterns and groups at the same time:

      one*.com:dbservers
      -
      -

      Note

      -

      It is not possible to target a host not in the inventory file, unless using playbooks with –override-hosts. More on that later. This is a safety feature.

      -

      Easy enough. See Command Line Examples and then Playbooks for how to do things to selected hosts.

      @@ -267,30 +263,32 @@ ntp_server=ntp.atlanta.example.com proxy=proxy.atlanta.example.com
      -
      -

      Groups of Groups

      -

      Using the 0.4 branch of Ansible, it is possible to make groups of groups:

      -
      [atlanta]
      +
      +

      Groups of Groups, and Group Variables

      +

      Using Ansible 0.4, it is possible to make groups of groups and assign +variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not +/usr/bin/ansible.

      +
      +

      [atlanta] host1 +host2

      +

      [raleigh] host2 - -[raleigh] -host2 -host3 - -[southeast:children] +host3

      +

      [southeast:children] atlanta -raleigh - -[southeast:vars] +raleigh

      +

      [southeast:vars] some_server=foo.southeast.example.com - -[usa:children] +halon_system_timeout=30 +self_destruct_countdown=60 +escape_pods=2

      +

      [usa:children] southeast northeast southwest -southeast

      -
      +southeast

      +

    YAML Inventory Format

    @@ -363,7 +361,7 @@ YAML:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 06, 2012.
    + Last updated on May 10, 2012.

    diff --git a/playbooks.html b/playbooks.html index ec5e79860d2..8766b2112e0 100644 --- a/playbooks.html +++ b/playbooks.html @@ -388,7 +388,7 @@ things you can do with playbooks.

    for assuring the configuration of a system by putting a playbook on a crontab. This may also be used to run a playbook inside a OS installer, such as an Anaconda kickstart.

    To run an entire playbook locally, just set the “hosts:” line to “hosts:127.0.0.1” and then run the playbook like so:

    -
    playbook playbook.yml --connection=local
    +
    ansible-playbook playbook.yml --connection=local

    Alternatively, a local connection can be used in a single playbook play, even if other plays in the playbook use the default remote connection type:

    @@ -719,7 +719,7 @@ Let’s run a playbook using a parallelism level of 10:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 06, 2012.
    + Last updated on May 10, 2012.

    diff --git a/rst/modules.rst b/rst/modules.rst index fe6742ac3ef..ba4663bc8cd 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -44,8 +44,7 @@ Manages apt-packages (such as for Debian/Ubuntu). *pkg*: -* A package name or package specifier with version, like `foo`, or `foo=1.0` to -install a specific version of the foo package. +* A package name or package specifier with version, like `foo`, or `foo=1.0` to install a specific version of the foo package. *state*: diff --git a/search.html b/search.html index 81f4a58c648..25266284368 100644 --- a/search.html +++ b/search.html @@ -205,7 +205,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 06, 2012.
    + Last updated on May 10, 2012.

    diff --git a/searchindex.js b/searchindex.js index 077f01eac6a..594e6f79e0d 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,children:7,"new":[0,4],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,manipul:[3,9],behavior:3,eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,8,3,9,2],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:[7,8],os_default:6,give:1,rpath:2,indic:6,somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[7,4,3,6,9],lab:[2,4],befor:[2,4,3,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],ansible_product_seri:3,bootstrap:[0,4,2],credenti:9,greek:7,unpaus:3,maintain:2,environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,better:[3,9],offic:2,easier:[2,4,5,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:8,too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[1,4,3,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,abov:[8,5,6,9],runner:8,ram:4,mind:[2,4,5],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],nobodi:5,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,4,3,6,1],interest:8,basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,ani:[2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[0,5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:3,check:[3,6,9],encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:5,devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[5,4,3,6,9],suspect:[],gener:[8,4,5,9],address:[8,2,4,3,7],along:[5,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[0,5,9,7],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,4,3,6,8,9],easiest:[2,6],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],didn:[4,9],crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:3,facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:[],directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],stuck:6,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:0,sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],destroi:3,note:[0,3,5,6,7,8],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:[],pair:[5,3,1],later:[0,2,3,5,6,7,9],meanwhil:4,runtim:6,width:2,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,kei:[0,1,2,3,4,5,6,8],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:2,come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:6,overview:1,inspir:[2,4],featur:[7,0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,4,5,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],stdout:8,worri:4,destin:3,myapp:9,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:0,extern:[2,8,6],appropri:[8,4,9],choos:[3,6],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:2,trigger:[4,3,6],except:5,littl:[8,2,4],blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,4,5,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,ipv4:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[0,1,3,5,6,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,3,6,7],distinct:2,two:[2,8,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,neccesssari:2,unlink:3,associ:1,"short":[2,4,6,7],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:7,bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],construct:[8,4],camelot:6,make_databas:3,statement:6,banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,interpol:6,reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,0,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:2,delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[0,8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,due:[2,4,5],empti:8,ran:2,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[4,5,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:[],entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[7,3,6],input:[2,5,6],bin:[0,3,5,6,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],"long":[2,4,3,6,8,9],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:[2,7],nice:[2,6],asciidoc:[],far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[0,3,9,2],can:[0,1,2,3,4,5,6,7,8,9],chose:[],northeast:7,let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:[],mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,some_serv:7,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],unpars:5,ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:5,puppet:[8,2,4],submit:[2,4],owner:[3,9],prioriti:3,ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[7,4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[5,4,3,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:4,increas:6,ansible_ssh_port:7,enabl:4,organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:0,email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[7,4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,4,3,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,4,3,6,8,9],host4:8,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,drop:5,captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[8,2,4,3,6],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:[],hassl:2,individu:7,simplejson:[0,5],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[0,5,4,3,2],branch:7,varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:6,kickstart:6,comprimis:2,poorli:2,four:7,prefix:[7,3,6,9],sleep:6,forget:[6,9],ebuild:0,aur:0,under:6,spec:6,everi:[0,6,1,9],risk:6,ansible_virtualization_rol:3,redact:3,upstream:0,affect:[2,5,3],macaddress:3,ansible_librari:[],shlex:5,vars_prompt:6,saltstack:[],x86_64:[8,3],awwxvv:3,seper:[4,3,6],direct:[4,6],chef:[2,4],second:[6,9],blue:6,thunder:4,children:7,"new":[4,3],net:[0,1,3,4,5,7,8,9],ever:[2,5],told:6,unpars:5,abov:[8,5,6,9],eckersberg:[4,1],hera:7,never:[8,4,5],here:[0,2,5,6,7,8,9],herd:4,path:[5,3,6,9],datetim:5,permit:[],aka:6,somethingels:6,brought:[],unix:[2,4],cobblerd:8,total:6,unit:5,highli:5,describ:6,would:[0,3,4,5,6,8,9],h3d850bdf:[],ansible_memtotal_mb:3,noarch:0,program:[2,1,3,4,5,6,9],overhead:2,typo:5,recommend:5,type:[2,3,4,5,6,8],tell:[0,2,3,6,7,9],notif:4,notic:4,warn:5,relai:6,must:[5,8,3,6],join:[],restor:3,setup:[0,2,3,5,8,9],work:[0,2,4,3,6,7,8,9],erb:4,virttyp:3,ansible_ssh_host_key_rsa_publ:3,root:[9,0,4,6,2],overrid:8,os_default:6,give:1,rpath:2,indic:[3,6],somefil:6,want:[0,1,3,4,5,6,8,9],end:[2,4,3,6],hoc:[2,4,3,6,9],quot:[6,9],how:[2,1,3,4,5,6,7,8,9],hop:4,yum:[0,2,3,5,6,9],perspect:8,updat:[2,3,9],recogn:[6,9],passwordless:9,after:[3,4,5,6,7,9],lab:[2,4],befor:[2,3,4,5,6,9],ohai_:[3,6],arch:[0,2],parallel:[2,4,6,9],interpol:6,ansible_product_seri:3,bootstrap:[0,4,3,2],credenti:9,greek:7,unpaus:3,maintain:[0,2],environ:[2,3],exclus:6,idontknow:[],order:[2,4,6],oper:[2,3,6,9],over:[2,4,6,7,8,9],failur:[8,4,5],orang:1,becaus:[1,4,5,6,8,9],rpmbuild:0,ansible_interfac:3,zeu:7,myfil:3,streamlin:6,cli:[8,9],img:2,fix:0,better:[3,9],offic:2,easier:[2,4,5,9,1],them:[0,1,2,3,4,5,6,7,9],thei:[2,3,4,5,6,7,8,9],safe:[0,6],"break":6,glorifi:2,jinja2:[0,4,3,6,9],mgmt:8,httpd_sys_content_t:3,choic:2,vidal:4,bonu:8,timeout:6,each:[2,1,3,4,5,6,8],debug:1,mean:[2,1,3,4,5,6],logo:2,contend:4,network:[2,4],content:[2,5,3,6],adapt:8,got:4,forth:6,site_fact:5,ntp:[7,3,9],nightmar:2,free:4,standard:[7,5],dotnet:1,fixm:[],openssh:[2,4],traceback:5,isn:[2,4,5],rang:[2,3],render:3,wast:2,restrict:5,hook:3,instruct:[0,4,2],alreadi:[0,2,4,5,6,8],van_halen_port:6,massiv:2,primari:[8,3],rewritten:[],top:[4,5,6],sometim:[3,6],master:[8,3],too:[2,1,4,5,7,8,9],similarli:[2,8,6],john:[4,1],iptabl:[],ansible_memfree_mb:3,tool:[8,2,4,6,9],took:4,"80ghz":3,somewhat:8,technic:[8,3],freemem:3,silli:[],target:[2,6,7],keyword:[4,6],provid:[2,1,3,4,5,6,8,9],tree:[5,8,3],project:[0,4,6,1,2],ansible_distribution_releas:3,minut:[4,9],uses_cv:1,recheck:5,provis:4,fashion:4,behavior:3,runner:8,ram:4,mind:[2,4,5],raw:[2,3],aforement:7,seem:[4,6],seek:3,client:2,even:[8,7,4,6,9],though:[8,2,5,4,3],what:[0,1,2,3,4,5,6,8],regular:6,bsd:[0,4],boxsubscrib:2,simplic:2,don:[0,2,3,4,5,6,7,9],doc:[0,2],doe:[2,3,4,5,6,7,8,9],declar:6,wildcard:7,came:8,cobbler_external_inventori:8,syntax:[2,4,6,1,9],pkg:[3,6,9],radic:2,identifi:4,pki:[2,4],absolut:[3,9],northeast:7,acquir:2,explain:[8,5],configur:[0,1,2,4,3,6,7,8,9],apach:[4,6,9],ldap:8,stop:[0,1,3,4,5,6,7,8,9],saturn:7,bar:[7,8,3,6],excel:[2,4],method:8,bad:5,respond:6,richer:4,result:[2,3,4,5,6,8],fail:[8,2,4,5,6],hash:[8,5,1],hammer:7,best:[5,4,3,6],subject:[4,6],databas:[2,8,3,6],discoveri:3,figur:4,simplest:5,awai:[4,6],irc:[0,1,3,4,5,7,8,9],approach:[2,4,6],attribut:3,manpag:3,extens:[2,4],recent:4,howev:[7,4,5,9],against:[2,4,6,7],logic:[2,6],com:[0,2,3,5,6,7,8],compromis:4,assur:6,height:2,guid:[2,5,3,6],assum:[2,8],speak:3,multiplay:2,ansible_library_path:5,three:[7,3],been:[8,2,4,9],much:[2,1,4,3,6,9],interest:[0,8],basic:[0,1,2,4,5,6,7,8,9],tini:6,quickli:[2,9],life:2,nobodi:5,ani:[0,2,3,4,5,6,8,9],enterprisei:8,child:2,emploi:1,ugli:6,exception:4,servic:[2,3,5,6,7,9],vars_fil:6,aim:4,tabl:[],conf:[8,3,6,9],module_nam:[7,8],somekei:5,sever:[4,6,1],cfengin:4,inventori:[0,2,3,6,7,8,9],perform:[2,4,6],make:[0,2,3,4,5,6,7,8,9],complex:[2,4,6],split:5,complet:[4,6,1],wheel:[3,6],ansible_arch2:[],fragil:2,selevel:3,rail:4,hand:6,rais:[5,6],ownership:9,refin:[],tune:0,speakerdeck:2,kept:[4,6],scenario:[2,8],ansible_:6,hypothet:[],deal:5,tho:[],contact:[8,0,4,3],thi:[0,1,2,3,4,5,6,7,8,9],programm:[8,4],everyth:[],left:[],protocol:3,just:[0,1,2,4,5,6,7,8,9],photo:[],human:[6,1],braces_syntax:6,yet:[0,8,3,9,2],languag:[0,1,2,3,4,5,6,7,8],easi:[0,2,4,3,6,7,9],spread:2,els:6,ffffff:5,save:[5,3,6],hat:[2,4],applic:[8,2,4,6],quirk:1,fusion:3,background:[2,9],daemon:[2,4],specif:[4,3,6,7,8,9],arbitrari:[4,3,6],manual:[4,6,9],remind:[5,6],el6:3,unnecessari:3,groups_logo_sm:2,right:[],ansible_form_factor:3,maxim:4,dead:2,born:4,intern:5,heritag:4,successfulli:2,txt:[3,9],forcibl:[],bottom:6,tracker:[0,2],somelog:3,foo:[7,8,3,6,9],localhost:3,core:[2,5,4,3,9],plu:6,web2:8,web1:8,promot:[],repositori:[],peer:[2,4],"super":2,sshd:2,eat:9,surround:9,simul:6,produc:5,xyz:3,contriv:[],down:[8,3,6],contrib:5,eth0:3,git:[0,5,3,9,2],fabric:[2,4],wai:[0,2,3,4,5,6,8,9],support:[0,2,4,3,6,8,9],happi:2,avail:[0,1,3,4,5,6,8,9],gif:2,reli:[2,4],gid:3,wordpress:6,call:[5,8,3,6,1],fork:[8,4,6,9],head:[3,9],python26:0,form:[2,5,6,1,7],forc:[0,3],"true":[5,3,6,1,7],freenod:[0,1,2,3,4,5,7,8,9],absent:[3,9],inquir:5,maximum:6,until:[5,6],ansible_fqdn:3,rerun:6,adopt:4,"abstract":4,fedoraproject:[],exist:[2,8,3,6,9],ship:[5,3],check:[3,6,9],self_destruct_countdown:7,encrypt:4,tip:7,role:[3,6],test:[0,2,3,4,5,8],tie:8,unlimit:2,maxrequestsperchild:7,node:[0,2,3,4,5,6,8,9],intend:[5,3],devop:2,intent:[],consid:[5,6],faster:6,anywher:6,ignor:5,time:[0,1,2,3,4,5,6,7,8,9],push:[2,4,6],concept:[8,9],skip:6,consum:4,invent:6,operatingsystem:6,decid:[4,5,9],middl:[],depend:[5,4,3,6,9],graph:4,decis:6,southwest:7,sourc:[0,1,2,3,4,5,6,8,9],string:[5,3,7],condit:[2,6],word:8,brows:5,level:[2,3,6,1],did:[8,5,6],item:[8,6,1],team:4,ansible_product_nam:3,prevent:5,trend:3,anaconda:6,port:[7,4,9],favcolor:[8,5,6,9],ansible_distribution_vers:3,current:[0,3,4,5,6,9],suspect:[],gener:[8,0,4,5,9],address:[8,2,4,3,7],along:[5,3,6],wait:6,box:[2,3,9],precursor:2,extrem:[0,4,2],bob:6,commonli:[9,1],ourselv:6,regardless:[2,4,6,1],extra:4,modul:[0,2,3,4,5,6,8,9],userdel:3,prefer:[7,5,9],instal:[0,2,3,4,5,6,9],httpd:[7,3,6,9],is_cento:6,visit:2,perl:9,live:0,handler:[3,6,9],criteria:6,msg:[8,5],scope:3,checkout:[0,5,3,2],ntpserver:[7,8,3],idempot:[2,3,4,5,6,9],share:[0,8,5,6,2],claus:6,templat:[2,3,4,5,6,8,9],easiest:[0,6,2],get_xml:3,ibm:2,module_arg:8,prepar:5,uniqu:2,cat:[],whatev:5,purpos:[7,3],hostvar:6,chip:2,agent:[0,4,9],critic:2,occur:[],alwai:[5,4,3,6],multipl:[4,3,6,7,8,9],ping:[0,8,3,2],uptim:8,write:[2,1,3,4,5,6,9],purg:3,somevalu:[5,6],parameter:6,map:6,mar:7,max:9,clone:[0,5],usabl:6,membership:9,mai:[0,1,3,5,6,8,9],underscor:3,data:[2,1,3,4,5,6,8],man:[],poseidon:7,practic:[4,3,6,1],seuser:3,explicit:3,predic:3,inform:[8,3,6,9],"switch":[],mango:1,combin:1,talk:[7,6],nbsp:2,still:[8,0,4,5,7],mainli:4,facter_:[3,6],jid:9,overlord:[],group:[0,1,2,3,4,5,6,7,8,9],monitor:8,polici:3,yaml:[2,4,6,1,7],curli:9,intl:2,mail:[0,1,3,4,5,6,7,8,9],job_statu:[],main:[8,5,6],bounc:[3,6],non:[5,3,6,7],env:0,half:4,now:[0,2,3,4,5,6,8,9],discuss:4,setyp:3,halon_system_timeout:7,term:9,name:[2,1,3,5,6,7,8,9],config:[2,8,6],drop:5,crypto:2,separ:6,arg1:3,laserllama:2,yeah:[],backport:[0,3],facter:[2,4,3,6,9],happen:[8,4],likes_emac:1,shown:5,space:[2,3],infrar:[],profil:8,intermix:2,internet:2,correct:[2,4,6,1],ksmeta:8,lag:3,state:[2,3,4,5,6,7,9],migrat:2,argv:5,args_fil:5,theori:6,org:[0,3,9],care:3,reusabl:5,synchron:6,thing:[0,1,2,4,5,6,7,9],place:2,raleigh:[2,9,7],router:3,think:[2,4,5],frequent:[8,2,4,6],first:[0,2,4,3,6,7,9],origin:0,directli:[5,8,3,6,9],onc:[5,4,3,6,7],yourself:6,fast:2,oppos:9,open:[4,5,6],somegroup:3,given:[4,3,9],args_data:5,convent:[2,8,5],width:2,white:5,especi:[4,6],copi:[2,8,3,9],specifi:[0,1,2,3,4,5,6,9],retyp:0,netmask:3,github:[0,1,2,3,5,6,8],mostli:3,than:[0,1,2,3,4,5,6,9],cmdb:8,wide:4,were:[2,4,6,9],pre:[],sai:[0,2,4,3,6,9],nicer:6,argument:[3,5,6,7,8,9],dash:1,loki:7,sat:4,engin:[],squar:[],alias:3,destroi:3,note:[0,3,5,6,8,9],altogeth:2,ideal:[2,4],take:[5,4,3,6,9],noth:[3,6,1],channel:[0,1,3,4,5,7,8,9],begin:[2,9,1],sure:[7,6,9],normal:[8,9],track:[0,6,9],beta:[],pair:[5,3,1],later:[0,2,3,5,6,7,9],meanwhil:4,runtim:6,show:9,cheat:4,aggregr:5,permiss:[0,9],hack:[0,5,2],help:[0,1,2,3,4,5,6,7,8,9],xml:1,onli:[0,2,3,4,5,6,8,9],explicitli:[3,6],transact:6,enough:[7,4,9],somevar:6,nearli:[3,6,1],variou:[4,3,6],get:[0,1,2,3,4,5,6,9],soon:[],repo:[5,3,9],ssl:[2,4],cannot:3,ssh:[0,2,4,3,6,7,8,9],requir:[0,2,3,4,5,6,8,9],where:[0,2,3,4,5,8],wiki:[],hierachi:[],ansible_product_vers:3,ansible_distribut:3,detect:3,kei:[0,1,2,3,4,5,6,8,9],innov:2,review:[2,4,3],behind:[4,3],ansible_system_vendor:3,between:[2,4,6],"import":[2,8,5,6,9],across:4,cycl:[0,2],come:[2,5],timmi:6,contract:8,tutori:[2,5],mani:[5,8,3,6,9],setenforc:6,among:4,color:[5,6],overview:1,inspir:[2,4],featur:[0,4,6,2],colon:[7,6],homebrew:0,poll:[2,6,9],coupl:4,rebuild:[],rubi:[1,3,4,5,6,9],those:[4,3,6,7,8,9],"case":[2,5,4,3,9],md5sum:3,straighten:4,trick:[2,6],cobbler:[8,2,4],newhost:3,stdout:8,worri:4,destin:3,myapp:9,chkconfig:3,http_port:[7,6],develop:[0,1,2,3,4,5,6],ansible_architectur:3,author:2,same:[0,1,6,7,8,9],html:4,pad:[],pai:9,document:[1,4,5,6,8,9],week:2,webserv:[2,3,6,7,8,9],nest:[5,3,6],driven:[2,8],capabl:[],fruit:1,interventori:[],improv:5,extern:[2,8,6],appropri:[8,4,3,9],without:[4,5],model:[2,6],dereferenc:[],execut:[2,3,4,5,6,8,9],when:[0,2,3,4,5,6,8,9],rest:[],kill:6,versu:[0,2],trigger:[4,3,6],except:5,littl:[8,2,4],otherus:9,blob:8,notori:4,vulner:4,real:0,around:[0,4],ohai:[2,4,3,6,9],read:[0,1,2,5,8,9],dark:8,world:[0,4],intel:3,integ:3,server:[2,4,3,6,9],either:[8,7,4,3,6],output:[8,5,4,3,6],manag:[0,1,2,3,4,5,6,7,8,9],sneaker:[],titan:7,ansible_processor:3,noon:2,definit:6,legal:[5,6],moon:7,exit:[8,5],complic:[2,4],refer:[8,3,6,9],ansible_swaptotal_mb:3,power:[8,0,4,6,2],fulli:[0,3],"throw":4,src:[2,8,3,6,9],stone:5,central:[2,4],acm:9,srv:[8,3,6,9],industri:[2,4],mytempl:3,effici:[4,6],terminolog:8,somescript:3,multinod:4,your:[0,2,3,4,5,6,7,8,9],stare:5,log:[5,4,3,6],area:4,aren:[7,4],start:[0,1,2,4,3,6,7,8,9],interfac:4,low:3,lot:[2,5,9],ipv6:3,congratul:0,strawberri:1,dirti:3,possibl:[7,8,5,6,9],"default":[0,2,4,3,6,7,9],ansible_fact:5,stacktrac:5,connect:[4,6],tasti:1,uid:3,creat:[0,2,4,3,6,8,9],certain:[2,4,3,6],strongli:[2,4],deferenc:[],file:[0,1,2,3,5,6,7,8,9],again:[4,5,6],googl:[0,1,2,3,4,5,6,7,8,9],compel:[],orient:[2,6],valid:5,you:[0,1,2,3,4,5,6,7,8,9],external_var:6,poor:5,sequenc:2,symbol:3,"60k":[2,4],directori:[5,3,6,1,9],invest:4,descript:[3,6],chown:3,potenti:2,cpu:3,all:[0,1,2,3,4,5,6,7,8,9],consider:8,selinux:[3,6],lack:2,month:0,abil:4,follow:[0,4,3,6,7,8,9],alt:2,scp:9,nors:7,dehaan:2,mcollect:[],arbitari:1,introduc:[],liter:3,"1pm":2,fals:[6,1],fall:6,veri:[2,4,3,6,8,9],condition:6,list:[0,1,2,3,4,5,6,7,8,9],sane:4,stderr:5,small:[2,4,6,1],testuser2:6,testuser1:6,enterpris:0,zero:5,design:[2,4,9,7],pass:[0,3,5,6,8,9],further:[2,4,6,1],deleg:4,sub:2,section:[0,2,3,6,7,9],abl:[],delet:[3,9],abbrevi:1,version:[9,0,3,6,2],"public":6,hasn:4,full:[2,6],themselv:6,shouldn:[4,6],modifi:5,valu:[2,1,3,5,6,8,9],ahead:6,likin:4,memcach:6,prior:[3,6],amount:8,pick:[4,9],action:[2,8,3,6],via:[0,8,2],shorthand:[2,5,6],managememnt:2,href:[],select:[2,5,3,6,7],distinct:2,two:[2,8,3,6,7],rhel:[0,2],virt:[2,3],taken:[4,6],kick:[4,6,9],more:[0,2,4,3,6,7,9],flat:6,desir:[2,5,3,6],flag:[],particular:[2,3,6,7,8,9],known:3,compani:4,cach:3,none:[8,3],pkgbuild:0,hous:2,dev:4,remain:2,learn:[0,1,2,4,5,6,7],prompt:[2,6,9],yamllint:1,moduledev:[],accept:[5,3],minimum:[5,6],explor:[0,8],cours:[4,6],newlin:[],secur:[2,4,3,6],rather:[4,3,6],anoth:[4,3,6,1,9],simpl:[2,1,4,6,8,9],distro:8,resourc:[2,4,3,6],referenc:[7,6],variant:0,ff0000:5,neccesssari:2,unlink:3,associ:1,"short":[7,0,4,6,2],rotat:6,xmpp:4,mission:2,uvh:0,through:[0,3,9,2],hierarchi:4,fff:[],suffer:4,paramet:[5,3,6],style:5,pend:[],rapidli:8,might:[8,5,6],wouldn:[8,4],good:[8,2,4,5,6],"return":[8,2,5,4,3],food:1,framework:[8,2,4],botnet:[2,4],odin:7,unlik:[4,6],easili:[0,2,4,6,8,9],achiev:5,found:[8,5,6],only_if:6,id_rsa:[0,9],subsystem:[2,4,3],harm:[],mental:4,hard:4,idea:[0,1,2,3,4,5,6,7,8,9],crontab:6,realli:[2,1,3,4,5,6],expect:[8,6],variablenam:3,beyond:6,event:[5,4,3,6],safeti:[],bubbl:[3,6],print:[8,5],qualifi:3,proxi:7,advanc:[8,4,6],pub:9,reason:[8,4,5,6],base:[2,4,6],believ:4,ask:[9,0,4,6,2],bash:[0,4,5,9],basi:6,pyyaml:0,sytem:4,launch:6,ansible_system:3,assign:[2,8,6,7],feed:[],major:8,notifi:[4,5,6,9],obviou:2,feel:1,exchang:6,number:[2,3,7],placehold:6,done:[0,4,3,6,7],stabl:0,differ:[0,2,4,3,6,8,9],list_vm:3,guest:3,script:[2,3,4,5,6,8,9],interact:9,construct:[8,4],camelot:6,make_databas:3,statement:[5,6],banana:[],store:[8,3],option:[0,3,4,5,8,9],part:[2,4,3],pars:[4,5],reinstal:2,kind:[4,5],grep:[],remot:[0,2,4,3,6,9],remov:[3,6,9],reus:[2,6],architect:2,str:5,jvmdhw:3,toward:6,comput:4,seth:4,packag:[0,2,3,4,5,6,9],imagin:6,createhom:3,equival:6,self:5,centos6:8,build:[8,0,4,5],brace:9,distribut:[0,4,2],passwd:3,choos:[3,6],reach:2,most:[2,1,4,3,6,9],plai:[2,3,6],plan:4,alpha:3,cover:[8,2,4,9],clojur:5,clean:4,latest:[0,3,6,9],awesom:[2,3,6],ansible_processor_count:3,alphanumer:3,devolv:2,mpd_ring:[],particularli:[2,6],fine:[4,5],find:[8,5,6],impact:4,firewal:2,pretti:[8,4,6],solut:4,olympu:7,yml:6,remedi:2,long_running_oper:9,financ:2,restart:[7,4,3,6,9],mdehaan:[3,9],dollar_sign_syntax:6,common:[2,5,6,1],wrote:5,set:[0,2,3,4,5,6,7,9],dump:5,see:[0,1,2,3,4,5,6,7,8,9],sec:6,arg:5,disadvantag:2,setsebool:6,expert:4,someth:[8,4,5,6],restructur:6,experi:4,altern:[6,9],solo:[],numer:[],aserv:0,solv:2,popul:8,both:[2,4,5,6,9],last:[0,2],delimit:3,thor:7,context:3,whole:4,load:[],simpli:[3,6],point:[8,6],header:7,shutdown:[3,6],suppli:3,asdf:7,backend:2,devic:3,due:[0,4,5,2],empti:8,ran:2,escape_pod:7,wish:[0,8,3,6,1],fire:[2,4,6],imag:2,great:[2,4,5,6],gap:4,understand:5,func:[2,4],educ:5,look:[2,3,4,5,6,7,9],straight:9,batch:[2,4],"while":[2,4,6],unifi:2,match:[5,6],facter_hostnam:[6,9],error:[5,4,3,6],cleanup:6,loop:[2,6],pack:8,pragmat:2,motd:[8,6,9],max_client:6,readm:5,jpg:[],itself:[8,0,4],cento:[0,3,6,2],fedora:0,minim:[0,5],shorter:5,higher:[2,6],painless:2,temporari:[],user:[2,4,3,6,8,9],yesterdai:2,built:[8,0,4,6,9],lower:[4,5],task:[2,4,6,9],older:3,entri:2,spent:4,expens:8,spend:4,explan:5,amp:[0,8],love:[],also:[0,1,2,3,4,5,6,7,8,9],async_wrapp:5,appli:[7,3,6],input:[2,5,6],bin:[0,3,5,6,7,8,9],march:5,format:[2,1,4,3,6,7,9],folk:5,judgement:3,nginx:3,game:2,quest:6,bit:[4,3,6],name_of_fact:6,capital_of_assyria:[],signal:4,manifest:4,api:[8,2,5,4,3],popular:2,often:[8,2,4],simplifi:[6,9],creation:9,some:[0,2,3,4,5,6,7,8,9],back:[0,4,6,9],scale:[2,4],per:8,larg:4,machin:[2,3,4,5,6,9],previou:6,run:[0,1,2,3,4,5,6,7,8,9],step:[2,4,3,6],squeez:3,meantim:4,impor:[],othervar:[],ansible_eth0:3,block:6,primarili:3,pythonpath:[],within:[7,4,3,6],ensur:[2,4,3,6,9],chang:[0,2,3,5,6,9],bserver:0,few:6,question:[0,1,2,3,4,5,6,7,8,9],submit:[2,4],custom:[2,4,6],includ:[2,3,5,6,8,9],suit:[4,6],datastructur:8,host5:8,foosbal:3,lint:1,link:[5,3],newer:0,line:[0,1,2,3,4,5,6,7,8,9],info:[2,8,3,9],caller:3,planet:2,highlight:[],similar:[8,3,6,9],curv:[2,4],parser:5,doesn:[2,8,9,1],repres:[8,6,1],chat:[0,1,2,3,4,5,7,8,9],coder:4,crypt:[3,9],chgrp:3,bracket:7,librari:[5,3,1],peopl:[2,7],nice:[2,6],asciidoc:[],meaning:3,far:[2,9,1],hello:0,jupit:7,pluggabl:[2,4],code:[0,2,3,4,5,6,8,9],async_statu:9,privat:6,sensit:[2,6],elsewher:9,friendli:2,autostart:3,sens:3,blindingli:2,sent:5,logtre:3,signfic:5,implicitli:4,relev:[4,5],recip:0,magic:[4,5,6],ansible_kernel:3,michael:2,"try":[8,2,4,5,6],pleas:[8,0,4],malici:4,natur:[2,6],download:[0,2],append:3,compar:[2,4],access:[2,3,9],can:[0,1,2,3,4,5,6,7,8,9],chose:[],let:[0,1,2,3,5,6,8,9],ubuntu:3,sinc:[2,8,3,9],convert:5,hypervisor:3,technolog:2,typic:[4,9],employe:[4,1],win:[],app:4,apt:[2,3,9],"boolean":1,cloud:4,from:[0,1,2,3,4,5,6,8,9],usa:7,commun:[8,4],doubl:9,upgrad:[3,9],next:[0,6],ansible_python_vers:3,usr:[0,3,5,6,7,8,9],sort:4,dbserver:[7,6],about:[0,1,2,3,4,5,6,9],train:4,starter:[5,6],account:[0,3,6,9],tunnel:2,alia:[7,3],alic:6,fetch:[2,3],proof:5,control:[2,3,4,5,6,8,9],tar:[0,3],process:[2,4,3,6,9],lock:[4,6],sudo:[9,0,4,6,2],high:[5,9],knows_oop:1,tag:[0,3,2],tab:6,tarbal:3,onlin:1,surfac:[2,4],lame:1,lepton:5,subdirectori:3,wolf:8,panic:6,stock:[],express:[2,1,5,6,7,8],gentoo:[0,2],attent:9,tier:[2,6],ansible_host:0,orchestr:[2,4,6],correspond:3,element:8,issu:[0,4,2],allow:[2,3,4,5,6,8,9],move:[3,6],elit:1,comma:3,release_vers:[],bunch:7,taboot:4,infrastructur:[7,0,4,6,2],anyon:4,ansible_product_uuid:3,dag:4,greater:7,python:[0,1,2,3,4,5,6,8,9],auto:[8,5],dai:4,devel:0,mention:6,rubygem:9,instead:[4,3,6,9],strive:5,multiprocess:4,anyth:[8,5,4,3],edit:[0,8,3],mode:[2,4,3,6,9],grok:2,bump:0,our:[2,9,1],patch:4,some_serv:7,out:[2,3,4,5,6,8,9],variabl:[2,3,4,5,6,7,8,9],reboot:[3,6,9],rel:3,"_default":3,ref:[],dive:6,red:[8,2,4,5,9],clarifi:[],insid:[7,6],manipul:[3,9],ansible_machin:3,dictionari:[8,5,6,1],releas:[0,4,3,6,2],indent:1,could:[8,4,5,6],put:[9,0,3,6,7],fqdn:[],keep:[0,8,5,6],adrian:4,retain:4,stuck:6,localdomain:3,softwar:[2,4,3,6,8,9],qualiti:5,scene:3,echo:[0,8,6,9],date:[0,5],puppet:[8,2,4],owner:[3,9],prioriti:3,"long":[0,2,4,3,6,8,9],ansible_lo:3,perfectli:0,mkdir:9,system:[0,2,3,4,5,6,7,8,9],messag:[8,5,4,3],attack:[2,4],pattern_goes_her:7,termin:9,"final":3,ipv4:3,shell:[2,3,5,6,8,9],"var":[2,3,6,7],rst:[],exactli:3,daemonless:2,structur:[],charact:[3,1],favorit:[2,6],sysadmin:4,ansible_processor_cor:3,have:[0,1,2,3,4,5,6,7,8,9],close:[2,5],need:[0,1,2,3,4,5,6,7,8,9],turn:[2,4,5,6],border:[],paramiko:0,cellspac:[],mix:[7,3,6],baisc:[],which:[0,1,2,4,3,6,7,8],datacent:6,with_item:6,divers:2,singl:[8,4,6,9],unless:[4,3,6],deploy:[9,0,4,6,2],who:[2,8],discov:[2,6],deploi:[2,4,3,6,9],comparison:[2,4],why:2,serol:3,gather:[4,3],request:3,pipe:9,snapshot:3,fact:[2,3,4,5,6,9],text:2,verbos:[5,3],bring:[4,6],playbook:[0,1,2,3,4,5,6,7,8,9],trivial:[0,8,3,2],anywai:7,varnam:6,redirect:9,locat:[3,6],tire:4,should:[0,1,2,3,4,5,8],ansible_swapfree_mb:3,won:[6,9],suppos:[5,6],"5px":[],local:[2,4,3,6],contribut:[0,9,2],pull:[8,2,4],familiar:8,autom:[4,9],increas:6,ansible_ssh_port:7,enabl:[4,3],organ:3,sha:3,stuff:9,integr:[2,8,3],contain:[2,5,4,3,6],view:2,legaci:3,nodeinfo:3,skynet:3,statu:[5,3,6,9],extend:[2,4,6],pattern:[0,2,6,7,8,9],written:[0,2,5,6,8,9],progress:[],email:2,ansible_ssh_host_key_dsa_publ:3,job:[9,1],entir:[7,4,5,6],webapp:[4,9],"2pm":2,addit:[2,5,8,3,6],revers:[2,3],southeast:7,admin:[2,8],goal:[6,9],equal:[4,5,9],ohai_foo:9,etc:[0,2,4,3,6,7,8,9],instanc:6,comment:[5,3],english:3,guidelin:5,chmod:[5,8,3,6],distil:4,rpm:[0,5,2],quit:5,pin:3,platform:[4,3,6],decent:[],compos:6,compon:2,json:[2,1,3,4,5,6,8,9],besid:5,treat:[4,5],ungroup:7,immedi:3,"2677m":3,yournam:[6,9],capistrano:[2,4],vmware:3,togeth:[],ador:2,atlanta:[7,8,6,9],present:[2,3,6],authorized_kei:0,multi:[2,4,6],plain:2,align:[],ansible_virtualization_typ:3,defin:[2,8,3,6,7],layer:[8,4],almost:[4,3],demo:9,site:4,lightweight:8,revis:0,michaeldehaan:[],surprisingli:6,welcom:[2,8],cross:4,member:[3,1],handl:[5,4,3,6],probabl:[0,4,5,6],ansibl:[0,1,2,3,4,5,6,7,8,9],difficult:4,http:[2,8,3],hostnam:[7,8,3,6],denot:[7,3,6],effect:[],libvirt:3,php:9,distutil:0,audit:[2,6],off:[2,4,6],well:[0,2,3,4,5,6,8,9],exampl:[0,1,2,3,4,5,6,7,8,9],command:[0,2,3,4,5,6,7,8,9],filesystem:[3,6],undefin:3,usual:9,lest:2,paus:3,less:[0,4,2],additon:0,heavili:4,skill:1,simultan:9,web:[8,2,4,6,9],add:[0,3,4,5,6,8,9],host4:8,host3:[7,8],host2:[7,8],host1:[7,8],smart:9,rememb:9,xmlrpc:8,dest:[8,3,6,9],piec:8,know:[1,3,4,5,7,8],nor:3,password:[0,4,3,6,9],recurs:[3,9],python3:0,python2:0,loss:4,motorola:2,like:[0,1,2,3,4,5,6,7,8,9],success:[5,3],necessari:[3,9],lose:9,async:[4,6],architectur:[2,4],page:[0,4,9,1,2],ansible_hostnam:[3,9],shed:4,didn:[4,9],captur:5,linux:[0,4,3,2],"export":0,home:3,transport:[2,4],tmp:[8,3,9],lead:4,avoid:[0,3,9,2],thank:4,overlap:2,leav:[5,6],encourag:4,slight:8,importerror:5,usag:[5,4,3,6,9],symlink:[0,3],vhost:6,host:[0,2,3,4,5,6,7,8,9],although:5,simpler:[4,9],sbin:[3,6,9],actual:[2,5,4,3,6],disabl:6,ntp_server:[7,9],own:[2,3,4,5,6,8],automat:[2,5,8,3,9],pitfal:[2,5],hang:6,merg:[4,5],transfer:[2,5,9],appl:1,replac:[],hassl:2,individu:7,simplejson:[0,5,3],subscrib:2,continu:5,bug:[0,2],succe:5,made:[2,5,4,3,6],whether:[8,5,4,3],arg2:3,asynchron:[2,6],record:[7,1],below:[0,8,3,6],limit:[9,2,6,7],otherwis:[5,3],problem:[2,4,1],epel:[0,2],evalu:[6,9],is_favcolor_blu:6,filenam:6,implement:[8,4,5,6],ini:7,inc:3,boot:3,detail:[2,8,9],virtual:[3,6],other:[0,1,2,3,4,5,6,8,9],futur:[2,5,4,3],branch:[0,3,7],varieti:[4,5],repeat:6,"class":[2,8,6],debian:[0,3,6,2],stai:[0,6],sphinx:[],scientif:0,reliabl:4,rule:[2,6,9],portion:[7,3],emerg:2,name_of_host:6},objtypes:{},titles:["Downloads & Getting Started","YAML Syntax","The Future Is Now","Ansible Modules","Frequently Asked Questions","Module Development Guide","Playbooks","The Inventory File, Patterns, and Groups","API & Integrations","Command Line Examples"],objnames:{},filenames:["gettingstarted","YAMLSyntax","index","modules","faq","moduledev","playbooks","patterns","api","examples"]}) \ No newline at end of file From 2673b4b8a492d3541113bb4b509917ba9a2964bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20N=C3=A9ri?= Date: Sat, 12 May 2012 22:22:43 +0300 Subject: [PATCH 223/416] Remove outdated note about apt module --- rst/modules.rst | 4 ---- 1 file changed, 4 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index ba4663bc8cd..33fb3629277 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -73,10 +73,6 @@ Example action from Ansible :doc:`playbooks`:: apt pkg=foo=1.00 state=installed apt pkg=nginx state=latest default-release=squeeze-backports update-cache=yes - -NOTE: the apt module cannot currently request installation of a specific software version, as the yum -module can. This should be available in a future release. - .. _command: command From 49945661242cc5bacaf831419a3957576a714c0e Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sun, 13 May 2012 11:00:02 -0400 Subject: [PATCH 224/416] Various docs reorg and additions --- YAMLSyntax.html | 9 +- api.html | 13 +- examples.html | 21 +-- faq.html | 13 +- genindex.html | 9 +- gettingstarted.html | 23 +-- index.html | 41 ++--- moduledev.html | 17 +- modules.html | 19 ++- patterns.html | 27 ++-- playbooks.html | 285 +++------------------------------ rst/examples.rst | 4 +- rst/faq.rst | 35 ++-- rst/gettingstarted.rst | 4 +- rst/index.rst | 1 + rst/moduledev.rst | 4 +- rst/patterns.rst | 4 +- rst/playbooks.rst | 289 ++------------------------------- rst/playbooks2.rst | 352 +++++++++++++++++++++++++++++++++++++++++ search.html | 9 +- searchindex.js | 2 +- 21 files changed, 522 insertions(+), 659 deletions(-) create mode 100644 rst/playbooks2.rst diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 1420656a658..50ebe55ca7c 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -129,14 +129,15 @@ s.parentNode.insertBefore(ga, s); Chapter diff --git a/api.html b/api.html index 6add0c3e5f6..e00b261f2a1 100644 --- a/api.html +++ b/api.html @@ -27,8 +27,8 @@ - - + + - + - + - + - - + + - + - + + + + + + + + + + + + + + + + + + + + + +Fork me on GitHub + + +
    + Ansible
    +
    + +
    +

    Best Practices

    +

    Here are some tips for making the most of Ansible.

    +
    +

    Group By Roles

    +

    A system can be in multiple groups. See ref:patterns. Having groups named after things like +‘webservers’ and ‘dbservers’ is repeated in the examples because it’s a very powerful concept.

    +

    This allows playbooks to target machines based on role, as well as to assign role specific variables +using the group variable system.

    +
    +
    +

    Directory Organization

    +

    Playbooks should be organized like this:

    +
    (root of source control repository)
    +
    +    acme/           # each playbook has a directory
    +
    +        setup.yml   # playbook to manage the service
    +        stop.yml    # playbook to halt the service (optional)
    +
    +        files/
    +           some_file_path_foo.conf
    +
    +        templates/
    +           etc_acme_conf_acme.conf
    +           etc_other_conf_other.conf
    +
    +        vars/
    +           main.yml
    +
    +        handlers/
    +           main.yml
    +
    +        tasks/
    +           setup.yml
    +           stop.yml
    +
    +

    Any directories or files not needed can be omitted. Not all modules may require vars or files sections, though most +will require handlers, tasks, and templates. To review what each of these sections do, see ref:playbooks and ref:playbooks2.

    +

    The acme/setup.yml playbook would be as simple as:

    +
    ----
    +
    +- hosts: webservers
    +  user: root
    +
    +  vars_files
    +    - include: vars/main.yml
    +  tasks:
    +    - include: tasks/setup.yml
    +  handlers:
    +    - include: handlers/main.yml
    +
    +

    The tasks are individually broken out in ‘acme/tasks/setup.yml’, and handlers, which are common to all task files, +are contained in ‘acme/handlers/main.yml’. As a reminder, handlers are mostly just used to notify services to restart +when things change, and these are described in ref:playbooks.

    +

    Including more than one setup file or more than one handlers file is of course legal.

    +

    Having playbooks be able to include other playbooks is coming in release 0.5.

    +

    Until then, to manage your entire site, simply execute all of your playbooks together, in the order desired. +You don’t have to do this though, it’s fine to select sections of your infrastructure to manage at a single time. +You may wish to construct simple shell scripts to wrap calls to ansible-playbook.

    +
    +
    +

    Miscellaneous Tips

    +

    When you can do something simply, do something simply. Do not reach to use every feature of Ansible together, all +at once. Use what works for you. For example, you should probably not need ‘vars’, ‘vars_files’, ‘vars_prompt’ and ‘–extra-vars’ all at once, while also using an external inventory file.

    +

    Optimize for readability. Whitespace between sections of YAML documents and in between tasks is strongly encouraged, +as is usage of YAML comments, which start with “#”. It is also useful to comment at the top of each file the purpose of the individual file and the author, including email address.

    +

    It is possible to leave off the “name” for a given task, though it is recommended to provide +a descriptive comment about why something is being done instead.

    +

    Use version control. Keep your playbooks and inventory file in git (or another version control system), and commit when you make changes to them. +This way you have an audit trail describing when and why you changed the rules automating your infrastructure.

    +

    Resist the urge to write the same playbooks and configuration files for heterogeneous distributions. While lots of software packages claim to make this easy on you, the configuration files are often quite different, to the point where it would be easier to treat them as different playbooks. This is why, for example, Ansible has a seperate ‘yum’ and ‘apt’ module. Yum and apt have different capabilities, and we don’t want to code for the least common denominator.

    +

    Use variables for user tunable settings versus having constants in the tasks file or templates, so that it is easy to reconfigure a playbook. Think about this as exposing the knobs to things you would like to tweak.

    +

    Since a system can be in more than one group, if you have multiple datacenters or sites, consider putting systems into groups by role, but also different groups by geography. This allows you to assign different variables to different geographies.

    +
    +

    See also

    +
    +
    YAML Syntax
    +
    Learn about YAML syntax
    +
    Playbooks
    +
    Review the basic playbook features
    +
    Ansible Modules
    +
    Learn about available modules
    +
    Module Development
    +
    Learn how to extend Ansible by writing your own modules
    +
    Inventory & Patterns
    +
    Learn about how to select hosts
    +
    Github examples directory
    +
    Complete playbook files from the github project source
    +
    Mailing List
    +
    Questions? Help? Ideas? Stop by the list on Google Groups
    +
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +

    + + + +

    +

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on May 13, 2012.
    +

    +
    +
    + + \ No newline at end of file diff --git a/playbooks2.html b/playbooks2.html new file mode 100644 index 00000000000..682a458a6b2 --- /dev/null +++ b/playbooks2.html @@ -0,0 +1,509 @@ + + + + + + + + Advanced Playbooks — Ansible - SSH-Based Configuration Management & Deployment + + + + + + + + + + + + + + + + + + + + + + + + + +Fork me on GitHub + + +
    + Ansible
    +
    + +
    +

    Advanced Playbooks

    +

    Here are some advanced features of the playbooks language. Using all of these features +are not neccessary, but many of them will prove useful. If a feature doesn’t seem immediately +relevant, feel free to skip it. For many people, the features documented in playbooks will +be 90% or more of what they use in Ansible.

    +
    +

    Accessing Complex Variable Data

    +

    Some provided facts, like networking information, are made available as nested datastructures. To access +them a simple ‘$foo’ is not sufficient, but it is still easy to do. Here’s how we get an IP address using +Ansible 0.4 and later:

    +
    ${ansible_eth0.ipv4.address}
    +
    +

    It is also possible to access variables whose elements are arrays:

    +
    ${somelist[0]}
    +
    +

    And the array and hash reference syntaxes can be mixed.

    +

    In templates, the simple access form still holds, but they can also be accessed from Jinja2 in more Python-native ways if +that is preferred:

    +
    {{ ansible_eth0["ipv4"]["address"] }}
    +
    +
    +
    +

    Accessing Information About Other Hosts

    +

    If your database server wants to check the value of a ‘fact’ from another node, or an inventory variable +assigned to another node, it’s easy to do so within a template or even an action line (note: this uses syntax available in 0.4 and later):

    +
    ${hostvars.hostname.factname}
    +
    +

    NOTE: No database or other complex system is required to exchange data between hosts. The hosts that you +want to reference data from must be included in either the current play or any previous play.

    +
    +
    +

    Magic Variables

    +

    Some variables made available to hosts don’t come from definitions in a playbook, the inventory file, or discovery from the system. There are only two of these, and are used in special cases that many users won’t need.

    +

    groups is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 +syntax to make template source files that vary based on the group membership (or role) of the host:

    +
    {% if 'webserver' in groups %}
    +   # some part of a configuration file that only applies to webservers
    +{% endif %}
    +
    +

    inventory_hostname is the name of the hostname as configured in Ansible’s inventory host file. This can +be useful for when you don’t want to rely on the discovered hostname ansible_hostname or for other mysterious +reasons. Don’t worry about it unless you think you need it.

    +
    +
    +

    Variable File Seperation

    +

    It’s a great idea to keep your playbooks under source control, but +you may wish to make the playbook source public while keeping certain +important variables private. Similarly, sometimes you may just +want to keep certain information in different files, away from +the main playbook.

    +

    You can do this by using an external variables file, or files, just like this:

    +
    ---
    +- hosts: all
    +  user: root
    +  vars:
    +    favcolor: blue
    +  vars_files:
    +    - /vars/external_vars.yml
    +  tasks:
    +  - name: this is just a placeholder
    +    action: command /bin/echo foo
    +
    +

    This removes the risk of sharing sensitive data with others when +sharing your playbook source with them.

    +

    The contents of each variables file is a simple YAML dictionary, like this:

    +
    ---
    +# in the above example, this would be vars/external_vars.yml
    +somevar: somevalue
    +password: magic
    +
    +
    +
    +

    Prompting For Sensitive Data

    +

    You may wish to prompt the user for certain input, and can +do so with the similarly named ‘vars_prompt’ section. This has uses +beyond security, for instance, you may use the same playbook for all +software releases and would prompt for a particular release version +in a push-script:

    +
    ---
    +- hosts: all
    +  user: root
    +  vars:
    +    from: "camelot"
    +  vars_prompt:
    +    name: "what is your name?"
    +    quest: "what is your quest?"
    +    favcolor: "what is your favorite color?"
    +
    +

    There are full examples of both of these items in the github examples/playbooks directory.

    +
    +
    +

    Passing Variables On The Command Line

    +

    In addition to vars_prompt and vars_files, it is possible to send variables over +the ansible command line. This is particularly useful when writing a generic release playbook +where you may want to pass in the version of the application to deploy:

    +
    ansible-playbook release.yml --extra-vars "version=1.23.45 other_variable=foo"
    +
    +
    +
    +

    Conditional Execution

    +

    Sometimes you will want to skip a particular step on a particular host. This could be something +as simple as not installing a certain package if the operating system is a particular version, +or it could be something like performing some cleanup steps if a filesystem is getting full.

    +

    This is easy to do in Ansible, with the only_if clause, which actually is a Python expression. +Don’t panic – it’s actually pretty simple:

    +
    vars:
    +  favcolor: blue
    +  is_favcolor_blue: "'$favcolor' == 'blue'"
    +  is_centos: "'$facter_operatingsystem' == 'CentOS'"
    +tasks:
    +  - name: "shutdown if my favorite color is blue"
    +    action: command /sbin/shutdown -t now
    +    only_if: '$is_favcolor_blue'
    +
    +

    Variables from tools like facter and ohai can be used here, if installed, or you can +use variables that bubble up from ansible (0.3 and later). As a reminder, +these variables are prefixed, so it’s $facter_operatingsystem, not $operatingsystem. Ansible’s +built in variables are prefixed with ansible_. The only_if +expression is actually a tiny small bit of Python, so be sure to quote variables and make something +that evaluates to True or False. It is a good idea to use ‘vars_files’ instead of ‘vars’ to define +all of your conditional expressions in a way that makes them very easy to reuse between plays +and playbooks.

    +
    +
    +

    Conditional Imports

    +

    Sometimes you will want to do certain things differently in a playbook based on certain criteria. +Having one playbook that works on multiple platforms and OS versions is a good example.

    +

    As an example, the name of the Apache package may be different between CentOS and Debian, +but it is easily handled with a minimum of syntax in an Ansible Playbook:

    +
    ---
    +- hosts: all
    +  user: root
    +  vars_files:
    +    - "vars/common.yml"
    +    - [ "vars/$facter_operatingsystem.yml", "vars/os_defaults.yml" ]
    +  tasks:
    +  - name: make sure apache is running
    +    action: service name=$apache state=running
    +
    +

    Note that a variable ($facter_operatingsystem) is being interpolated into the list of +filenames being defined for vars_files.

    +

    As a reminder, the various YAML files contain just keys and values:

    +
    ---
    +# for vars/CentOS.yml
    +apache: httpd
    +somethingelse: 42
    +
    +

    How does this work? If the operating system was ‘CentOS’, the first file Ansible would try to import +would be ‘vars/CentOS.yml’, followed up by ‘/vars/os_defaults.yml’ if that file +did not exist. If no files in the list were found, an error would be raised. +On Debian, it would instead first look towards ‘vars/Debian.yml’ instead of ‘vars/CentOS.yml’, before +falling back on ‘vars/os_defaults.yml’. Pretty simple.

    +

    To use this conditional import feature, you’ll need facter or ohai installed prior to running the playbook, but +you can of course push this out with Ansible if you like:

    +
    # for facter
    +ansible -m yum -a "pkg=facter ensure=installed"
    +ansible -m yum -a "pkg=ruby-json ensure=installed"
    +
    +# for ohai
    +ansible -m yum -a "pkg=ohai ensure=installed"
    +
    +

    Ansible’s approach to configuration – seperating variables from tasks, keeps your playbooks +from turning into arbitrary code with ugly nested ifs, conditionals, and so on - and results +in more streamlined & auditable configuration rules – especially because there are a +minimum of decision points to track.

    +
    +
    +

    Loop Shorthand

    +

    To save some typing, repeated tasks can be written in short-hand like so:

    +
    - name: add user $item
    +  action: user name=$item state=present groups=wheel
    +  with_items:
    +     - testuser1
    +     - testuser2
    +
    +

    The above would be the equivalent of:

    +
    - name: add user testuser1
    +  action: user name=testuser1 state=present groups=wheel
    +- name: add user testuser2
    +  action: user name=testuser2 state=present groups=wheel
    +
    +

    In a future release, the yum and apt modules will use with_items to execute fewer package +manager transactions.

    +
    +
    +

    Selecting Files And Templates Based On Variables

    +

    Sometimes a configuration file you want to copy, or a template you will use may depend on a variable. +The following construct (new in 0.4) selects the first available file appropriate for the variables of a given host, +which is often much cleaner than putting a lot of if conditionals in a template.

    +

    The following example shows how to template out a configuration file that was very different between, say, +CentOS and Debian:

    +
    - name: template a file
    +  action: template src=$item dest=/etc/myapp/foo.conf
    +  first_available_file:
    +    - /srv/templates/myapp/${ansible_distribution}.conf
    +    - /srv/templates/myapp/default.conf
    +
    +
    +
    +

    Asynchronous Actions and Polling

    +

    By default tasks in playbooks block, meaning the connections stay open +until the task is done on each node. If executing playbooks with +a small parallelism value (aka --forks), you may wish that long +running operations can go faster. The easiest way to do this is +to kick them off all at once and then poll until they are done.

    +

    You will also want to use asynchronous mode on very long running +operations that might be subject to timeout.

    +

    To launch a task asynchronously, specify its maximum runtime +and how frequently you would like to poll for status. The default +poll value is 10 seconds if you do not specify a value for poll:

    +
    ---
    +- hosts: all
    +  user: root
    +  tasks:
    +  - name: simulate long running op (15 sec), wait for up to 45, poll every 5
    +    action: command /bin/sleep 15
    +    async: 45
    +    poll: 5
    +
    +
    +

    Note

    +

    There is no default for the async time limit. If you leave off the +‘async’ keyword, the task runs synchronously, which is Ansible’s +default.

    +
    +

    Alternatively, if you do not need to wait on the task to complete, you may +“fire and forget” by specifying a poll value of 0:

    +
    ---
    +- hosts: all
    +  user: root
    +  tasks:
    +  - name: simulate long running op, allow to run for 45, fire and forget
    +    action: command /bin/sleep 15
    +    async: 45
    +    poll: 0
    +
    +
    +

    Note

    +

    You shouldn’t “fire and forget” with operations that require +exclusive locks, such as yum transactions, if you expect to run other +commands later in the playbook against those same resources.

    +
    +
    +

    Note

    +

    Using a higher value for --forks will result in kicking off asynchronous +tasks even faster. This also increases the efficiency of polling.

    +
    +
    +
    +

    Local Playbooks

    +

    It may be useful to use a playbook locally, rather than by connecting over SSH. This can be useful +for assuring the configuration of a system by putting a playbook on a crontab. This may also be used +to run a playbook inside a OS installer, such as an Anaconda kickstart.

    +

    To run an entire playbook locally, just set the “hosts:” line to “hosts:127.0.0.1” and then run the playbook like so:

    +
    ansible-playbook playbook.yml --connection=local
    +
    +

    Alternatively, a local connection can be used in a single playbook play, even if other plays in the playbook +use the default remote connection type:

    +
    hosts: 127.0.0.1
    +connection: local
    +
    +
    +
    +

    Pull-Mode Playbooks

    +

    The use of playbooks in local mode (above) is made extremely powerful with the addition of ansible-pull in the +0.4 release. A script for setting up ansible-pull is provided in the examples/playbooks directory of the source +checkout.

    +

    The basic idea is to use Ansible to set up a remote copy of ansible on each managed node, each set to run via +cron and update playbook source via git. This interverts the default push architecture of ansible into a pull +architecture, which has near-limitless scaling potential. The setup playbook can be tuned to change +the cron frequency, logging locations, and parameters to ansible-pull.

    +

    This is useful both for extreme scale-out as well as periodic remediation. Usage of the ‘fetch’ module to retrieve +logs from ansible-pull runs would be an excellent way to gather and analyze remote logs from ansible-pull.

    +
    +

    See also

    +
    +
    YAML Syntax
    +
    Learn about YAML syntax
    +
    Playbooks
    +
    Review the basic playbook features
    +
    Best Practices
    +
    Various tips about playbooks in the real world
    +
    Ansible Modules
    +
    Learn about available modules
    +
    Module Development
    +
    Learn how to extend Ansible by writing your own modules
    +
    Inventory & Patterns
    +
    Learn about how to select hosts
    +
    Github examples directory
    +
    Complete playbook files from the github project source
    +
    Mailing List
    +
    Questions? Help? Ideas? Stop by the list on Google Groups
    +
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +

    + + + +

    +

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on May 13, 2012.
    +

    +
    +
    + + \ No newline at end of file From 25d868c65439bdee71f992a51cefbb22601d1d26 Mon Sep 17 00:00:00 2001 From: John Callender Date: Sun, 13 May 2012 17:04:53 -0700 Subject: [PATCH 227/416] minor format and typo edits for the 0.4 doc update. --- rst/bestpractices.rst | 8 ++++---- rst/gettingstarted.rst | 4 ++-- rst/modules.rst | 2 +- rst/playbooks.rst | 2 +- rst/playbooks2.rst | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 96e3ec7748e..ef6f957ccf2 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -6,7 +6,7 @@ Here are some tips for making the most of Ansible. Group By Roles ++++++++++++++ -A system can be in multiple groups. See ref:`patterns`. Having groups named after things like +A system can be in multiple groups. See :doc:`patterns`. Having groups named after things like 'webservers' and 'dbservers' is repeated in the examples because it's a very powerful concept. This allows playbooks to target machines based on role, as well as to assign role specific variables @@ -60,21 +60,21 @@ The acme/setup.yml playbook would be as simple as:: The tasks are individually broken out in 'acme/tasks/setup.yml', and handlers, which are common to all task files, are contained in 'acme/handlers/main.yml'. As a reminder, handlers are mostly just used to notify services to restart -when things change, and these are described in ref:`playbooks`. +when things change, and these are described in :doc:`playbooks`. Including more than one setup file or more than one handlers file is of course legal. Having playbooks be able to include other playbooks is coming in release 0.5. Until then, to manage your entire site, simply execute all of your playbooks together, in the order desired. -You don't have to do this though, it's fine to select sections of your infrastructure to manage at a single time. +You don't have to do this though. It's fine to select sections of your infrastructure to manage at a single time. You may wish to construct simple shell scripts to wrap calls to ansible-playbook. Miscellaneous Tips ++++++++++++++++++ When you can do something simply, do something simply. Do not reach to use every feature of Ansible together, all -at once. Use what works for you. For example, you should probably not need 'vars', 'vars_files', 'vars_prompt' and '--extra-vars' all at once, while also using an external inventory file. +at once. Use what works for you. For example, you should probably not need ``vars``, ``vars_files``, ``vars_prompt`` and ``--extra-vars`` all at once, while also using an external inventory file. Optimize for readability. Whitespace between sections of YAML documents and in between tasks is strongly encouraged, as is usage of YAML comments, which start with "#". It is also useful to comment at the top of each file the purpose of the individual file and the author, including email address. diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index 63732cc31a7..f89cd6377b3 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -60,7 +60,7 @@ to use it:: $ cd ./ansible $ source ./hacking/env-setup -You can optionally specify an inventory file (see doc:`patterns`) other than /etc/ansible/hosts:: +You can optionally specify an inventory file (see :doc:`patterns`) other than /etc/ansible/hosts:: $ echo "127.0.0.1" > ~/ansible_hosts $ export ANSIBLE_HOSTS=~/ansible_hosts @@ -114,7 +114,7 @@ Debian package recipes can be built from the source checkout, run:: make debian An Arch PKGBUILD is available on `AUR `_ -If you have python3 installed on Arch, you probably want to symlink python to python2.:: +If you have python3 installed on Arch, you probably want to symlink python to python2:: sudo ln -sf /usr/bin/python2 /usr/bin/python diff --git a/rst/modules.rst b/rst/modules.rst index 33fb3629277..63cfd683e14 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -335,7 +335,7 @@ Arguments given to 'raw' are run directly through the configured remote shell an only output is returned. There is no error detection or change handler support for this module. -Example from `/usr/bin/ansible` to bootstrap a legacy python 2.4 host: +Example from `/usr/bin/ansible` to bootstrap a legacy python 2.4 host:: ansible newhost.example.com raw -a "yum install python-simplejson" diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 534d229b3b8..a927987e1c3 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -101,7 +101,7 @@ These variables can be used later in the playbook like this:: $varname -In templates, the full power of the Jinja2 templating language is also available, which looks like this: +In templates, the full power of the Jinja2 templating language is also available, which looks like this:: {{ varname }} diff --git a/rst/playbooks2.rst b/rst/playbooks2.rst index 9fac0a77766..ce49c94030a 100644 --- a/rst/playbooks2.rst +++ b/rst/playbooks2.rst @@ -9,7 +9,7 @@ be 90% or more of what they use in Ansible. Accessing Complex Variable Data +++++++++++++++++++++++++++++++ -Some provided facts, like networking information, are made available as nested datastructures. To access +Some provided facts, like networking information, are made available as nested data structures. To access them a simple '$foo' is not sufficient, but it is still easy to do. Here's how we get an IP address using Ansible 0.4 and later:: From 992c2b823482f9a526964446e35573550387cc23 Mon Sep 17 00:00:00 2001 From: Wes Johnson Date: Tue, 15 May 2012 13:03:10 -0700 Subject: [PATCH 228/416] removed '-' from ansible calls --- rst/examples.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rst/examples.rst b/rst/examples.rst index cd1068e326c..37a206a81ee 100644 --- a/rst/examples.rst +++ b/rst/examples.rst @@ -131,7 +131,7 @@ Ensure a package is installed, but don't update it:: Ensure a package is installed to a specific version:: - ansible-webservers -m yum -a "pkg=acme-1.5 state=installed" + ansible webservers -m yum -a "pkg=acme-1.5 state=installed" Ensure a package is at the latest version:: @@ -139,7 +139,7 @@ Ensure a package is at the latest version:: Ensure a package is not installed:: - ansible-webservers -m yum -a "pkg=acme state=removed" + ansible webservers -m yum -a "pkg=acme state=removed" Currently Ansible only has modules for managing packages with yum and apt. You can install for other packages for now using the command module or (better!) contribute a module From b243b8dcbf3de357336abd8a00e31a7a009bed3a Mon Sep 17 00:00:00 2001 From: John Callender Date: Tue, 15 May 2012 18:16:32 -0700 Subject: [PATCH 229/416] Fixing a couple more internal doc links. --- rst/bestpractices.rst | 2 +- rst/faq.rst | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index ef6f957ccf2..4cba812f71c 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -42,7 +42,7 @@ Playbooks should be organized like this:: stop.yml Any directories or files not needed can be omitted. Not all modules may require `vars` or `files` sections, though most -will require `handlers`, `tasks`, and `templates`. To review what each of these sections do, see ref:`playbooks` and ref:`playbooks2`. +will require `handlers`, `tasks`, and `templates`. To review what each of these sections do, see :doc:`playbooks` and :doc:`playbooks2`. The acme/setup.yml playbook would be as simple as:: diff --git a/rst/faq.rst b/rst/faq.rst index f4159a22daa..ab910a521a0 100644 --- a/rst/faq.rst +++ b/rst/faq.rst @@ -173,7 +173,7 @@ them probably isn't appropriate, which is why ansible-pull exists. This tool is designed for running out of git and cron, and can scale to any number of hosts. Ansible-pull uses local connections versus SSH, but can be easily bootstrapped or reconfigured just using SSH. There is more information -available about this in the ref:`playbooks2` section. The self-bootstrapping +available about this in the :doc:`playbooks2` section. The self-bootstrapping and ease of use are ansible are still retained, even when switching to the pull model. From 72e8a40ccdcbf9b6683a92bbf2dbe99aeca0b86d Mon Sep 17 00:00:00 2001 From: Max Spransy Date: Wed, 16 May 2012 10:39:10 -0500 Subject: [PATCH 230/416] Change neccesssary to necessary --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 732d4a15161..18bbdfab932 100644 --- a/index.html +++ b/index.html @@ -220,7 +220,7 @@ of control. Further, it was designed for deploying multi-node applications from

    Simple & Secure By Default

    -

    Compared with most configuration managememnt tools, Ansible is also much more secure. While most configuration management tools use a daemon, running as root with full access to the system, with its own in-house developed PKI infrastructure, Ansible just uses SSH (and supports sudo as neccesssary). There is no additional attack surface and OpenSSH is one of the most peer reviewed security components out there. +

    Compared with most configuration managememnt tools, Ansible is also much more secure. While most configuration management tools use a daemon, running as root with full access to the system, with its own in-house developed PKI infrastructure, Ansible just uses SSH (and supports sudo as necessary). There is no additional attack surface and OpenSSH is one of the most peer reviewed security components out there. If a central server containing your playbooks are comprimised, your nodes are not – which is NOT the case of these other tools, which can, more or less, turn into a botnet. Our security approach is to avoid writing custom crypto code altogether, and rely on the most secure part of the Linux/Unix subsystem that your machines are already using. There is no PKI subsystem to maintain, which can be a frequent source of problems, particularly when reinstalling or migrating @@ -452,4 +452,4 @@ Puppet Labs, and is now with

    Group By Roles

    -

    A system can be in multiple groups. See ref:patterns. Having groups named after things like +

    A system can be in multiple groups. See Inventory & Patterns. Having groups named after things like ‘webservers’ and ‘dbservers’ is repeated in the examples because it’s a very powerful concept.

    This allows playbooks to target machines based on role, as well as to assign role specific variables using the group variable system.

    @@ -232,17 +232,17 @@ will require handlers, tasks, and templates

    The tasks are individually broken out in ‘acme/tasks/setup.yml’, and handlers, which are common to all task files, are contained in ‘acme/handlers/main.yml’. As a reminder, handlers are mostly just used to notify services to restart -when things change, and these are described in ref:playbooks.

    +when things change, and these are described in Playbooks.

    Including more than one setup file or more than one handlers file is of course legal.

    Having playbooks be able to include other playbooks is coming in release 0.5.

    Until then, to manage your entire site, simply execute all of your playbooks together, in the order desired. -You don’t have to do this though, it’s fine to select sections of your infrastructure to manage at a single time. +You don’t have to do this though. It’s fine to select sections of your infrastructure to manage at a single time. You may wish to construct simple shell scripts to wrap calls to ansible-playbook.

    Miscellaneous Tips

    When you can do something simply, do something simply. Do not reach to use every feature of Ansible together, all -at once. Use what works for you. For example, you should probably not need ‘vars’, ‘vars_files’, ‘vars_prompt’ and ‘–extra-vars’ all at once, while also using an external inventory file.

    +at once. Use what works for you. For example, you should probably not need vars, vars_files, vars_prompt and --extra-vars all at once, while also using an external inventory file.

    Optimize for readability. Whitespace between sections of YAML documents and in between tasks is strongly encouraged, as is usage of YAML comments, which start with “#”. It is also useful to comment at the top of each file the purpose of the individual file and the author, including email address.

    It is possible to leave off the “name” for a given task, though it is recommended to provide @@ -289,7 +289,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/examples.html b/examples.html index d2d5a1069a6..5147ee4b427 100644 --- a/examples.html +++ b/examples.html @@ -382,7 +382,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/faq.html b/faq.html index bfc49e30486..b1c57591d74 100644 --- a/faq.html +++ b/faq.html @@ -386,7 +386,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/genindex.html b/genindex.html index e48bbe290e7..23e3b41d3f2 100644 --- a/genindex.html +++ b/genindex.html @@ -190,7 +190,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 424f04e4047..eb030040855 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -236,7 +236,7 @@ $ git checkout -t origin/devel $ cd ./ansible $ source ./hacking/env-setup
    -

    You can optionally specify an inventory file (see doc:patterns) other than /etc/ansible/hosts:

    +

    You can optionally specify an inventory file (see Inventory & Patterns) other than /etc/ansible/hosts:

    $ echo "127.0.0.1" > ~/ansible_hosts
     $ export ANSIBLE_HOSTS=~/ansible_hosts
    @@ -280,7 +280,7 @@ same version. This is perfectly safe to do.

    make debian

    An Arch PKGBUILD is available on AUR -If you have python3 installed on Arch, you probably want to symlink python to python2.:

    +If you have python3 installed on Arch, you probably want to symlink python to python2:

    sudo ln -sf /usr/bin/python2 /usr/bin/python

    If you would like to package Ansible for Homebrew, BSD, or others, @@ -351,7 +351,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/index.html b/index.html index 732d4a15161..290f62fe9fa 100644 --- a/index.html +++ b/index.html @@ -447,7 +447,7 @@ Puppet Labs, and is now with
    ansible newhost.example.com raw -a "yum install python-simplejson"
    +

    service

    Controls services on remote machines.

    state:

      -
    • Values are started, stopped, or restarted. +
    • Values are started, stopped, reloaded, or restarted. Started/stopped are idempotent actions that will not run commands -unless necessary. restarted will always bounce the service.
    • +unless necessary. restarted will always bounce the service, reloaded +will always issue a reload.

    enabled:

      @@ -493,7 +494,8 @@ Uses chkconfig or updates-rc.d as appropriate.

      Example action from Ansible Playbooks:

      service name=httpd state=started
       service name=httpd state=stopped
      -service name=httpd state=restarted
      +service name=httpd state=restarted +service name=httpd state=reloaded
    @@ -787,7 +789,7 @@ yum pkg=httpd state=installed

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/patterns.html b/patterns.html index 5eb7fc050cc..11712add4ce 100644 --- a/patterns.html +++ b/patterns.html @@ -363,7 +363,7 @@ YAML:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/playbooks.html b/playbooks.html index 8de9e44b384..49eab7912c8 100644 --- a/playbooks.html +++ b/playbooks.html @@ -271,8 +271,8 @@ Just Control-C to kill it and run it again with -K.

    $varname

    In templates, the full power of the Jinja2 templating language is also available, which looks like this:

    -
    -
    {{ varname }}
    +
    {{ varname }}
    +

    The Jinja2 documentation provides information about how to construct loops and conditionals for those who which to use more advanced templating. This is optional and the $varname format still works in template files.

    @@ -471,7 +471,7 @@ Let’s run a playbook using a parallelism level of 10:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 682a458a6b2..006cef63aa6 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -196,7 +196,7 @@ relevant, feel free to skip it. For many people, the features documented in

    Accessing Complex Variable Data

    -

    Some provided facts, like networking information, are made available as nested datastructures. To access +

    Some provided facts, like networking information, are made available as nested data structures. To access them a simple ‘$foo’ is not sufficient, but it is still easy to do. Here’s how we get an IP address using Ansible 0.4 and later:

    ${ansible_eth0.ipv4.address}
    @@ -501,7 +501,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/search.html b/search.html index 397b8941d7b..f371034a11d 100644 --- a/search.html +++ b/search.html @@ -207,7 +207,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 13, 2012.
    + Last updated on May 19, 2012.

    diff --git a/searchindex.js b/searchindex.js index cb3210ce835..b4c9a61abb3 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,forget:[10,11],whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,10,5,6,1],direct:[5,7],chef:[3,5],second:[10,11],blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4],told:7,unpars:4,behavior:6,eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[4,6,7,11],datetim:4,permit:[],aka:10,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,hold:10,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:9,os_default:10,give:2,rpath:3,indic:[6,7],somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],interpol:10,ansible_product_seri:6,bootstrap:[0,5,6,3],credenti:11,greek:8,unpaus:6,maintain:[0,3],environ:[3,6],exclus:10,idontknow:[],order:[3,5,1,7],oper:[3,10,6,7,11],over:[3,5,8,9,10,11],failur:[9,5,4],orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:3,vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],playbooks2:[5,1],logo:3,contend:5,network:[3,5,10],content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[3,5],traceback:4,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,instruct:[0,5,3],alreadi:[0,3,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[9,3,5,10,11],took:5,"80ghz":6,somewhat:9,technic:[9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,abov:[10,9,4,7,11],runner:9,ram:5,mind:[3,5,4],raw:[3,6],aforement:8,seem:[5,10,7],seek:6,client:3,even:[5,7,8,9,10,11],though:[3,1,6,5,4,9],limitless:10,what:[0,1,2,3,4,5,6,7,9,10],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[0,3],doe:[3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],method:9,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],hash:[10,9,4,2],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[8,5,4,11],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[3,5,10],make:[0,1,3,6,5,4,7,8,9,10,11],complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[0,10],speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],deal:4,tho:[],contact:[0,9,6],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[],left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:7,ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,eat:11,surround:11,simul:10,commit:1,produc:4,xyz:6,contriv:[],down:[9,6,7],contrib:4,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],wai:[0,1,3,6,5,4,7,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,9,10,11],gif:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],forc:[0,6],"true":[2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,adopt:5,"abstract":5,fedoraproject:[],exist:[3,5,6,7,9,10,11],door:5,ship:[4,6],check:[10,6,11],self_destruct_countdown:8,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,9,10,11],intend:[4,6],devop:3,intent:[],consid:[4,1,7],faster:[5,10],anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[4,10,5,6,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],condit:[3,10,7],word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,ansible_product_nam:6,prevent:4,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[3,1,6,5,4,7,9,10,11],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[8,7],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],bounc:[6,7],non:[4,6,7,8],env:0,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,halon_system_timeout:8,term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,7,2],ksmeta:9,lag:6,state:[3,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:0,directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[3,5],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[3,9,4],width:3,white:4,especi:[5,10],copi:[3,10,9,6,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],later:[0,3,6,4,7,8,10,11],meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,kei:[0,2,3,6,5,4,7,9,10,11],innov:3,review:[3,1,5,6,7,10],behind:[5,6],ansible_system_vendor:6,between:[3,5,10,1,7],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,featur:[0,1,3,5,7,10],colon:[8,7],inventory_hostnam:10,homebrew:0,poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[6,7,8,9,10,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[],cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,1],same:[0,1,2,7,8,9,10,11],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[5,4],model:[3,5],dereferenc:[],execut:[3,1,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,versu:[0,5,1,3],miscellan:[3,1],trigger:[5,6,7],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],srv:[10,9,6,7,11],industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,congratul:0,strawberri:2,dirti:6,possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],orient:[3,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],consider:9,selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,scp:11,nors:8,dehaan:3,mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[3,1,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],deleg:5,sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,10,11],"public":10,hasn:5,full:[3,10,7],themselv:[],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:7,likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],virt:[3,6],taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,desir:[3,4,6,1,7],flag:[],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,unlink:6,associ:2,"short":[8,0,5,10,3],rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:5,fff:[],suffer:5,paramet:[4,10,6,7],style:4,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,unlik:[5,7],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:8,advanc:[9,3,5,10,7],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],major:9,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,seth:5,packag:[0,1,3,6,5,4,10,11],imagin:[],createhom:6,equival:10,self:[5,4],centos6:9,build:[9,0,5,4],brace:11,distribut:[0,5,1,3],passwd:6,choos:[6,7],reach:[3,1],most:[3,1,2,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,cover:[9,3,5,11],clojur:4,clean:5,latest:[0,6,7,11],awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[4,1],find:[9,4,7],impact:5,firewal:3,pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:10,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[3,10,5,4,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,devic:6,due:[0,5,4,3],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,great:[3,10,5,4],gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,0,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[3,1,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,spend:5,explan:4,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11],async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],folk:4,judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,manifest:5,api:[9,3,4,5,6],popular:3,often:[9,3,5,10,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,larg:5,machin:[3,1,6,5,4,7,11],previou:10,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,few:[],question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,5,4,7,9,10,11],suit:[5,7],datastructur:[9,10],host5:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,librari:[4,6,2],peopl:[3,10,8],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:10,sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:6,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],ansible_kernel:6,michael:3,fewer:10,"try":[9,3,10,5,4],pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,append:6,compar:[3,5],access:[3,10,6,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],convert:4,hypervisor:6,technolog:3,typic:[5,11],employe:[5,2],win:[],app:5,apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5],doubl:11,upgrad:[6,11],next:[0,7],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:5,dbserver:[8,1],about:[0,1,2,3,4,5,6,7,10,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,control:[3,1,6,5,4,7,9,10,11],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,lepton:4,subdirectori:6,wolf:9,panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,3],allow:[3,1,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:5,greater:8,python:[0,2,3,6,5,4,9,10,11],auto:[9,4],dai:5,devel:0,mention:7,rubygem:11,instead:[10,5,6,1,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[3,10,5,6,11],grok:3,bump:0,our:[3,11,2],patch:5,some_serv:8,special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[3,1,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:6,"_default":6,ref:[5,1],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],"var":[3,1,6,7,8,10],rst:[],exactli:6,daemonless:3,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],turn:[3,10,5,4],border:[],paramiko:0,cellspac:[],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],view:3,legaci:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1],ansible_ssh_host_key_dsa_publ:6,job:[11,2],entir:[1,5,4,7,8,10],webapp:[5,11],"2pm":3,addit:[3,6,4,7,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[],distil:5,rpm:[0,4,3],quit:[4,1],pin:6,platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],vmware:6,togeth:1,ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:0,multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],hostnam:[8,10,9,6,7],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],well:[0,1,3,6,5,4,7,9,10,11],exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],add:[0,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6],necessari:[6,11],lose:11,async:[5,10],architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,drop:4,captur:4,linux:[0,5,6,3],"export":0,home:6,transport:[3,5],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,4,9,6,11],pitfal:[3,4],hang:7,merg:[5,4],transfer:[3,4,11],appl:2,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,bug:[0,3],succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],evalu:[10,11],is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,inc:6,boot:6,detail:[3,9,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],branch:[0,6,8],varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:[0,10],sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[]},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,10,5,6,1],direct:[5,7],chef:[3,5],second:[10,11],even:[5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4],told:7,manipul:[6,11],abov:[10,9,4,7,11],eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[4,6,7,11],datetim:4,permit:[],aka:10,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,hold:10,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:9,os_default:10,give:2,rpath:3,indic:[6,7],somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],ansible_product_seri:6,bootstrap:[0,5,6,3],credenti:11,greek:8,unpaus:6,maintain:[0,3],environ:[3,6],exclus:10,idontknow:[],order:[3,5,1,7],oper:[3,10,6,7,11],over:[3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:3,vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[5,1],logo:3,contend:5,network:[3,5,10],content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[3,5],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[9,3,5,10,11],took:5,"80ghz":6,somewhat:9,technic:[9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,runner:9,ram:5,mind:[3,5,4],raw:[3,6],aforement:8,seem:[5,10,7],seek:6,contact:[0,9,6],blue:10,though:[3,1,6,5,4,9],limitless:10,deleg:5,regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[8,5,4,11],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[3,5,10],make:[0,1,3,6,5,4,7,8,9,10,11],complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[0,10],speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[],left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:7,ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,commit:1,produc:4,bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],altogeth:3,"true":[2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,9,10,11],intend:[4,6],devop:3,intent:[],consid:[4,1,7],faster:[5,10],anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[4,10,5,6,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,ansible_product_nam:6,prevent:4,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[8,7],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],drop:4,crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:0,directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[3,5],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,especi:[5,10],copi:[3,10,9,6,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],behind:[5,6],ansible_system_vendor:6,between:[3,5,10,1,7],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[6,7,8,9,10,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[],exist:[3,5,6,7,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,1],same:[0,1,2,7,8,9,10,11],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[5,4],model:[3,5],dereferenc:[],execut:[3,1,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,congratul:0,strawberri:2,dirti:6,possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:8,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4],veri:[3,1,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,10,11],method:9,hasn:5,full:[3,10,7],hash:[10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:7,likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[8,0,5,10,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:5,fff:[],suffer:5,paramet:[4,10,6,7],style:4,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:8,advanc:[9,3,5,10,7],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],major:9,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,9,10,11],packag:[0,1,3,6,5,4,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,choos:[6,7],reach:[3,1],most:[3,1,2,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],filesystem:[10,6],cover:[9,3,5,11],clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[4,1],find:[9,4,7],impact:5,firewal:3,pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:10,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[3,10,5,4,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:6,error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,0,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[3,1,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,5,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,manifest:5,api:[9,3,4,5,6],popular:3,often:[9,3,5,10,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,larg:5,machin:[3,1,6,5,4,7,11],previou:10,run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,ansible_python_vers:6,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,5,4,7,9,10,11],suit:[5,7],datastructur:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[3,5],peopl:[3,10,8],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:10,sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:6,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[9,3,10,5,4],pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,folk:4,turn:[3,10,5,4],compar:[3,5],access:[3,10,6,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4],didn:[5,11],hypervisor:6,technolog:3,later:[0,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,9,10,11],win:[],app:5,apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5],doubl:11,upgrad:[6,11],next:[0,7],few:[],usr:[0,6,4,7,8,9,11],sort:5,dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[3,1,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:5,greater:8,python:[0,2,3,6,5,4,9,10,11],auto:[9,4],dai:5,devel:0,mention:7,rubygem:11,instead:[10,5,6,1,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[3,10,5,6,11],grok:3,bump:0,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[3,1,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:6,"_default":6,ref:[5,1],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:0,mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],view:3,legaci:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],vmware:6,togeth:1,ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:0,multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:10,denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],interpol:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6,8],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6],necessari:[6,11],cellspac:[],async:[5,10],architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,4,9,6,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,11],trigger:[5,6,7],replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:[0,10],sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[]},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file From f7d4b418d59807dd09a2cbb27798f2fab9f1548c Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Sat, 19 May 2012 20:57:34 -0400 Subject: [PATCH 233/416] Docs rebuild --- bestpractices.html | 2 +- examples.html | 4 ++-- faq.html | 2 +- index.html | 4 ++-- searchindex.js | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/bestpractices.html b/bestpractices.html index 4806f6722c6..1ff891fec48 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -216,7 +216,7 @@ using the group variable system.

    stop.yml

    Any directories or files not needed can be omitted. Not all modules may require vars or files sections, though most -will require handlers, tasks, and templates. To review what each of these sections do, see ref:playbooks and ref:playbooks2.

    +will require handlers, tasks, and templates. To review what each of these sections do, see Playbooks and Advanced Playbooks.

    The acme/setup.yml playbook would be as simple as:

    ----
     
    diff --git a/examples.html b/examples.html
    index 5147ee4b427..9611f5fa921 100644
    --- a/examples.html
    +++ b/examples.html
    @@ -283,13 +283,13 @@ ansible webservers -m file -a "dest=/srv/foo/b.txt mode=600 owner=mdehaan group=
     
    ansible webservers -m yum -a "pkg=acme state=installed"

    Ensure a package is installed to a specific version:

    -
    ansible-webservers -m yum -a "pkg=acme-1.5 state=installed"
    +
    ansible webservers -m yum -a "pkg=acme-1.5 state=installed"

    Ensure a package is at the latest version:

    ansible webservers -m yum -a "pkg=acme state=latest"

    Ensure a package is not installed:

    -
    ansible-webservers -m yum -a "pkg=acme state=removed"
    +
    ansible webservers -m yum -a "pkg=acme state=removed"

    Currently Ansible only has modules for managing packages with yum and apt. You can install for other packages for now using the command module or (better!) contribute a module diff --git a/faq.html b/faq.html index b1c57591d74..2ac54d0f174 100644 --- a/faq.html +++ b/faq.html @@ -329,7 +329,7 @@ them probably isn’t appropriate, which is why ansible-pull exists.

    This tool is designed for running out of git and cron, and can scale to any number of hosts. Ansible-pull uses local connections versus SSH, but can be easily bootstrapped or reconfigured just using SSH. There is more information -available about this in the ref:playbooks2 section. The self-bootstrapping +available about this in the Advanced Playbooks section. The self-bootstrapping and ease of use are ansible are still retained, even when switching to the pull model.

    If you’d like to discuss scaling strategies further, please hop on the mailing list.

    diff --git a/index.html b/index.html index 0de9ab423e8..290f62fe9fa 100644 --- a/index.html +++ b/index.html @@ -220,7 +220,7 @@ of control. Further, it was designed for deploying multi-node applications from

    Simple & Secure By Default

    -

    Compared with most configuration managememnt tools, Ansible is also much more secure. While most configuration management tools use a daemon, running as root with full access to the system, with its own in-house developed PKI infrastructure, Ansible just uses SSH (and supports sudo as necessary). There is no additional attack surface and OpenSSH is one of the most peer reviewed security components out there. +

    Compared with most configuration managememnt tools, Ansible is also much more secure. While most configuration management tools use a daemon, running as root with full access to the system, with its own in-house developed PKI infrastructure, Ansible just uses SSH (and supports sudo as neccesssary). There is no additional attack surface and OpenSSH is one of the most peer reviewed security components out there. If a central server containing your playbooks are comprimised, your nodes are not – which is NOT the case of these other tools, which can, more or less, turn into a botnet. Our security approach is to avoid writing custom crypto code altogether, and rely on the most secure part of the Linux/Unix subsystem that your machines are already using. There is no PKI subsystem to maintain, which can be a frequent source of problems, particularly when reinstalling or migrating @@ -452,4 +452,4 @@ Puppet Labs, and is now with Date: Tue, 12 Jun 2012 19:32:42 -0500 Subject: [PATCH 234/416] Adding note about ${vars} Add a note about how it is possible to use ${var} in addition to $var --- rst/playbooks.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rst/playbooks.rst b/rst/playbooks.rst index a927987e1c3..6141c485762 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -99,7 +99,9 @@ The `vars` section contains a list of variables and values that can be used in t These variables can be used later in the playbook like this:: - $varname + $varname or ${varname} + +The later is useful in the event you need to do something like ${other}_concatenated_value. In templates, the full power of the Jinja2 templating language is also available, which looks like this:: From 78c02a9163c2a6c7fdc474196dad6a7a1351d245 Mon Sep 17 00:00:00 2001 From: Alan Orth Date: Thu, 14 Jun 2012 16:45:15 +0300 Subject: [PATCH 235/416] Clarify getting started instructions for git checkouts The default branch is already devel (as of June 14, 2012), so there's no need to check this one out explicitly. Also, it was being checked out before we had even entered the source folder, which was obviously a mistake. --- rst/gettingstarted.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index f89cd6377b3..e050deb5914 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -56,7 +56,6 @@ Ansible is trivially easy to run from a checkout, root permissions are not requi to use it:: $ git clone git://github.com/ansible/ansible.git - $ git checkout -t origin/devel $ cd ./ansible $ source ./hacking/env-setup @@ -77,7 +76,6 @@ If you are not working from a distribution where Ansible is packaged yet, you ca using "make install". This is done through `python-distutils`:: $ git clone git://github.com/ansible/ansible.git - $ git checkout -t origin/devel $ cd ./ansible $ sudo make install From cf3da1bd25e2e6cf1e9406e480dd6f9653dc9196 Mon Sep 17 00:00:00 2001 From: Derek Carter Date: Thu, 14 Jun 2012 13:19:05 -0400 Subject: [PATCH 236/416] vars_files doesn't use include --- rst/bestpractices.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 4cba812f71c..9a7f3f6c0fb 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -52,7 +52,7 @@ The acme/setup.yml playbook would be as simple as:: user: root vars_files - - include: vars/main.yml + - vars/main.yml tasks: - include: tasks/setup.yml handlers: From 73f7416864bfb257f8db228d8c3a312449fc01cd Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 19 Jun 2012 21:22:01 -0400 Subject: [PATCH 237/416] Fix formatting glitch. --- rst/patterns.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rst/patterns.rst b/rst/patterns.rst index 469e053493f..c7e0292d662 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -108,7 +108,7 @@ Groups of Groups, and Group Variables Using Ansible 0.4, it is possible to make groups of groups and assign variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not -/usr/bin/ansible. +/usr/bin/ansible:: [atlanta] host1 From 21381fc53311f0ce75b821811344c3e1b12733ce Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 19 Jun 2012 21:22:27 -0400 Subject: [PATCH 238/416] Rebuild of everything already merged --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 4 ++-- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 4 +--- index.html | 2 +- moduledev.html | 2 +- modules.html | 2 +- patterns.html | 31 +++++++++++++++++-------------- playbooks.html | 5 +++-- playbooks2.html | 2 +- search.html | 2 +- searchindex.js | 2 +- 15 files changed, 34 insertions(+), 32 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index efde3dfa320..09c4a90e28d 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -275,7 +275,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/api.html b/api.html index d3add2cc39b..3b9bcf1c946 100644 --- a/api.html +++ b/api.html @@ -359,7 +359,7 @@ a conf.d file appropriately or something similar. Who knows?

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index 1ff891fec48..7df3a1b3442 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -224,7 +224,7 @@ will require handlers, tasks, and templates

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/examples.html b/examples.html index 9611f5fa921..cfd5badff69 100644 --- a/examples.html +++ b/examples.html @@ -382,7 +382,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/faq.html b/faq.html index 2ac54d0f174..35f79ba8b99 100644 --- a/faq.html +++ b/faq.html @@ -386,7 +386,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/genindex.html b/genindex.html index 23e3b41d3f2..7f02ca20cdc 100644 --- a/genindex.html +++ b/genindex.html @@ -190,7 +190,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index eb030040855..1989a557d7d 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -232,7 +232,6 @@ bugs and feature ideas.

    Ansible is trivially easy to run from a checkout, root permissions are not required to use it:

    $ git clone git://github.com/ansible/ansible.git
    -$ git checkout -t origin/devel
     $ cd ./ansible
     $ source ./hacking/env-setup
    @@ -249,7 +248,6 @@ $ export ANSIBLE_HOSTS=~/ansible_hosts

    If you are not working from a distribution where Ansible is packaged yet, you can install Ansible using “make install”. This is done through python-distutils:

    $ git clone git://github.com/ansible/ansible.git
    -$ git checkout -t origin/devel
     $ cd ./ansible
     $ sudo make install
    @@ -351,7 +349,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/index.html b/index.html index 290f62fe9fa..60065527892 100644 --- a/index.html +++ b/index.html @@ -447,7 +447,7 @@ Puppet Labs, and is now with

    Using Ansible 0.4, it is possible to make groups of groups and assign variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not -/usr/bin/ansible.

    -
    -

    [atlanta] +/usr/bin/ansible:

    +
    [atlanta]
     host1
    -host2

    -

    [raleigh] host2 -host3

    -

    [southeast:children] + +[raleigh] +host2 +host3 + +[southeast:children] atlanta -raleigh

    -

    [southeast:vars] +raleigh + +[southeast:vars] some_server=foo.southeast.example.com halon_system_timeout=30 self_destruct_countdown=60 -escape_pods=2

    -

    [usa:children] +escape_pods=2 + +[usa:children] southeast northeast southwest -southeast

    -
    +southeast +

    YAML Inventory Format

    @@ -363,7 +366,7 @@ YAML:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/playbooks.html b/playbooks.html index 49eab7912c8..7cb30600cae 100644 --- a/playbooks.html +++ b/playbooks.html @@ -268,8 +268,9 @@ Just Control-C to kill it and run it again with -K.

    These variables can be used later in the playbook like this:

    -
    $varname
    +
    $varname or ${varname}
    +

    The later is useful in the event you need to do something like ${other}_concatenated_value.

    In templates, the full power of the Jinja2 templating language is also available, which looks like this:

    {{ varname }}
    @@ -471,7 +472,7 @@ Let’s run a playbook using a parallelism level of 10:

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 006cef63aa6..7f7cb36e1d6 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -501,7 +501,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/search.html b/search.html index f371034a11d..7f4b2feac81 100644 --- a/search.html +++ b/search.html @@ -207,7 +207,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on May 19, 2012.
    + Last updated on Jun 19, 2012.

    diff --git a/searchindex.js b/searchindex.js index eacb9280daf..44ef510581d 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,forget:[10,11],whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,10,5,6,1],direct:[5,7],chef:[3,5],second:[10,11],blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4],told:7,unpars:4,abov:[10,9,4,7,11],eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[4,6,7,11],datetim:4,permit:[],aka:10,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,hold:10,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:9,os_default:10,give:2,rpath:3,indic:[6,7],somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],interpol:10,ansible_product_seri:6,bootstrap:[0,5,6,3],credenti:11,greek:8,unpaus:6,maintain:[0,3],environ:[3,6],exclus:10,idontknow:[],order:[3,5,1,7],oper:[3,10,6,7,11],over:[3,5,8,9,10,11],failur:[9,5,4],orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:3,vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],playbooks2:[],logo:3,contend:5,network:[3,5,10],content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[3,5],traceback:4,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,instruct:[0,5,3],alreadi:[0,3,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[9,3,5,10,11],took:5,"80ghz":6,somewhat:9,technic:[9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:6,runner:9,ram:5,mind:[3,5,4],raw:[3,6],aforement:8,seem:[5,10,7],seek:6,client:3,even:[5,7,8,9,10,11],though:[3,1,6,5,4,9],limitless:10,what:[0,1,2,3,4,5,6,7,9,10],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],hash:[10,9,4,2],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[8,5,4,11],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[3,5,10],make:[0,1,3,6,5,4,7,8,9,10,11],complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[0,10],speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],deal:4,tho:[],contact:[0,9,6],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[],left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:7,ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,eat:11,surround:11,simul:10,commit:1,produc:4,xyz:6,contriv:[],down:[9,6,7],contrib:4,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],wai:[0,1,3,6,5,4,7,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,9,10,11],gif:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],forc:[0,6],"true":[2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,adopt:5,"abstract":5,fedoraproject:[],exist:[3,5,6,7,9,10,11],door:5,ship:[4,6],check:[10,6,11],self_destruct_countdown:8,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,9,10,11],intend:[4,6],devop:3,intent:[],consid:[4,1,7],faster:[5,10],anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[4,10,5,6,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],condit:[3,10,7],word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,ansible_product_nam:6,prevent:4,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[3,1,6,5,4,7,9,10,11],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[8,7],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],bounc:[6,7],non:[4,6,7,8],env:0,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,halon_system_timeout:8,term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],drop:4,crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,7,2],ksmeta:9,lag:6,state:[3,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:0,directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[3,5],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[3,9,4],width:3,white:4,especi:[5,10],copi:[3,10,9,6,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],later:[0,3,6,4,7,8,10,11],meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,kei:[0,2,3,6,5,4,7,9,10,11],innov:3,review:[3,1,5,6,7,10],behind:[5,6],ansible_system_vendor:6,between:[3,5,10,1,7],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,featur:[0,1,3,5,7,10],colon:[8,7],inventory_hostnam:10,homebrew:0,poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[6,7,8,9,10,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[],cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,1],same:[0,1,2,7,8,9,10,11],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[5,4],model:[3,5],dereferenc:[],execut:[3,1,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,versu:[0,5,1,3],miscellan:[3,1],trigger:[5,6,7],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],srv:[10,9,6,7,11],industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,congratul:0,strawberri:2,dirti:6,possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],orient:[3,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],consider:9,selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,scp:11,nors:8,dehaan:3,mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[3,1,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],deleg:5,sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,10,11],"public":10,hasn:5,full:[3,10,7],themselv:[],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:7,likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],virt:[3,6],taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,desir:[3,4,6,1,7],flag:[],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,unlink:6,associ:2,"short":[8,0,5,10,3],rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:5,fff:[],suffer:5,paramet:[4,10,6,7],style:4,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,unlik:[5,7],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:8,advanc:[3,1,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],major:9,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,seth:5,packag:[0,1,3,6,5,4,10,11],imagin:[],createhom:6,equival:10,self:[5,4],centos6:9,build:[9,0,5,4],brace:11,distribut:[0,5,1,3],passwd:6,choos:[6,7],reach:[3,1],most:[3,1,2,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,cover:[9,3,5,11],clojur:4,clean:5,latest:[0,6,7,11],awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[4,1],find:[9,4,7],impact:5,firewal:3,pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:10,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[3,10,5,4,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,devic:6,due:[0,5,4,3],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,great:[3,10,5,4],gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,0,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[3,1,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,spend:5,explan:4,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11],async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],folk:4,judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,manifest:5,api:[9,3,4,5,6],popular:3,often:[9,3,5,10,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,larg:5,machin:[3,1,6,5,4,7,11],previou:10,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,few:[],question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,5,4,7,9,10,11],suit:[5,7],datastructur:9,host5:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,librari:[4,6,2],peopl:[3,10,8],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:10,sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:6,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],ansible_kernel:6,michael:3,fewer:10,"try":[9,3,10,5,4],pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,append:6,compar:[3,5],access:[3,10,6,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],convert:4,hypervisor:6,technolog:3,typic:[5,11],employe:[5,2],win:[],app:5,apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5],doubl:11,upgrad:[6,11],next:[0,7],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:5,dbserver:[8,1],about:[0,1,2,3,4,5,6,7,10,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,control:[3,1,6,5,4,7,9,10,11],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,lepton:4,subdirectori:6,wolf:9,panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[3,1,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:5,greater:8,python:[0,2,3,6,5,4,9,10,11],auto:[9,4],dai:5,devel:0,mention:7,rubygem:11,instead:[10,5,6,1,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[3,10,5,6,11],grok:3,bump:0,our:[3,11,2],patch:5,some_serv:8,special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[3,1,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:6,"_default":6,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],"var":[3,1,6,7,8,10],rst:[],exactli:6,daemonless:3,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],turn:[3,10,5,4],border:[],paramiko:0,cellspac:[],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],view:3,legaci:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1],ansible_ssh_host_key_dsa_publ:6,job:[11,2],entir:[1,5,4,7,8,10],webapp:[5,11],"2pm":3,addit:[3,6,4,7,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:10,distil:5,rpm:[0,4,3],quit:[4,1],pin:6,platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],vmware:6,togeth:1,ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:0,multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],hostnam:[8,10,9,6,7],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],well:[0,1,3,6,5,4,7,9,10,11],exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],add:[0,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6],necessari:[6,11],lose:11,async:[5,10],architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,didn:[5,11],captur:4,linux:[0,5,6,3],"export":0,home:6,transport:[3,5],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,4,9,6,11],pitfal:[3,4],hang:7,merg:[5,4],transfer:[3,4,11],appl:2,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,bug:[0,3],succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],evalu:[10,11],is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,inc:6,boot:6,detail:[3,9,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],branch:[0,6,8],varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:[0,10],sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[]},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,10,5,6,1],direct:[5,7],chef:[3,5],second:[10,11],even:[5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4],told:7,manipul:[6,11],behavior:6,eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[4,6,7,11],datetim:4,permit:[],aka:10,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,hold:10,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:9,os_default:10,give:2,rpath:3,indic:[6,7],somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],ansible_product_seri:6,bootstrap:[0,5,6,3],credenti:11,greek:8,unpaus:6,maintain:[0,3],environ:[3,6],exclus:10,idontknow:[],order:[3,5,1,7],oper:[3,10,6,7,11],over:[3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:3,vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[3,5],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[9,3,5,10,11],took:5,"80ghz":6,somewhat:9,technic:[9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,runner:9,ram:5,mind:[3,5,4],raw:[3,6],aforement:8,seem:[5,10,7],seek:6,contact:[0,9,6],blue:10,though:[3,1,6,5,4,9],limitless:10,deleg:5,regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[8,5,4,11],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[3,5,10],make:[0,1,3,6,5,4,7,8,9,10,11],complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[0,10],speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[],left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:7,ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,commit:1,produc:4,bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],altogeth:3,"true":[2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,9,10,11],intend:[4,6],devop:3,intent:[],consid:[4,1,7],faster:[5,10],anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[4,10,5,6,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,ansible_product_nam:6,prevent:4,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[8,7],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[3,5],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,especi:[5,10],copi:[3,10,9,6,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],behind:[5,6],ansible_system_vendor:6,between:[3,5,10,1,7],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[6,7,8,9,10,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[],exist:[3,5,6,7,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,1],same:[0,1,2,7,8,9,10,11],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[5,4],model:[3,5],dereferenc:[],execut:[3,1,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,congratul:0,strawberri:2,dirti:6,possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:8,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4],veri:[3,1,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,10,11],method:9,hasn:5,full:[3,10,7],hash:[10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:7,likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[8,0,5,10,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:5,fff:[],suffer:5,paramet:[4,10,6,7],style:4,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:8,advanc:[3,1,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],major:9,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,9,10,11],packag:[0,1,3,6,5,4,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,choos:[6,7],reach:[3,1],most:[3,1,2,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],filesystem:[10,6],cover:[9,3,5,11],clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[4,1],find:[9,4,7],impact:5,firewal:3,pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:10,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[3,10,5,4,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],abov:[10,9,4,7,11],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,0,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[3,1,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,5,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,manifest:5,api:[9,3,4,5,6],popular:3,often:[9,3,5,10,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,larg:5,machin:[3,1,6,5,4,7,11],previou:10,run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,ansible_python_vers:6,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,5,4,7,9,10,11],suit:[5,7],datastructur:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[3,5],peopl:[3,10,8],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:10,sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:6,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[9,3,10,5,4],pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,folk:4,turn:[3,10,5,4],compar:[3,5],access:[3,10,6,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4],hypervisor:6,technolog:3,later:[0,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,9,10,11],win:[],app:5,apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5],doubl:11,upgrad:[6,11],next:[0,7],few:[],usr:[0,6,4,7,8,9,11],sort:5,dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[3,1,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:5,greater:8,python:[0,2,3,6,5,4,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[10,5,6,1,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[3,10,5,6,11],grok:3,bump:0,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[3,1,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:6,"_default":6,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:0,mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],view:3,legaci:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],vmware:6,togeth:1,ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:0,multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:10,denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],interpol:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6,8],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6],necessari:[6,11],cellspac:[],async:[5,10],architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,4,9,6,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,11],trigger:[5,6,7],replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:[0,10],sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[]},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file From 3aefdb0e871f1f582cc7c9cd0e9e74d573479766 Mon Sep 17 00:00:00 2001 From: Derek Carter Date: Thu, 21 Jun 2012 16:50:57 -0400 Subject: [PATCH 239/416] added global vars to best practice --- rst/bestpractices.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 9a7f3f6c0fb..3d1bdf5568f 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -19,6 +19,7 @@ Playbooks should be organized like this:: (root of source control repository) + global_vars.yml # variables for all playbooks acme/ # each playbook has a directory setup.yml # playbook to manage the service @@ -32,7 +33,7 @@ Playbooks should be organized like this:: etc_other_conf_other.conf vars/ - main.yml + main.yml # variables specific to this playbook handlers/ main.yml @@ -52,6 +53,7 @@ The acme/setup.yml playbook would be as simple as:: user: root vars_files + - ../global_vars.yml - vars/main.yml tasks: - include: tasks/setup.yml From c3221f12cc27c43c777cef4f4f4569447d8590cd Mon Sep 17 00:00:00 2001 From: Jonathan Palley Date: Mon, 2 Jul 2012 14:17:21 +0800 Subject: [PATCH 240/416] Add/update documentation about magic variables. --- rst/playbooks2.rst | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/rst/playbooks2.rst b/rst/playbooks2.rst index ce49c94030a..5b9012ff8e4 100644 --- a/rst/playbooks2.rst +++ b/rst/playbooks2.rst @@ -42,14 +42,25 @@ Magic Variables Some variables made available to hosts don't come from definitions in a playbook, the inventory file, or discovery from the system. There are only two of these, and are used in special cases that many users won't need. -`groups` is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 +*group_names* is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 syntax to make template source files that vary based on the group membership (or role) of the host:: - {% if 'webserver' in groups %} + {% if 'webserver' in group_names %} # some part of a configuration file that only applies to webservers {% endif %} -`inventory_hostname` is the name of the hostname as configured in Ansible's inventory host file. This can + +*groups* is a list of all the groups (and hosts) in the inventory. This can be used to enumerate all hosts within a group. +For example:: + + {% for host in groups['app_servers'] %} + # something that applies to all app servers. + {% endfor %} + + +Use cases include pointing a frontend proxy server to all of the app servers, setting up the correct firewall rules between servers, etc. + +*inventory_hostname* is the name of the hostname as configured in Ansible's inventory host file. This can be useful for when you don't want to rely on the discovered hostname `ansible_hostname` or for other mysterious reasons. Don't worry about it unless you think you need it. From 6eb53ad54095d983b7f70b5a4923a899a8238c15 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 4 Jul 2012 17:44:39 -0400 Subject: [PATCH 241/416] misc doc updates for 0.5 --- rst/bestpractices.rst | 6 +++++ rst/faq.rst | 18 +++++++------- rst/gettingstarted.rst | 34 +++++++++++++++++++++++++- rst/index.rst | 5 ++-- rst/modules.rst | 54 +++++++++++++++++++++++++++++++++++++++++- rst/patterns.rst | 15 ++++++++---- rst/playbooks.rst | 15 +++++++++++- 7 files changed, 130 insertions(+), 17 deletions(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 3d1bdf5568f..9ae1a4cae30 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -72,6 +72,12 @@ Until then, to manage your entire site, simply execute all of your playbooks tog You don't have to do this though. It's fine to select sections of your infrastructure to manage at a single time. You may wish to construct simple shell scripts to wrap calls to ansible-playbook. +Bundling Ansible Modules With Playbooks ++++++++++++++++++++++++++++++++++++++++ + +In version 0.5 and later, if a playbook has a "./library" directory relative to it's YAML file, this directory can be used to add ansible modules that will automatically be in the ansible module path. This is a great way to keep modules that +go with a playbook together. + Miscellaneous Tips ++++++++++++++++++ diff --git a/rst/faq.rst b/rst/faq.rst index ab910a521a0..cb6219eb48f 100644 --- a/rst/faq.rst +++ b/rst/faq.rst @@ -50,8 +50,7 @@ vs Func? Ansible uses SSH by default instead of SSL and custom daemons, and requires no extra software to run on managed machines. You can also write modules in any language as long as they return JSON. Ansible's API, of course, is -heavily inspired by Func. Some features, like delegation hierarchies, are -not supported, but Ansible does have an async mode. Ansible also adds +heavily inspired by Func. Ansible also adds a configuration management and multinode orchestration layer (:doc:`playbooks`) that Func didn't have. @@ -70,7 +69,7 @@ There is no central server subject to thundering herd problems, and Ansible is also designed with multi-node deployment in mind from day-one -- something that is difficult for Puppet because of the pull architecture. Ansible is push based, so you can do things in an ordered fashion, addressing batches of servers -at one time, and you do not have to contend with the DAG. It's also extensible in any language +at one time, and you do not have to contend with the dependency graph. It's also extensible in any language and the source is designed so that you don't have to be an expert programmer to submit a patch. Ansible's resources are heavily inspired by Puppet, with the "state" keyword being a more or less @@ -167,10 +166,13 @@ Ansible, it is not consuming any resources, and you don't have to contend with a herd of machines all knocking at the door of your management server all at once. -If you have 10,000 systems, running a single ansible playbook against all of -them probably isn't appropriate, which is why ansible-pull exists. +The SSH connection type (paramiko is the default, binary openssh is an option) +can also make use of "ControlMaster" features in SSH, which reuses network +connections. -This tool is designed for running out of git and cron, and can scale to any +If you have 10,000 systems, running a single ansible playbook against all of +them probably isn't appropriate, which is why ansible-pull exists. This tool +is designed for running out of git and cron, and can scale to any number of hosts. Ansible-pull uses local connections versus SSH, but can be easily bootstrapped or reconfigured just using SSH. There is more information available about this in the :doc:`playbooks2` section. The self-bootstrapping @@ -182,8 +184,8 @@ If you'd like to discuss scaling strategies further, please hop on the mailing l Are transports other than SSH supported? ++++++++++++++++++++++++++++++++++++++++ -Currently SSH and local connections are supported. In 0.5, we'll also be including -a faster SSH transport. The interface is actually pluggable so a +Currently SSH (you can choose between paramiko or the openssh binaries) +and local connections are supported. The interface is actually pluggable so a small patch could bring transport over message bus or XMPP as an option. Stop by the mailing list if you have ideas. The connection-specific parts of Ansible diff --git a/rst/gettingstarted.rst b/rst/gettingstarted.rst index e050deb5914..5b0640d3262 100644 --- a/rst/gettingstarted.rst +++ b/rst/gettingstarted.rst @@ -21,7 +21,7 @@ also need: * ``python-simplejson`` -NOTE: Ansible 0.4 will have ways to remote bootstrap this, using Ansible itself. Stay tuned. +(Note that even that's not quite true. Ansible's "raw" module (for executing commands in a quick and dirty way) and the copy module -- some of the most basic features in ansible don't even need that. So technically, you can use Ansible to install python-simplejson using the raw module, which then allows you to use everything else. That's jumping ahead though.) Python 2.6 EPEL instructions for RHEL and CentOS 5 `````````````````````````````````````````````````` @@ -128,6 +128,24 @@ project page: * `Ansible/downloads `_ +Choosing Between Paramiko and Native SSH +```````````````````````````````````````` + +By default, ansible uses paramiko to talk to managed nodes over SSH. Paramiko is fast, works +very transparently, requires no configuration, and is a good choice for most users. +However, it does not support some advanced SSH features that folks will want to use. + +Starting in version 0.5, if you want to leverage more advanced SSH features (such as Kerberized SSH or jump hosts), +pass the flag "--connection=ssh" to any ansible command, or set the +ANSIBLE_TRANSPORT environment variable to 'ssh'. This will cause Ansible to use openssh +tools instead. + +If ANSIBLE_SSH_ARGS are not set, ansible will try to use some sensible ControlMaster options +by default. You are free to override this environment variable, but should still pass ControlMaster +options to ensure performance of this transport. With ControlMaster in use, both transports +are roughly the same speed. Without CM, the binary ssh transport is signficantly slower. + +If none of this makes sense to you, the default paramiko option is probably fine. Your first commands ``````````````````` @@ -146,10 +164,24 @@ Set up SSH agent to avoid retyping passwords:: ssh-agent bash ssh-add ~/.ssh/id_rsa +(Depending on your setup, you may wish to ansible's --private-key-file option to specify a pem file instead) + Now ping all your nodes:: ansible all -m ping +If you want to access machines remotely as a different user than root, you will want to +specify the '-u' option to ansible. If you would like to access sudo mode, there are also flags to do that:: + + # as bruce + ansible all -m ping -u bruce + + # as bruce, sudoing to root + ansible all -m ping -u bruce --sudo + + # as bruce, sudoing to batman + ansible all -m ping -u bruce --sudo --sudo-user batman + Now run a live command on all of your nodes:: ansible all -a "/bin/echo hello" diff --git a/rst/index.rst b/rst/index.rst index 0df8e2758e8..d23ef4b6188 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -6,8 +6,8 @@ Ansible is a radically simple model-driven configuration management, deployment, and command execution framework. Other tools in this space have been too complicated for too long, require too much bootstrapping, and have too much learning curve. Ansible is dead simple and painless to extend. -For comparison, Puppet and Chef have about 60k lines of code. -Ansible's core is a little over 1000 lines. +For comparison, Puppet and Chef have about 60k lines of code. +Ansible's core is a little over 2000 lines.. Ansible isn't just for idempotent configuration -- it's also great for ad-hoc tasks, quickly firing off commands against nodes. See :doc:`examples`. @@ -68,6 +68,7 @@ Features * Dead simple setup * Super fast & parallel by default * No server or client daemons; use existing SSHd out of the box +* Supports Kerberized SSH, jump hosts, forwarding, etc * No additional software required on client boxes * Can be easily run from a checkout, no installation required * Modules are idempotent, but you can also easily use shell commands diff --git a/rst/modules.rst b/rst/modules.rst index edd2232eb00..7dae0d6e46e 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -73,8 +73,56 @@ Example action from Ansible :doc:`playbooks`:: apt pkg=foo=1.00 state=installed apt pkg=nginx state=latest default-release=squeeze-backports update-cache=yes +. _assemble: + +assemble +```````` + +(new in 0.5) Assembles a configuration file from fragments. Often a particular program will take a single configuration file +and does not support a conf.d style structure where it is easy to build up the configuration from multiple sources. +Assmeble will take a directory of files that have already been transferred to the system, and concatenate them +together to produce a destination file. Files are assembled in string sorting order. Puppet calls this idea +"fragments". + +*src*: + +* An already existing directory full of source files. + +*dest*: + +* A file to create using the concatenation of all of the source files. + +Example action from Ansible :doc:`playbooks`:: + + assemble src=/etc/someapp/fragments dest=/etc/someapp/someapp.conf + + +_authorized_key: + +authorized_key +`````````````` + +(new in 0.5). Adds or removes an authorized key for a user from a remote host. + +*user*: + +* Name of the user who access is being granted or remoted to. + +*state*: + +* Either 'absent' or 'present', this is whether the given key should be in the authorized keys file or not. + +*key*: + +* The actual key, as a string. + +Example action from Ansible :doc:`playbooks`:: + + authorized_key user=charlie key="ssh-dss ASDF1234L+8BTwaRYr/rycsBF1D8e5pTxEsXHQs4iq+mZdyWqlW++L6pMiam1A8yweP+rKtgjK2httVS6GigVsuWWfOd7/sdWippefq74nppVUELHPKkaIOjJNN1zUHFoL/YMwAAAEBALnAsQN10TNGsRDe5arBsW8cTOjqLyYBcIqgPYTZW8zENErFxt7ij3fW3Jh/sCpnmy8rkS7FyK8ULX0PEy/2yDx8/5rXgMIICbRH/XaBy9Ud5bRBFVkEDu/r+rXP33wFPHjWjwvHAtfci1NRBAudQI/98DbcGQw5HmE89CjgZRo5ktkC5yu/8agEPocVjdHyZr7PaHfxZGUDGKtGRL2QzRYukCmWo1cZbMBHcI5FzImvTHS9/8B3SATjXMPgbfBuEeBwuBK5EjL+CtHY5bWs9kmYjmeo0KfUMH8hY4MAXDoKhQ7DhBPIrcjS5jPtoGxIREZjba67r6/P2XKXaCZH6Fc= charlie@example.org 2011-01-17" + .. _command: + command ``````` @@ -565,7 +613,11 @@ Creates user accounts, manipulates existing user accounts, and removes user acco *createhome*: * Whether to create the user's home directory. Takes 'yes', or 'no'. The default is 'yes'. - + +*home=*: + +* Specifies where the user's home directory should be, if not in /home/$username. + *password*: * Sets the user's password to this crypted value. Pass in a result from crypt. See the users example in the github examples directory for what this looks like in a playbook. diff --git a/rst/patterns.rst b/rst/patterns.rst index c7e0292d662..9c1bdc2cc55 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -67,6 +67,10 @@ with the aforementioned bracket headers in the inventory file:: webservers webservers:dbservers +In 0.5 and later, you can exclude groups as well, for instance, all webservers not in Phoenix:: + + webservers:!phoenix + Individual host names (or IPs), but not groups, can also be referenced using wildcards:: @@ -77,13 +81,13 @@ It's also ok to mix wildcard patterns and groups at the same time:: one*.com:dbservers + Easy enough. See :doc:`examples` and then :doc:`playbooks` for how to do things to selected hosts. Host Variables ++++++++++++++ -Using the 0.4 branch of Ansible, it is easy to assign variables to hosts that will be used -later in playbooks:: +It is easy to assign variables to hosts that will be used later in playbooks:: [atlanta] host1 http_port=80 maxRequestsPerChild=808 @@ -93,7 +97,7 @@ later in playbooks:: Group Variables +++++++++++++++ -Using the 0.4 branch of Ansible, variables can also be applied to an entire group at once:: +Variables can also be applied to an entire group at once:: [atlanta] host1 @@ -137,7 +141,7 @@ variables to groups. These variables can be used by /usr/bin/ansible-playbook, YAML Inventory Format +++++++++++++++++++++ -For people using 0.3, or those that prefer to use it, the inventory file can also be expressed in +For that prefer to use it, the inventory file can also be expressed in YAML:: --- @@ -175,6 +179,9 @@ YAML:: vars: - asdf: 1234 +Tip: If you ever have two python interpreters on a system, set a variable called 'ansible_python_interpreter' to +the Python interpreter path you would like to use. (This is available in version 0.5 and later) + Tip: Be sure to start your YAML file with the YAML record designator ``---``. .. seealso:: diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 6141c485762..fffbdf4ec89 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -103,7 +103,7 @@ These variables can be used later in the playbook like this:: The later is useful in the event you need to do something like ${other}_concatenated_value. -In templates, the full power of the Jinja2 templating language is also available, which looks like this:: +The full power of the Jinja2 templating language is also available (note: in 0.4, this is only true inside of templates), which looks like this:: {{ varname }} @@ -298,6 +298,19 @@ Let's run a playbook using a parallelism level of 10:: ansible-playbook playbook.yml -f 10 +Tips and Tricks +``````````````` + +Look at the bottom of the playbook execution for a summary of the nodes that were executed +and how they performed. General failures and fatal "unreachable" communication attempts are +kept seperate in the counts. + +If you ever want to see detailed output from successful modules as well as unsuccessful ones, +use the '--verbose' flag. This is available in Ansible 0.5 and later. + +Also, in version 0.5 and later, Ansible playbook output is vastly upgraded if the cowsay +package is installed. Try it! + .. seealso:: :doc:`YAMLSyntax` From d3fa1c36a5f93cf2cff123478a9a0ebe0b5abb71 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 4 Jul 2012 17:47:04 -0400 Subject: [PATCH 242/416] docs build + formatting fix on the modules page --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 12 +++++-- examples.html | 2 +- faq.html | 18 ++++++----- genindex.html | 2 +- gettingstarted.html | 32 +++++++++++++++++-- index.html | 12 +++++-- moduledev.html | 2 +- modules.html | 78 +++++++++++++++++++++++++++++++++++---------- patterns.html | 14 +++++--- playbooks.html | 15 +++++++-- playbooks2.html | 15 ++++++--- rst/modules.rst | 4 +-- search.html | 2 +- searchindex.js | 2 +- 16 files changed, 162 insertions(+), 52 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 09c4a90e28d..0329c54c679 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -275,7 +275,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/api.html b/api.html index 3b9bcf1c946..4cb1f467866 100644 --- a/api.html +++ b/api.html @@ -359,7 +359,7 @@ a conf.d file appropriately or something similar. Who knows?

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index 7df3a1b3442..daf491712da 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -150,6 +150,7 @@ s.parentNode.insertBefore(ga, s);
  • Best Practices
  • @@ -193,6 +194,7 @@ using the group variable system.

    Playbooks should be organized like this:

    (root of source control repository)
     
    +    global_vars.yml # variables for all playbooks
         acme/           # each playbook has a directory
     
             setup.yml   # playbook to manage the service
    @@ -206,7 +208,7 @@ using the group variable system.

    etc_other_conf_other.conf vars/ - main.yml + main.yml # variables specific to this playbook handlers/ main.yml @@ -224,6 +226,7 @@ will require handlers, tasks, and templates
    +
    +

    Bundling Ansible Modules With Playbooks

    +

    In version 0.5 and later, if a playbook has a ”./library” directory relative to it’s YAML file, this directory can be used to add ansible modules that will automatically be in the ansible module path. This is a great way to keep modules that +go with a playbook together.

    +

    Miscellaneous Tips

    When you can do something simply, do something simply. Do not reach to use every feature of Ansible together, all @@ -289,7 +297,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/examples.html b/examples.html index cfd5badff69..5f740bd82ba 100644 --- a/examples.html +++ b/examples.html @@ -382,7 +382,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/faq.html b/faq.html index 35f79ba8b99..ce80eb9280a 100644 --- a/faq.html +++ b/faq.html @@ -230,8 +230,7 @@ best’, and distills all of the ideas behind all of these other tools to th

    Ansible uses SSH by default instead of SSL and custom daemons, and requires no extra software to run on managed machines. You can also write modules in any language as long as they return JSON. Ansible’s API, of course, is -heavily inspired by Func. Some features, like delegation hierarchies, are -not supported, but Ansible does have an async mode. Ansible also adds +heavily inspired by Func. Ansible also adds a configuration management and multinode orchestration layer (Playbooks) that Func didn’t have.

    @@ -247,7 +246,7 @@ notification events (like Puppet). This is kind of a ‘best of both worlds also designed with multi-node deployment in mind from day-one – something that is difficult for Puppet because of the pull architecture. Ansible is push based, so you can do things in an ordered fashion, addressing batches of servers -at one time, and you do not have to contend with the DAG. It’s also extensible in any language +at one time, and you do not have to contend with the dependency graph. It’s also extensible in any language and the source is designed so that you don’t have to be an expert programmer to submit a patch.

    Ansible’s resources are heavily inspired by Puppet, with the “state” keyword being a more or less direct port of “ensure” from Puppet. Unlike Puppet, Ansible can be extended in any language, @@ -324,9 +323,12 @@ to go.

    Ansible, it is not consuming any resources, and you don’t have to contend with a herd of machines all knocking at the door of your management server all at once.

    +

    The SSH connection type (paramiko is the default, binary openssh is an option) +can also make use of “ControlMaster” features in SSH, which reuses network +connections.

    If you have 10,000 systems, running a single ansible playbook against all of -them probably isn’t appropriate, which is why ansible-pull exists.

    -

    This tool is designed for running out of git and cron, and can scale to any +them probably isn’t appropriate, which is why ansible-pull exists. This tool +is designed for running out of git and cron, and can scale to any number of hosts. Ansible-pull uses local connections versus SSH, but can be easily bootstrapped or reconfigured just using SSH. There is more information available about this in the Advanced Playbooks section. The self-bootstrapping @@ -336,8 +338,8 @@ model.

    Are transports other than SSH supported?

    -

    Currently SSH and local connections are supported. In 0.5, we’ll also be including -a faster SSH transport. The interface is actually pluggable so a +

    Currently SSH (you can choose between paramiko or the openssh binaries) +and local connections are supported. The interface is actually pluggable so a small patch could bring transport over message bus or XMPP as an option.

    Stop by the mailing list if you have ideas. The connection-specific parts of Ansible are all abstracted away from the core implementation so it is very easy to extend.

    @@ -386,7 +388,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/genindex.html b/genindex.html index 7f02ca20cdc..cd74c798e2b 100644 --- a/genindex.html +++ b/genindex.html @@ -190,7 +190,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 1989a557d7d..f440d463710 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -158,6 +158,7 @@ s.parentNode.insertBefore(ga, s);
  • Tagged Releases
  • +
  • Choosing Between Paramiko and Native SSH
  • Your first commands
  • @@ -205,7 +206,7 @@ also need:

    • python-simplejson
    -

    NOTE: Ansible 0.4 will have ways to remote bootstrap this, using Ansible itself. Stay tuned.

    +

    (Note that even that’s not quite true. Ansible’s “raw” module (for executing commands in a quick and dirty way) and the copy module – some of the most basic features in ansible don’t even need that. So technically, you can use Ansible to install python-simplejson using the raw module, which then allows you to use everything else. That’s jumping ahead though.)

    Python 2.6 EPEL instructions for RHEL and CentOS 5

    @@ -293,6 +294,21 @@ project page:

    +
    +

    Choosing Between Paramiko and Native SSH

    +

    By default, ansible uses paramiko to talk to managed nodes over SSH. Paramiko is fast, works +very transparently, requires no configuration, and is a good choice for most users. +However, it does not support some advanced SSH features that folks will want to use.

    +

    Starting in version 0.5, if you want to leverage more advanced SSH features (such as Kerberized SSH or jump hosts), +pass the flag “–connection=ssh” to any ansible command, or set the +ANSIBLE_TRANSPORT environment variable to ‘ssh’. This will cause Ansible to use openssh +tools instead.

    +

    If ANSIBLE_SSH_ARGS are not set, ansible will try to use some sensible ControlMaster options +by default. You are free to override this environment variable, but should still pass ControlMaster +options to ensure performance of this transport. With ControlMaster in use, both transports +are roughly the same speed. Without CM, the binary ssh transport is signficantly slower.

    +

    If none of this makes sense to you, the default paramiko option is probably fine.

    +

    Your first commands

    Now that you’ve installed Ansible, it’s time to test it.

    @@ -306,9 +322,21 @@ bserver.example.org
    ssh-agent bash
     ssh-add ~/.ssh/id_rsa
    +

    (Depending on your setup, you may wish to ansible’s –private-key-file option to specify a pem file instead)

    Now ping all your nodes:

    ansible all -m ping
    +

    If you want to access machines remotely as a different user than root, you will want to +specify the ‘-u’ option to ansible. If you would like to access sudo mode, there are also flags to do that:

    +
    # as bruce
    +ansible all -m ping -u bruce
    +
    +# as bruce, sudoing to root
    +ansible all -m ping -u bruce --sudo
    +
    +# as bruce, sudoing to batman
    +ansible all -m ping -u bruce --sudo --sudo-user batman
    +

    Now run a live command on all of your nodes:

    ansible all -a "/bin/echo hello"
    @@ -349,7 +377,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/index.html b/index.html index 60065527892..cfc165430ca 100644 --- a/index.html +++ b/index.html @@ -190,7 +190,7 @@ and command execution framework. Other tools in this space have been too complicated for too long, require too much bootstrapping, and have too much learning curve. Ansible is dead simple and painless to extend. For comparison, Puppet and Chef have about 60k lines of code. -Ansible’s core is a little over 1000 lines.

    +Ansible’s core is a little over 2000 lines..

    Ansible isn’t just for idempotent configuration – it’s also great for ad-hoc tasks, quickly firing off commands against nodes. See Command Line.

    @@ -237,6 +237,7 @@ hosts.

  • Dead simple setup
  • Super fast & parallel by default
  • No server or client daemons; use existing SSHd out of the box
  • +
  • Supports Kerberized SSH, jump hosts, forwarding, etc
  • No additional software required on client boxes
  • Can be easily run from a checkout, no installation required
  • Modules are idempotent, but you can also easily use shell commands
  • @@ -290,6 +291,7 @@ Email:   Tagged Releases +
  • Choosing Between Paramiko and Native SSH
  • Your first commands
  • @@ -314,6 +316,8 @@ Email:   
  • Ansible Modules
  • Advanced Playbooks
  • +
    +

    assemble

    +

    (new in 0.5) Assembles a configuration file from fragments. Often a particular program will take a single configuration file +and does not support a conf.d style structure where it is easy to build up the configuration from multiple sources. +Assmeble will take a directory of files that have already been transferred to the system, and concatenate them +together to produce a destination file. Files are assembled in string sorting order. Puppet calls this idea +“fragments”.

    +

    src:

    +
      +
    • An already existing directory full of source files.
    • +
    +

    dest:

    +
      +
    • A file to create using the concatenation of all of the source files.
    • +
    +

    Example action from Ansible Playbooks:

    +
    assemble src=/etc/someapp/fragments dest=/etc/someapp/someapp.conf
    +
    +
    +
    +

    authorized_key

    +

    (new in 0.5). Adds or removes an authorized key for a user from a remote host.

    +

    user:

    +
      +
    • Name of the user who access is being granted or remoted to.
    • +
    +

    state:

    +
      +
    • Either ‘absent’ or ‘present’, this is whether the given key should be in the authorized keys file or not.
    • +
    +

    key:

    +
      +
    • The actual key, as a string.
    • +
    +

    Example action from Ansible Playbooks:

    +
    authorized_key user=charlie key="ssh-dss ASDF1234L+8BTwaRYr/rycsBF1D8e5pTxEsXHQs4iq+mZdyWqlW++L6pMiam1A8yweP+rKtgjK2httVS6GigVsuWWfOd7/sdWippefq74nppVUELHPKkaIOjJNN1zUHFoL/YMwAAAEBALnAsQN10TNGsRDe5arBsW8cTOjqLyYBcIqgPYTZW8zENErFxt7ij3fW3Jh/sCpnmy8rkS7FyK8ULX0PEy/2yDx8/5rXgMIICbRH/XaBy9Ud5bRBFVkEDu/r+rXP33wFPHjWjwvHAtfci1NRBAudQI/98DbcGQw5HmE89CjgZRo5ktkC5yu/8agEPocVjdHyZr7PaHfxZGUDGKtGRL2QzRYukCmWo1cZbMBHcI5FzImvTHS9/8B3SATjXMPgbfBuEeBwuBK5EjL+CtHY5bWs9kmYjmeo0KfUMH8hY4MAXDoKhQ7DhBPIrcjS5jPtoGxIREZjba67r6/P2XKXaCZH6Fc= charlie@example.org 2011-01-17"
    +
    +
    -

    command

    +

    command

    The command module takes the command name followed by a list of arguments, space delimited.

    If you want to run a command through the shell (say you are using @@ -281,7 +321,7 @@ following:

    The creates= option will not be passed to the executable.

    -

    copy

    +

    copy

    The copy module moves a file on the local box to remote locations. In addition to the options listed below, the arguments available to the file module can also be passed to the copy module.

    @@ -300,7 +340,7 @@ absolute or relative path.
    -

    facter

    +

    facter

    Runs the discovery program ‘facter’ on the remote system, returning JSON data that can be useful for inventory purposes.

    Requires that ‘facter’ and ‘ruby-json’ be installed on the remote end.

    @@ -387,7 +427,7 @@ file path=/some/path state=directory context=default
    -

    git

    +

    git

    Deploys software (or files) from git checkouts.

    repo:

      @@ -411,7 +451,7 @@ file path=/some/path state=directory context=default
    -

    group

    +

    group

    Adds or removes groups.

    name:

      @@ -435,7 +475,7 @@ file path=/some/path state=directory context=default
    -

    ohai

    +

    ohai

    Similar to the facter module, this returns JSON inventory data. Ohai data is a bit more verbose and nested than facter.

    Requires that ‘ohai’ be installed on the remote end.

    @@ -445,7 +485,7 @@ support change hooks, nor does it make any changes on the system.

    setup module behind the scenes instead.

    -

    ping

    +

    ping

    A trivial test module, this module always returns the integer 1 on successful contact.

    This module does not support change hooks and is informative only - it @@ -468,8 +508,8 @@ for this module.

    ansible newhost.example.com raw -a "yum install python-simplejson"
    -
    -

    service

    +
    +

    service

    Controls services on remote machines.

    state:

      @@ -499,7 +539,7 @@ service name=httpd state=reloaded
    -

    setup

    +

    setup

    Writes a JSON file containing key/value data, for use in templating. Call this once before using the template module. Playbooks will execute this module automatically as the first step in each play @@ -592,7 +632,7 @@ on your remote systems.

    -

    shell

    +

    shell

    The shell module takes the command name followed by a list of arguments, space delimited. It is almost exactly like the command module but runs the command through the user’s configured shell on the remote node.

    @@ -610,7 +650,7 @@ command was running.

    -

    template

    +

    template

    Templates a file out to a remote server. Call the setup module prior to usage if you are not running from a playbook. In addition to the options listed below, the arguments available to the file and copy modules can also be passed @@ -630,7 +670,7 @@ be a relative or absolute path.

    -

    user

    +

    user

    Creates user accounts, manipulates existing user accounts, and removes user accounts.

    name:

      @@ -664,6 +704,10 @@ be a relative or absolute path.
      • Whether to create the user’s home directory. Takes ‘yes’, or ‘no’. The default is ‘yes’.
      +

      home=:

      +
        +
      • Specifies where the user’s home directory should be, if not in /home/$username.
      • +

      password:

      • Sets the user’s password to this crypted value. Pass in a result from crypt. See the users example in the github examples directory for what this looks like in a playbook.
      • @@ -691,7 +735,7 @@ user name=mdehaan state=absent force=yes
    -

    virt

    +

    virt

    Manages virtual machines supported by libvirt. Requires that libvirt be installed on the managed machine.

    guest:

    @@ -728,7 +772,7 @@ ansible host -m virt -a "command=virttype"
    -

    yum

    +

    yum

    Will install, upgrade, remove, and list packages with the yum package manager.

    pkg:

      @@ -789,7 +833,7 @@ yum pkg=httpd state=installed

      © Copyright 2012 Michael DeHaan.
      - Last updated on Jun 19, 2012.
      + Last updated on Jul 04, 2012.

    diff --git a/patterns.html b/patterns.html index 37187ef8f64..c7f17f3c291 100644 --- a/patterns.html +++ b/patterns.html @@ -234,6 +234,9 @@ with the aforementioned bracket headers in the inventory file:

    webservers
     webservers:dbservers
    +

    In 0.5 and later, you can exclude groups as well, for instance, all webservers not in Phoenix:

    +
    webservers:!phoenix
    +

    Individual host names (or IPs), but not groups, can also be referenced using wildcards:

    *.example.com
    @@ -246,8 +249,7 @@ wildcards:

    Host Variables

    -

    Using the 0.4 branch of Ansible, it is easy to assign variables to hosts that will be used -later in playbooks:

    +

    It is easy to assign variables to hosts that will be used later in playbooks:

    [atlanta]
     host1 http_port=80 maxRequestsPerChild=808
     host2 http_port=303 maxRequestsPerChild=909
    @@ -255,7 +257,7 @@ host2 http_port=303 maxRequestsPerChild=909

    Group Variables

    -

    Using the 0.4 branch of Ansible, variables can also be applied to an entire group at once:

    +

    Variables can also be applied to an entire group at once:

    [atlanta]
     host1
     host2
    @@ -297,7 +299,7 @@ southeast

    YAML Inventory Format

    -

    For people using 0.3, or those that prefer to use it, the inventory file can also be expressed in +

    For that prefer to use it, the inventory file can also be expressed in YAML:

    ---
     
    @@ -334,6 +336,8 @@ YAML:

    vars: - asdf: 1234
    +

    Tip: If you ever have two python interpreters on a system, set a variable called ‘ansible_python_interpreter’ to +the Python interpreter path you would like to use. (This is available in version 0.5 and later)

    Tip: Be sure to start your YAML file with the YAML record designator ---.

    See also

    @@ -366,7 +370,7 @@ YAML:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/playbooks.html b/playbooks.html index 7cb30600cae..c5028d84157 100644 --- a/playbooks.html +++ b/playbooks.html @@ -158,6 +158,7 @@ s.parentNode.insertBefore(ga, s);
  • Running Operations On Change
  • Include Files And Reuse
  • Executing A Playbook
  • +
  • Tips and Tricks
  • @@ -271,7 +272,7 @@ Just Control-C to kill it and run it again with -K.

    $varname or ${varname}

    The later is useful in the event you need to do something like ${other}_concatenated_value.

    -

    In templates, the full power of the Jinja2 templating language is also available, which looks like this:

    +

    The full power of the Jinja2 templating language is also available (note: in 0.4, this is only true inside of templates), which looks like this:

    {{ varname }}

    The Jinja2 documentation provides information about how to construct loops and conditionals for those @@ -431,6 +432,16 @@ restructure your playbook to be more class/role oriented.

    Let’s run a playbook using a parallelism level of 10:

    ansible-playbook playbook.yml -f 10
    +
    +
    +

    Tips and Tricks

    +

    Look at the bottom of the playbook execution for a summary of the nodes that were executed +and how they performed. General failures and fatal “unreachable” communication attempts are +kept seperate in the counts.

    +

    If you ever want to see detailed output from successful modules as well as unsuccessful ones, +use the ‘–verbose’ flag. This is available in Ansible 0.5 and later.

    +

    Also, in version 0.5 and later, Ansible playbook output is vastly upgraded if the cowsay +package is installed. Try it!

    See also

    @@ -472,7 +483,7 @@ Let’s run a playbook using a parallelism level of 10:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 7f7cb36e1d6..8d2f39d03db 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -222,13 +222,20 @@ want to reference data from must be included in either the current play or any p

    Magic Variables

    Some variables made available to hosts don’t come from definitions in a playbook, the inventory file, or discovery from the system. There are only two of these, and are used in special cases that many users won’t need.

    -

    groups is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 +

    group_names is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 syntax to make template source files that vary based on the group membership (or role) of the host:

    -
    {% if 'webserver' in groups %}
    +
    {% if 'webserver' in group_names %}
        # some part of a configuration file that only applies to webservers
     {% endif %}
    -

    inventory_hostname is the name of the hostname as configured in Ansible’s inventory host file. This can +

    groups is a list of all the groups (and hosts) in the inventory. This can be used to enumerate all hosts within a group. +For example:

    +
    {% for host in groups['app_servers'] %}
    +   # something that applies to all app servers.
    +{% endfor %}
    +
    +

    Use cases include pointing a frontend proxy server to all of the app servers, setting up the correct firewall rules between servers, etc.

    +

    inventory_hostname is the name of the hostname as configured in Ansible’s inventory host file. This can be useful for when you don’t want to rely on the discovered hostname ansible_hostname or for other mysterious reasons. Don’t worry about it unless you think you need it.

    @@ -501,7 +508,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/rst/modules.rst b/rst/modules.rst index 7dae0d6e46e..db16b8de050 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -73,7 +73,7 @@ Example action from Ansible :doc:`playbooks`:: apt pkg=foo=1.00 state=installed apt pkg=nginx state=latest default-release=squeeze-backports update-cache=yes -. _assemble: +.. _assemble: assemble ```````` @@ -97,7 +97,7 @@ Example action from Ansible :doc:`playbooks`:: assemble src=/etc/someapp/fragments dest=/etc/someapp/someapp.conf -_authorized_key: +.. _authorized_key: authorized_key `````````````` diff --git a/search.html b/search.html index 7f4b2feac81..62996c269ce 100644 --- a/search.html +++ b/search.html @@ -207,7 +207,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jun 19, 2012.
    + Last updated on Jul 04, 2012.

    diff --git a/searchindex.js b/searchindex.js index 44ef510581d..bb4ab7354e6 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,10,5,6,1],direct:[5,7],chef:[3,5],second:[10,11],even:[5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4],told:7,manipul:[6,11],behavior:6,eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[4,6,7,11],datetim:4,permit:[],aka:10,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,hold:10,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:9,os_default:10,give:2,rpath:3,indic:[6,7],somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],ansible_product_seri:6,bootstrap:[0,5,6,3],credenti:11,greek:8,unpaus:6,maintain:[0,3],environ:[3,6],exclus:10,idontknow:[],order:[3,5,1,7],oper:[3,10,6,7,11],over:[3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:3,vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[3,5],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[9,3,5,10,11],took:5,"80ghz":6,somewhat:9,technic:[9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,runner:9,ram:5,mind:[3,5,4],raw:[3,6],aforement:8,seem:[5,10,7],seek:6,contact:[0,9,6],blue:10,though:[3,1,6,5,4,9],limitless:10,deleg:5,regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[8,5,4,11],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[3,5,10],make:[0,1,3,6,5,4,7,8,9,10,11],complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:[0,10],speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[],left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:7,ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,commit:1,produc:4,bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],altogeth:3,"true":[2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,9,10,11],intend:[4,6],devop:3,intent:[],consid:[4,1,7],faster:[5,10],anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[4,10,5,6,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,ansible_product_nam:6,prevent:4,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[8,7],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[3,5],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,especi:[5,10],copi:[3,10,9,6,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],behind:[5,6],ansible_system_vendor:6,between:[3,5,10,1,7],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[6,7,8,9,10,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[],exist:[3,5,6,7,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,1],same:[0,1,2,7,8,9,10,11],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[5,4],model:[3,5],dereferenc:[],execut:[3,1,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,congratul:0,strawberri:2,dirti:6,possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:8,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4],veri:[3,1,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,10,11],method:9,hasn:5,full:[3,10,7],hash:[10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:7,likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[8,0,5,10,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:5,fff:[],suffer:5,paramet:[4,10,6,7],style:4,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:8,advanc:[3,1,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],major:9,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,9,10,11],packag:[0,1,3,6,5,4,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,choos:[6,7],reach:[3,1],most:[3,1,2,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],filesystem:[10,6],cover:[9,3,5,11],clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[4,1],find:[9,4,7],impact:5,firewal:3,pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:10,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[3,10,5,4,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],abov:[10,9,4,7,11],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,0,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[3,1,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,5,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,manifest:5,api:[9,3,4,5,6],popular:3,often:[9,3,5,10,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,larg:5,machin:[3,1,6,5,4,7,11],previou:10,run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,ansible_python_vers:6,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,5,4,7,9,10,11],suit:[5,7],datastructur:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[3,5],peopl:[3,10,8],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:10,sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:6,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[9,3,10,5,4],pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,folk:4,turn:[3,10,5,4],compar:[3,5],access:[3,10,6,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4],hypervisor:6,technolog:3,later:[0,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,9,10,11],win:[],app:5,apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5],doubl:11,upgrad:[6,11],next:[0,7],few:[],usr:[0,6,4,7,8,9,11],sort:5,dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[3,1,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:5,greater:8,python:[0,2,3,6,5,4,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[10,5,6,1,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[3,10,5,6,11],grok:3,bump:0,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[3,1,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:6,"_default":6,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:0,mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],view:3,legaci:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],vmware:6,togeth:1,ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:0,multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:10,denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],interpol:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6,8],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6],necessari:[6,11],cellspac:[],async:[5,10],architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,4,9,6,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,11],trigger:[5,6,7],replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:[0,10],sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[]},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:8,unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],altogeth:3,batman:0,"true":[0,2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],same:[0,1,2,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:8,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[8,0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:5,firewal:[3,10],pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:6,error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,4,5,6],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:3,often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,9,10,11],suit:[5,7],forward:3,datastructur:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4,1],hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[6,1],"_default":6,leverag:0,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file From 107784980e8c98742abfe4e7b30433899688779e Mon Sep 17 00:00:00 2001 From: Peter Sankauskas Date: Fri, 6 Jul 2012 11:13:40 -0700 Subject: [PATCH 243/416] Issue 135: Updating to reflect reality --- rst/bestpractices.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 9ae1a4cae30..3ba21711d45 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -66,7 +66,7 @@ when things change, and these are described in :doc:`playbooks`. Including more than one setup file or more than one handlers file is of course legal. -Having playbooks be able to include other playbooks is coming in release 0.5. +Having playbooks be able to include other playbooks is coming in a future release. See Issue 538. Until then, to manage your entire site, simply execute all of your playbooks together, in the order desired. You don't have to do this though. It's fine to select sections of your infrastructure to manage at a single time. From 3807e16cad854139d0391042eb13f6836c90d38f Mon Sep 17 00:00:00 2001 From: Peter Sankauskas Date: Mon, 9 Jul 2012 11:34:06 -0700 Subject: [PATCH 244/416] Adding the documentation for 'install-recommends' to APT. --- rst/modules.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/rst/modules.rst b/rst/modules.rst index db16b8de050..ba4059a8581 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -65,6 +65,10 @@ Manages apt-packages (such as for Debian/Ubuntu). * Corresponds to the -t option for apt, and sets pin priorities +*install-recommends*: (devel branch now, part of ansible 0.6 later) + +* Corresponds to the --no-install-recommends option for apt. Defaults to 'yes', which means install the recommended packages the same way APT does by default. Set this to 'no' to add the option not to install recommended packages. + Example action from Ansible :doc:`playbooks`:: apt pkg=foo update-cache=yes @@ -72,6 +76,7 @@ Example action from Ansible :doc:`playbooks`:: apt pkg=foo state=installed apt pkg=foo=1.00 state=installed apt pkg=nginx state=latest default-release=squeeze-backports update-cache=yes + apt pkg=openjdk-6-jdk state=latest install-recommends=no .. _assemble: From def40d03890b83fd2799c1da1ca023374aacf15e Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Tue, 10 Jul 2012 14:39:52 -0300 Subject: [PATCH 245/416] Missing a colon in a YAML example. --- rst/bestpractices.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 3ba21711d45..970e58dca5d 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -52,7 +52,7 @@ The acme/setup.yml playbook would be as simple as:: - hosts: webservers user: root - vars_files + vars_files: - ../global_vars.yml - vars/main.yml tasks: From 8e0560f41c6bc72a0ba9b0d74bc09a53f429a338 Mon Sep 17 00:00:00 2001 From: Ludovic Claude Date: Mon, 16 Jul 2012 18:28:32 +0200 Subject: [PATCH 246/416] Document sudo_user --- rst/playbooks.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/rst/playbooks.rst b/rst/playbooks.rst index fffbdf4ec89..6c63e995c94 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -79,6 +79,7 @@ Support for running things from sudo is also available:: - hosts: webservers user: yourname sudo: True + sudo_user: privileged_user If you need to specify a password to sudo, run `ansible-playbook` with ``--ask-sudo-pass`` (`-K`). If you run a sudo playbook and the playbook seems to hang, it's probably stuck at the sudo prompt. From 4c4a96b088a6667cdc9bf2137f2bfd2b46bb3505 Mon Sep 17 00:00:00 2001 From: Peter Sankauskas Date: Mon, 16 Jul 2012 17:57:22 -0700 Subject: [PATCH 247/416] Beginning to add EC2 documentation. --- rst/api.rst | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/rst/api.rst b/rst/api.rst index 7ee739d544b..6b4f4924cd2 100644 --- a/rst/api.rst +++ b/rst/api.rst @@ -169,6 +169,32 @@ a conf.d file appropriately or something similar. Who knows? So that's the Cobbler integration support -- using the cobbler script as an example, it should be trivial to adapt Ansible to pull inventory, as well as variable information, from any data source. If you create anything interesting, please share with the mailing list, and we can keep it in the source code tree for others to use. +Example: AWS EC2 External Inventory Script +`````````````````````````````````````````` + +If you use Amazon Web Services EC2, maintaining an inventory file might not be the best approach. For this reason, you can use the `EC2 external inventory `_ script. + +You can use this script in one of two ways. The easiest is to use ansible's `-i` command line option and specify the path to the script. + + ansible -i examples/scripts/ec2_external_inventory.py -u ubuntu us-east-1d -m ping + +The second option is to copy the script to `/etc/ansible/hosts` and `chmod +x` it. You will also need to copy the `ec2.ini` file to `/etc/ansible/ec2.ini`. Then you can run ansible as you would normally. + +To successfully make an API call to AWS, you will need to configure Boto. There are a `variety of methods `_, but the simplest is just to export two environment variables: + + export AWS_ACCESS_KEY_ID='AK123' + export AWS_SECRET_ACCESS_KEY='abc123' + +You can test the script by itself to make sure your config is correct + + cd examples/scripts + ./ec2_external_inventory.py --list + +After a few moments, you should see your entire EC2 inventory across all regions in JSON. + +Since each region requires its own API call, if you are only using a small set of regions, feel free to edit `ec2.ini` and list just the regions you are interested in. There are other config options in `ec2.ini` including cache control. + + .. seealso:: :doc:`modules` From c5f791a29745a45ccda0b8c42a05ae00e7cc656b Mon Sep 17 00:00:00 2001 From: Peter Sankauskas Date: Tue, 17 Jul 2012 17:30:47 -0700 Subject: [PATCH 248/416] Completed documentation of the EC2 external inventory script --- rst/api.rst | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 84 insertions(+), 4 deletions(-) diff --git a/rst/api.rst b/rst/api.rst index 6b4f4924cd2..64b24302d08 100644 --- a/rst/api.rst +++ b/rst/api.rst @@ -174,13 +174,13 @@ Example: AWS EC2 External Inventory Script If you use Amazon Web Services EC2, maintaining an inventory file might not be the best approach. For this reason, you can use the `EC2 external inventory `_ script. -You can use this script in one of two ways. The easiest is to use ansible's `-i` command line option and specify the path to the script. +You can use this script in one of two ways. The easiest is to use Ansible's ``-i`` command line option and specify the path to the script. ansible -i examples/scripts/ec2_external_inventory.py -u ubuntu us-east-1d -m ping -The second option is to copy the script to `/etc/ansible/hosts` and `chmod +x` it. You will also need to copy the `ec2.ini` file to `/etc/ansible/ec2.ini`. Then you can run ansible as you would normally. +The second option is to copy the script to `/etc/ansible/hosts` and `chmod +x` it. You will also need to copy the ``ec2.ini`` file to `/etc/ansible/ec2.ini`. Then you can run ansible as you would normally. -To successfully make an API call to AWS, you will need to configure Boto. There are a `variety of methods `_, but the simplest is just to export two environment variables: +To successfully make an API call to AWS, you will need to configure Boto (the Python interface to AWS). There are a `variety of methods `_ available, but the simplest is just to export two environment variables: export AWS_ACCESS_KEY_ID='AK123' export AWS_SECRET_ACCESS_KEY='abc123' @@ -192,7 +192,87 @@ You can test the script by itself to make sure your config is correct After a few moments, you should see your entire EC2 inventory across all regions in JSON. -Since each region requires its own API call, if you are only using a small set of regions, feel free to edit `ec2.ini` and list just the regions you are interested in. There are other config options in `ec2.ini` including cache control. +Since each region requires its own API call, if you are only using a small set of regions, feel free to edit ``ec2.ini`` and list only the regions you are interested in. There are other config options in ``ec2.ini`` including cache control, and destination variables. + +At their heart, inventory files are simply a mapping from some name to a destination address. The default ``ec2.ini`` settings are configured for running Ansible from outside EC2 (from your laptop for example). If you are running Ansible from within EC2, internal DNS names and IP addresses may make more sense than public DNS names. In this case, you can modify the ``destination_variable`` in ``ec2.ini`` to be the private DNS name of an instance. This is particularly important when running Ansible within a private subnet inside a VPC, where the only way to access an instance is via its private IP address. For VPC instances, `vpc_destination_variable` in ``ec2.ini`` provides a means of using which ever `boto.ec2.instance variable `_ makes the most sense for your use case. + +The EC2 external inventory provides mappings to instances from several groups: + +Instance ID + These are groups of one since instance IDs are unique. + e.g. + ``i-00112233`` + ``i-a1b1c1d1`` + +Region + A group of all instances in an AWS region. + e.g. + ``us-east-1`` + ``us-west-2`` + +Availability Zone + A group of all instances in an availability zone. + e.g. + ``us-east-1a`` + ``us-east-1b`` + +Security Group + Instances belong to one or more security groups. A group is created for each security group, with all characters except alphanumerics, dashes (-) converted to underscores (_). Each group is prefixed by ``security_group_`` + e.g. + ``security_group_default`` + ``security_group_webservers`` + ``security_group_Pete_s_Fancy_Group`` + +Tags + Each instance can have a variety of key/value pairs associated with it called Tags. The most common tag key is 'Name', though anything is possible. Each key/value pair is its own group of instances, again with special characters converted to underscores, in the format ``tag_KEY_VALUE`` + e.g. + ``tag_Name_Web`` + ``tag_Name_redis-master-001`` + ``tag_aws_cloudformation_logical-id_WebServerGroup`` + +When the Ansible is interacting with a specific server, the EC2 inventory script is called again with the ``--host HOST`` option. This looks up the HOST in the index cache to get the instance ID, and then makes an API call to AWS to get information about that specific instance. It then makes information about that instance available as variables to your playbooks. Each variable is prefixed by ``ec2_``. Here are some of the variables available: + +- ec2_architecture +- ec2_description +- ec2_dns_name +- ec2_id +- ec2_image_id +- ec2_instance_type +- ec2_ip_address +- ec2_kernel +- ec2_key_name +- ec2_launch_time +- ec2_monitored +- ec2_ownerId +- ec2_placement +- ec2_platform +- ec2_previous_state +- ec2_private_dns_name +- ec2_private_ip_address +- ec2_public_dns_name +- ec2_ramdisk +- ec2_region +- ec2_root_device_name +- ec2_root_device_type +- ec2_security_group_ids +- ec2_security_group_names +- ec2_spot_instance_request_id +- ec2_state +- ec2_state_code +- ec2_state_reason +- ec2_status +- ec2_subnet_id +- ec2_tag_Name +- ec2_tenancy +- ec2_virtualization_type +- ec2_vpc_id + +Both ``ec2_security_group_ids`` and ``ec2_security_group_names`` are comma-separated lists of all security groups. Each EC2 tag is a variable in the format ``ec2_tag_KEY``. + +To see the complete list of variables available for an instance, run the script by itself: + + cd examples/scripts + ./ec2_external_inventory.py --host ec2-12-12-12-12.compute-1.amazonaws.com .. seealso:: From db014182e65565eb33656ca7c54a9ba3dcbbc51a Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 20 Jul 2012 11:51:03 -0400 Subject: [PATCH 249/416] Update the inventory docs + rebuild --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 5 +-- moduledev.html | 2 +- modules.html | 2 +- patterns.html | 81 ++++++++++++++++++++++----------------------- playbooks.html | 2 +- playbooks2.html | 2 +- rst/patterns.rst | 81 +++++++++++++++++++++++---------------------- search.html | 2 +- searchindex.js | 2 +- 16 files changed, 96 insertions(+), 97 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 0329c54c679..b12af2c616d 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -275,7 +275,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/api.html b/api.html index 4cb1f467866..528333d17cb 100644 --- a/api.html +++ b/api.html @@ -359,7 +359,7 @@ a conf.d file appropriately or something similar. Who knows?

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index daf491712da..d66dc2967d9 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -297,7 +297,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/examples.html b/examples.html index 5f740bd82ba..9a15b05c02d 100644 --- a/examples.html +++ b/examples.html @@ -382,7 +382,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/faq.html b/faq.html index ce80eb9280a..4179dadc15f 100644 --- a/faq.html +++ b/faq.html @@ -388,7 +388,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/genindex.html b/genindex.html index cd74c798e2b..24088da7356 100644 --- a/genindex.html +++ b/genindex.html @@ -190,7 +190,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index f440d463710..604132804b3 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -377,7 +377,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/index.html b/index.html index cfc165430ca..17619ff5a79 100644 --- a/index.html +++ b/index.html @@ -301,7 +301,8 @@ Email:   Host Variables
  • Group Variables
  • Groups of Groups, and Group Variables
  • -
  • YAML Inventory Format
  • +
  • Splitting Out Host and Group Specific Data
  • +
  • YAML Inventory
  • Command Line
  • @@ -234,7 +235,7 @@ with the aforementioned bracket headers in the inventory file:

    webservers
     webservers:dbservers
    -

    In 0.5 and later, you can exclude groups as well, for instance, all webservers not in Phoenix:

    +

    You can exclude groups as well, for instance, all webservers not in Phoenix:

    webservers:!phoenix

    Individual host names (or IPs), but not groups, can also be referenced using @@ -296,49 +297,45 @@ northeast southwest southeast +

    If you need to store lists or hash data, or prefer to keep host and group specific variables +seperate from the inventory file, see the next section.

    -
    -

    YAML Inventory Format

    -

    For that prefer to use it, the inventory file can also be expressed in -YAML:

    +
    +

    Splitting Out Host and Group Specific Data

    +

    In Ansible 0.6 and later, in addition to the storing variables directly in the INI file, host and +group variables can be stored in individual files relative to the inventory file. These +variable files are in YAML format.

    +

    Assuming the inventory file path is:

    +
    /etc/ansible/hosts
    +
    +

    If the host is named ‘foosball’, and in groups ‘raleigh’ and ‘webservers’, variables +in YAML files at the following locations will be made available to the host:

    +
    /etc/ansible/group_vars/raleigh
    +/etc/ansible/group_vars/webservers
    +/etc/ansible/host_vars/foosball
    +
    +

    For instance, suppose you have hosts grouped by datacenter, and each datacenter +uses some different servers. The data in the groupfile ‘/etc/ansible/group_vars/raleigh’ for +the ‘raleigh’ group might look like:

    ---
    -
    -# some ungrouped hosts, either use the short string form or the "host: " prefix
    -- host: jupiter
    -- mars
    -
    -# variables can be assigned like this...
    -- host: saturn
    -  vars:
    -  - moon: titan
    -
    -# groups can also set variables to all hosts in the group
    -# here are a bunch of hosts using a non-standard SSH port
    -# and also defining a variable 'ntpserver'
    -- group: greek
    -  hosts:
    -  - zeus
    -  - hera
    -  - poseidon
    -  vars:
    -  - ansible_ssh_port: 3000
    -  - ntp_server: olympus.example.com
    -
    -# individual hosts can still set variables inside of groups too
    -# so you aren't limited to just group variables and host variables.
    -- group: norse
    -  hosts:
    -  - host: thor
    -    vars:
    -    - hammer: True
    -  - odin
    -  - loki
    -  vars:
    -    - asdf: 1234
    +ntp_server: acme.example.org +database_server: storage.example.org
    +

    It is ok if these files do not exist, this is an optional feature.

    +

    Tip: Keeping your inventory file and variables in a git repo (or other version control) +is an excellent way to track changes to your inventory and host variables.

    Tip: If you ever have two python interpreters on a system, set a variable called ‘ansible_python_interpreter’ to -the Python interpreter path you would like to use. (This is available in version 0.5 and later)

    -

    Tip: Be sure to start your YAML file with the YAML record designator ---.

    +the Python interpreter path you would like to use.

    +

    Tip: Be sure to start any YAML file with the YAML record designator --- on the first line.

    +
    +
    +

    YAML Inventory

    +

    Ansible’s YAML inventory format is deprecated and will be removed in Ansible 0.7. Ansible 0.6 includes +a conversion script.

    +

    Usage:

    +
    yaml_to_ini.py /etc/ansible/hosts
    +
    +

    See also

    @@ -370,7 +367,7 @@ the Python interpreter path you would like to use. (This is available in versio

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/playbooks.html b/playbooks.html index c5028d84157..5193a62bd82 100644 --- a/playbooks.html +++ b/playbooks.html @@ -483,7 +483,7 @@ package is installed. Try it!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 8d2f39d03db..8cafb0c8ac2 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -508,7 +508,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/rst/patterns.rst b/rst/patterns.rst index 9c1bdc2cc55..f0bdc72b813 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -67,7 +67,7 @@ with the aforementioned bracket headers in the inventory file:: webservers webservers:dbservers -In 0.5 and later, you can exclude groups as well, for instance, all webservers not in Phoenix:: +You can exclude groups as well, for instance, all webservers not in Phoenix:: webservers:!phoenix @@ -138,51 +138,52 @@ variables to groups. These variables can be used by /usr/bin/ansible-playbook, southwest southeast -YAML Inventory Format -+++++++++++++++++++++ +If you need to store lists or hash data, or prefer to keep host and group specific variables +seperate from the inventory file, see the next section. -For that prefer to use it, the inventory file can also be expressed in -YAML:: +Splitting Out Host and Group Specific Data +++++++++++++++++++++++++++++++++++++++++++ + +In Ansible 0.6 and later, in addition to the storing variables directly in the INI file, host and +group variables can be stored in individual files relative to the inventory file. These +variable files are in YAML format. + +Assuming the inventory file path is:: + + /etc/ansible/hosts + +If the host is named 'foosball', and in groups 'raleigh' and 'webservers', variables +in YAML files at the following locations will be made available to the host:: + + /etc/ansible/group_vars/raleigh + /etc/ansible/group_vars/webservers + /etc/ansible/host_vars/foosball + +For instance, suppose you have hosts grouped by datacenter, and each datacenter +uses some different servers. The data in the groupfile '/etc/ansible/group_vars/raleigh' for +the 'raleigh' group might look like:: --- - - # some ungrouped hosts, either use the short string form or the "host: " prefix - - host: jupiter - - mars - - # variables can be assigned like this... - - host: saturn - vars: - - moon: titan - - # groups can also set variables to all hosts in the group - # here are a bunch of hosts using a non-standard SSH port - # and also defining a variable 'ntpserver' - - group: greek - hosts: - - zeus - - hera - - poseidon - vars: - - ansible_ssh_port: 3000 - - ntp_server: olympus.example.com - - # individual hosts can still set variables inside of groups too - # so you aren't limited to just group variables and host variables. - - group: norse - hosts: - - host: thor - vars: - - hammer: True - - odin - - loki - vars: - - asdf: 1234 + ntp_server: acme.example.org + database_server: storage.example.org + +It is ok if these files do not exist, this is an optional feature. + +Tip: Keeping your inventory file and variables in a git repo (or other version control) +is an excellent way to track changes to your inventory and host variables. Tip: If you ever have two python interpreters on a system, set a variable called 'ansible_python_interpreter' to -the Python interpreter path you would like to use. (This is available in version 0.5 and later) +the Python interpreter path you would like to use. + +YAML Inventory +++++++++++++++ + +Ansible's YAML inventory format is deprecated and will be removed in Ansible 0.7. Ansible 0.6 includes +a `conversion script `_. + +Usage:: -Tip: Be sure to start your YAML file with the YAML record designator ``---``. + yaml_to_ini.py /etc/ansible/hosts .. seealso:: diff --git a/search.html b/search.html index 62996c269ce..cfda06a7bc2 100644 --- a/search.html +++ b/search.html @@ -207,7 +207,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 04, 2012.
    + Last updated on Jul 20, 2012.

    diff --git a/searchindex.js b/searchindex.js index bb4ab7354e6..5814acc29c2 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[8,10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:8,never:[9,5,4],here:[0,1,3,4,7,8,9,10,11],herd:5,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:8,unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:8,vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,8,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:8,bar:[8,9,6,7],excel:[3,5,10],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:8,best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:4,complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,8,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,eth0:6,git:[0,1,3,6,5,4,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,2,4,7,8,10],altogeth:3,batman:0,"true":[0,2,6,4,7,8,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6,8],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[8,9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:8,max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,9,10],man:[],poseidon:8,practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,8,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[4,9,6,7,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:8,sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],same:[0,1,2,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,10,11],either:[9,8,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:8,ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:8,exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:[8,5],start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:8,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[8,0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:8,neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[9,6],option:[0,1,6,5,4,7,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:5,firewal:[3,10],pretti:[9,5,10],solut:5,olympu:8,yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:8,context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:8,backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:6,error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,4,5,6],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:3,often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],chang:[0,1,3,6,4,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,9,10,11],suit:[5,7],forward:3,datastructur:9,foosbal:6,lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:8,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4,1],hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,9,10,11],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,8,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:8,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[6,1],"_default":6,leverag:0,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[8,10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,10,9,4,1],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:1,with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:8,enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:8,immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,6,7,8,9,10],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11,8],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11],herd:5,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,8,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],same:[0,1,2,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:5,firewal:[3,10],pretti:[9,5,10],solut:5,olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:6,error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,4,5,6],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:3,often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4,1],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file From 799fb6005141cd20347c56f9f6c8c860775f6f82 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 20 Jul 2012 11:51:23 -0400 Subject: [PATCH 250/416] Rebuild --- bestpractices.html | 4 ++-- modules.html | 7 ++++++- patterns.html | 1 - searchindex.js | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/bestpractices.html b/bestpractices.html index d66dc2967d9..4f308f0fd37 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -225,7 +225,7 @@ will require handlers, tasks, and templateshandlers, tasks, and templatesPlaybooks.

    Including more than one setup file or more than one handlers file is of course legal.

    -

    Having playbooks be able to include other playbooks is coming in release 0.5.

    +

    Having playbooks be able to include other playbooks is coming in a future release. See Issue 538.

    Until then, to manage your entire site, simply execute all of your playbooks together, in the order desired. You don’t have to do this though. It’s fine to select sections of your infrastructure to manage at a single time. You may wish to construct simple shell scripts to wrap calls to ansible-playbook.

    diff --git a/modules.html b/modules.html index 4e5d887300e..29147d89dc2 100644 --- a/modules.html +++ b/modules.html @@ -251,12 +251,17 @@ Defaults to ‘no’.
    • Corresponds to the -t option for apt, and sets pin priorities
    +

    install-recommends: (devel branch now, part of ansible 0.6 later)

    +
      +
    • Corresponds to the –no-install-recommends option for apt. Defaults to ‘yes’, which means install the recommended packages the same way APT does by default. Set this to ‘no’ to add the option not to install recommended packages.
    • +

    Example action from Ansible Playbooks:

    apt pkg=foo update-cache=yes
     apt pkg=foo state=removed
     apt pkg=foo state=installed
     apt pkg=foo=1.00 state=installed
    -apt pkg=nginx state=latest default-release=squeeze-backports update-cache=yes
    +apt pkg=nginx state=latest default-release=squeeze-backports update-cache=yes +apt pkg=openjdk-6-jdk state=latest install-recommends=no
    diff --git a/patterns.html b/patterns.html index 4096d495b67..25b2d8e1036 100644 --- a/patterns.html +++ b/patterns.html @@ -326,7 +326,6 @@ database_server: storage.example.org is an excellent way to track changes to your inventory and host variables.

    Tip: If you ever have two python interpreters on a system, set a variable called ‘ansible_python_interpreter’ to the Python interpreter path you would like to use.

    -

    Tip: Be sure to start any YAML file with the YAML record designator --- on the first line.

    YAML Inventory

    diff --git a/searchindex.js b/searchindex.js index 5814acc29c2..6b2c4ad5cc3 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[10,6,7,11],sleep:10,consider:9,whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11],herd:5,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:3,overhead:3,typo:4,recommend:[4,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,8,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6],somelog:6,word:9,brows:4,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[8,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],same:[0,1,2,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,start:[0,1,2,3,5,6,7,8,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],what:[0,1,2,3,4,5,6,7,9,10],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:10,self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11],append:6,brace:11,distribut:[0,5,1,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:5,firewal:[3,10],pretti:[9,5,10],solut:5,olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:6,error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],build:[9,0,4,5,6],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:3,often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:3,fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,10,5,4,1],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,richer:5,intervert:10,charact:[6,2],favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1],kei:[0,2,3,6,5,4,7,9,10,11],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,linux:[0,5,6,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:[8,2],below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11],futur:[3,10,4],rememb:11,varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:8,prefix:[10,6,7,11],sleep:10,forget:[10,11],whose:10,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11],ever:[3,4,7,8],told:7,unpars:4,abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11],herd:5,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,instruct:[0,5,3],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:[9,6],too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:6,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],recent:5,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],deal:4,tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:[],human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[9,3,5,10,7],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6],xyz:6,contriv:[],down:[9,6,7],contrib:4,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],wai:[0,1,3,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],forc:[0,6],batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,adopt:5,"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:[3,6],self_destruct_countdown:8,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,assmebl:6,intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],ansible_hostnam:[10,6,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:5,readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11],string:[4,6],condit:[3,10,7],word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[3,1,6,5,4,7,9,10,11],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11],job_statu:[],main:[10,9,4,1,7],bounc:[6,7],non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,halon_system_timeout:8,term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,state:[3,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:[],directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[3,9,4],width:3,white:4,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:[],squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],later:[0,1,3,6,4,7,8,10,11],meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,enough:[8,5,11],somevar:10,analyz:10,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,kei:[0,2,3,6,5,4,7,9,10,11],innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,featur:[0,1,3,5,7,8,10],colon:[8,7],inventory_hostnam:10,homebrew:0,poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:3,webserv:[3,1,6,7,8,9,10,11],nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:4,extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],trigger:[5,6,7],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,integ:6,server:[3,5,6,7,8,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],node:[0,3,6,5,4,7,9,10,11],sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,10,4,1,11],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11],compel:[],orient:[3,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11],consider:9,selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,scp:11,nors:[],dehaan:3,mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],deleg:[],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],"public":10,hasn:5,full:[3,10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11],ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],virt:[3,6],taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,desir:[3,4,6,1,7],flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:5,cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,unlink:6,associ:2,"short":[0,5,10,3],caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,unlik:[5,7],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,seth:5,group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],createhom:6,equival:10,self:[5,4],centos6:9,build:[9,0,4,5,6],brace:11,distribut:[0,5,1,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,filesystem:[10,6],cover:[9,3,5,11],dereferenc:[],clojur:4,clean:5,latest:[0,6,7,11],awesom:[3,6,7],ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:5,firewal:[3,10],pretti:[9,5,10],solut:5,olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11],sec:10,arg:4,disadvantag:3,setsebool:7,expert:5,someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,great:[3,10,5,4,1],gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:0,minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11],async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],folk:[0,4],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:3,often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:[],group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11],coder:5,crypt:[6,11],chgrp:6,bracket:8,librari:[4,6,1,2],peopl:[3,10],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],ansible_kernel:6,michael:3,fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,append:6,compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],convert:4,convers:8,hypervisor:6,technolog:3,typic:[5,11],employe:[5,2],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6],dbserver:[8,1],about:[0,1,2,3,4,5,6,7,10,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,11,2],patch:5,some_serv:8,special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,merg:[5,4],ref:[],dive:7,red:[9,3,5,4,11],clarifi:[],insid:[10,7],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],"var":[3,1,6,7,8,10],rst:[],exactli:6,daemonless:3,intervert:10,charact:[6,2],favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],turn:[3,10,5,4],border:[],paramiko:[0,5,3],cellspac:[],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1],ansible_ssh_host_key_dsa_publ:6,job:[11,2],entir:[1,5,4,7,8,10],webapp:[5,11],"2pm":3,addit:[3,6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4,3],quit:[0,4,1],pin:6,platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11],difficult:5,http:[3,9,6],hostnam:[8,10,9,6,7],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],necessari:[6,11],lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,linux:[0,5,6,3],"export":0,home:6,transport:[0,5,3],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],pitfal:[3,4],hang:7,leverag:0,transfer:[3,4,6,11],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],evalu:[10,11],is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,inc:6,boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11],futur:[3,10,4,1],branch:[0,6],varieti:[5,4],repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples"]}) \ No newline at end of file From dfd60149c01443107e0a0b384d699b644c1a29fa Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Wed, 25 Jul 2012 15:21:42 -0400 Subject: [PATCH 251/416] Add link to setup module when ansible vars first referenced. Add a cross-reference link to the setup module documentation, so users know where to look to find more detail about what ansible variables are available. --- rst/playbooks.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rst/playbooks.rst b/rst/playbooks.rst index fffbdf4ec89..aa3c3a0ca12 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -118,7 +118,10 @@ variables. Facter variables are prefixed with ``facter_`` and Ohai variables are prefixed with ``ohai_``. Ansible variables (0.3 and later) -are not surprisingly prefixed with ``ansible_``. So for instance, if I wanted +are not surprisingly prefixed with ``ansible_`` (See the :ref:`setup` module +documentation for a list of Ansible variables). + +So for instance, if I wanted to write the hostname into the /etc/motd file, I could say:: - name: write the motd From def22a9cf0e97ece3f40fdfec5f8b2a4da674484 Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Wed, 25 Jul 2012 17:18:31 -0400 Subject: [PATCH 252/416] Remove branch arg from git docs. The "branch" arg doesn't work, users should use "version" instead for specifying branches. --- rst/modules.rst | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index ba4059a8581..d796172c30e 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -302,11 +302,7 @@ Deploys software (or files) from git checkouts. *version*: * What version to check out -- either the git SHA, the literal string - ``HEAD``, or a tag name. - -*branch*: - -* (new in 0.4) Which branch name to checkout. Defaults to 'master'. + ``HEAD``, branch name, or a tag name. Example action from Ansible :doc:`playbooks`:: From 5a58eb16c02e16b2750712470b0544bffb2fdc99 Mon Sep 17 00:00:00 2001 From: Lennie Date: Thu, 26 Jul 2012 15:34:12 +0300 Subject: [PATCH 253/416] Update index.html I propose this quote from the mailinglist should go in the "What People Are Saying" section. --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 17619ff5a79..a352a73cdc2 100644 --- a/index.html +++ b/index.html @@ -1,4 +1,3 @@ - @@ -254,6 +253,7 @@ hosts.

    “I’ve been trying to grok Chef these last weeks, and really, I don’t get it. I discovered ansible yesterday at noon, successfully ran it at 1pm, made my first playbook by 2pm, and pushed two small [contributions to the project] before the office closed... Do that with any other config management software!”

    “Ansible is much more firewall-friendly. I have a number of hosts that are only accessible via reverse SSH tunnels, and let me tell you getting puppet or chef to play nice with that is a nightmare.”

    “This software has really changed my life as an network admin, the simplicity ansible comes with is really childs-play and I really adore its design. No more hassle with SSL keys, DNS based ‘server entries’ (e.g. puppet and what not). Just plain (secure!) SSH keys and one is good to go.”

    +

    “You may get a kick out of the fact that I'm using ansible to install puppetmaster(s). I'm starting to migrate all my stuff to the much more sensical ansible. Nice work.”

    Resources

    From 769ea7aefccf6e29a28e242f750eeb5f8d4516e1 Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Thu, 26 Jul 2012 08:53:05 -0400 Subject: [PATCH 254/416] Document the 'remote' argument for the git module. --- rst/modules.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rst/modules.rst b/rst/modules.rst index d796172c30e..09c7d87bfa3 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -304,6 +304,10 @@ Deploys software (or files) from git checkouts. * What version to check out -- either the git SHA, the literal string ``HEAD``, branch name, or a tag name. +*remote*: + +* Name of the remote branch, defaults to 'origin'. + Example action from Ansible :doc:`playbooks`:: git repo=git://foosball.example.org/path/to/repo.git dest=/srv/checkout version=release-0.22 From 1694146c2dfd7dd164be5187bf2a5bab359746fc Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Thu, 26 Jul 2012 08:57:09 -0400 Subject: [PATCH 255/416] Document that apt-cache=yes is equivalent to apt-get update. --- rst/modules.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rst/modules.rst b/rst/modules.rst index ba4059a8581..3fc17092c66 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -52,7 +52,8 @@ Manages apt-packages (such as for Debian/Ubuntu). *update-cache*: -* Whether the apt cache must be updated prior to operation. Optional, and can be +* Whether the apt cache must be updated prior to operation. This is equivalent + to doing "apt-get update". Optional, and can be 'yes', or 'no'. The default is 'no'. This can be done as the part of a package operation or as a seperate step. From 0ca377eea4222043b09af14324f15e3a7189c95e Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 25 Jul 2012 23:33:32 -0400 Subject: [PATCH 256/416] Build + cleanup who uses page --- YAMLSyntax.html | 3 ++- api.html | 3 ++- bestpractices.html | 3 ++- examples.html | 3 ++- faq.html | 4 +++- genindex.html | 3 ++- gettingstarted.html | 3 ++- index.html | 4 +++- moduledev.html | 3 ++- modules.html | 3 ++- patterns.html | 3 ++- playbooks.html | 3 ++- playbooks2.html | 3 ++- rst/index.rst | 1 + rst/who_uses_ansible.rst | 27 +++++++++++++++++++++++++++ search.html | 3 ++- searchindex.js | 2 +- 17 files changed, 59 insertions(+), 15 deletions(-) create mode 100644 rst/who_uses_ansible.rst diff --git a/YAMLSyntax.html b/YAMLSyntax.html index b12af2c616d..a3f7f8d7dfb 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Who Uses Ansible
  • @@ -275,7 +276,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 20, 2012.
    + Last updated on Jul 25, 2012.

    diff --git a/api.html b/api.html index 528333d17cb..0905cb306f6 100644 --- a/api.html +++ b/api.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Who Uses Ansible
  • @@ -359,7 +360,7 @@ a conf.d file appropriately or something similar. Who knows?

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 20, 2012.
    + Last updated on Jul 25, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index 4f308f0fd37..caaf8967ba1 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Who Uses Ansible
  • @@ -297,7 +298,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 20, 2012.
    + Last updated on Jul 25, 2012.

    diff --git a/examples.html b/examples.html index 9a15b05c02d..f85e77d506a 100644 --- a/examples.html +++ b/examples.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Who Uses Ansible
  • @@ -382,7 +383,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 20, 2012.
    + Last updated on Jul 25, 2012.

    diff --git a/faq.html b/faq.html index 4179dadc15f..1132a12cd78 100644 --- a/faq.html +++ b/faq.html @@ -27,6 +27,7 @@ + + + + + + + + + + + + + + + + + + + + +Fork me on GitHub + + +
    + Ansible
    +
    + +
    +

    Who Uses Ansible

    +

    Ansible is used by all sorts of organizations from hosted web applications, media companies, consultancies, and ISVs. Some of these include:

    + ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +
    Who They AreWhat They Do
    The Fedora Projectproduces the popular Linux distribution
    Bashomakers of NoSQL key-value store Riak
    Four Kitchens“the Drupal Experts”
    Steelhouse.comBehavioral Commerce
    Cygate ABIT solutions from Malmö, Sweden
    Skyline.esRealtime Photo Search Engine
    +

    and lots of other people (you should see our Google Analytics data). Tweet at [Michael DeHaan](http://twitter.com/laserllama) or [email him](mailto:michael.dehaan@gmail.com) to get your company or project listed here. (It’s free!)

    +
    +

    See also

    +
    +
    Mailing List
    +
    Several hundred of our closest friends, great for Q&A
    +
    irc.freenode.net
    +
    #ansible IRC chat channel
    +
    List of Github Contributors
    +
    all the awesome folks who have contributed improvements to Ansible
    +
    Github Impact Graphs <https://github.com/ansible/ansible/graphs/impact>
    +
    week-to-week source code activity, by contributor
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +

    + + + +

    +

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on Jul 25, 2012.
    +

    +
    +
    + + \ No newline at end of file From fb7ab7b7edc933951c56a804d6a0ab71d442ffdc Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 25 Jul 2012 23:38:47 -0400 Subject: [PATCH 260/416] fix up html --- rst/who_uses_ansible.rst | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/rst/who_uses_ansible.rst b/rst/who_uses_ansible.rst index 986e0ae1f2a..0462f148f80 100644 --- a/rst/who_uses_ansible.rst +++ b/rst/who_uses_ansible.rst @@ -14,7 +14,7 @@ Who They Are What They Do `Skyline.es `_ Realtime Photo Search Engine ================================================== =================================================== -and lots of other people (you should see our Google Analytics data). Tweet at [Michael DeHaan](http://twitter.com/laserllama) or [email him](mailto:michael.dehaan@gmail.com) to get your company or project listed here. (It's free!) +and lots of other people (you should see our Google Analytics data). Tweet at `Michael DeHaan `_ or `email him `_ to get your company or project listed here. (It's free!) .. seealso:: diff --git a/searchindex.js b/searchindex.js index f1c3c989200..5417849eef2 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,unpars:4,abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,instruct:[0,5,3],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[6,12],"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9,12],compromis:5,assur:[10,7],height:3,guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],deal:4,tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:6,contriv:[],down:[9,6,7],contrib:4,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],wai:[0,1,3,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],forc:[0,6],batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:[3,6],self_destruct_countdown:8,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,assmebl:6,intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],ansible_hostnam:[10,6,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],condit:[3,10,7],word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[3,1,6,5,4,7,9,10,11],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],bounc:[6,7],non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,halon_system_timeout:8,term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:[3,12],yeah:[],contributor:12,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,state:[3,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[3,9,4],width:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],trigger:[5,6,7],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,chmod:[4,9,6,7],world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],node:[0,3,6,5,4,7,9,10,11],sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:[3,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,scp:11,nors:[],dehaan:[3,12],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,deleg:[],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],"public":10,hasn:5,full:[3,10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],virt:[3,6],taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,desir:[3,4,6,1,7],hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,unlink:6,associ:2,"short":[0,5,10,3],caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,unlik:[5,7],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,cron:[5,10],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,seth:5,group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],centos6:9,build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,filesystem:[10,6],cover:[9,3,5,11],dereferenc:[],clojur:4,clean:5,latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,great:[3,1,5,4,10,12],gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],async_wrapp:4,win:[],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,doubl:11,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:[],group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,jump:[0,3],download:0,ansible_python_interpret:8,append:6,turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],convert:4,convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],appli:[8,10,6,7],app:[5,10],apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],about:[0,1,2,3,4,5,6,7,10,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,some_serv:8,special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],"var":[3,1,6,7,8,10],rst:[],exactli:6,dive:7,daemonless:3,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5,3],cellspac:[],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:12,statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,job:[11,2],entir:[1,5,4,7,8,10],webapp:[5,11],"2pm":3,addit:[3,6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,wrap:1,structur:[10,6],distil:5,rpm:[0,4,3],mailto:12,quit:[0,4,1],pin:6,platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6,12],hostnam:[8,10,9,6,7],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],necessari:[6,11],lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:12,linux:[0,5,6,12,3],"export":0,home:6,transport:[0,5,3],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],pitfal:[3,4],hang:7,leverag:0,transfer:[3,4,6,11],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],evalu:[10,11],is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,inc:6,boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],branch:[0,6],varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9,12],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],somelog:6,word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],ensur:[0,3,5,6,7,10,11],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,what:[0,1,2,3,4,5,6,7,9,10,12],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,append:6,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6,12],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],rememb:11,varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 8d8f32d04f8..2d9230b533f 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -207,7 +207,7 @@ s.parentNode.insertBefore(ga, s); -

    and lots of other people (you should see our Google Analytics data). Tweet at [Michael DeHaan](http://twitter.com/laserllama) or [email him](mailto:michael.dehaan@gmail.com) to get your company or project listed here. (It’s free!)

    +

    and lots of other people (you should see our Google Analytics data). Tweet at Michael DeHaan or email him to get your company or project listed here. (It’s free!)

    See also

    From ebdb991813ca86b1172f2dd812fe5b0df19b11f9 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 25 Jul 2012 23:49:33 -0400 Subject: [PATCH 261/416] link fix --- rst/who_uses_ansible.rst | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/rst/who_uses_ansible.rst b/rst/who_uses_ansible.rst index 0462f148f80..05ba716029e 100644 --- a/rst/who_uses_ansible.rst +++ b/rst/who_uses_ansible.rst @@ -24,5 +24,5 @@ and lots of other people (you should see our Google Analytics data). Tweet at ` #ansible IRC chat channel `List of Github Contributors `_ all the awesome folks who have contributed improvements to Ansible - `Github Impact Graphs ` + `Github Impact Graphs `_ week-to-week source code activity, by contributor diff --git a/searchindex.js b/searchindex.js index 5417849eef2..6467b8f0e98 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9,12],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],somelog:6,word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],ensur:[0,3,5,6,7,10,11],contrib:4,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,what:[0,1,2,3,4,5,6,7,9,10,12],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,append:6,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6,12],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],rememb:11,varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,unpars:4,abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],contrib:4,notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,instruct:[0,5,3],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[6,12],"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9,12],compromis:5,assur:[10,7],height:3,guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],deal:4,tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:6,contriv:[],down:[9,6,7],wrap:1,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],wai:[0,1,3,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],forc:[0,6],batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:[3,6],self_destruct_countdown:8,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,assmebl:6,intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],ansible_hostnam:[10,6,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],condit:[3,10,7],word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[3,1,6,5,4,7,9,10,11],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],bounc:[6,7],non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,halon_system_timeout:8,term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contributor:12,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,state:[3,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[3,9,4],width:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],trigger:[5,6,7],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],node:[0,3,6,5,4,7,9,10,11],sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:[3,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,scp:11,nors:[],dehaan:[3,12],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,deleg:[],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],"public":10,hasn:5,full:[3,10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],virt:[3,6],taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,desir:[3,4,6,1,7],hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,unlink:6,associ:2,"short":[0,5,10,3],caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,unlik:[5,7],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,cron:[5,10],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,seth:5,group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],centos6:9,build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,filesystem:[10,6],cover:[9,3,5,11],dereferenc:[],clojur:4,clean:5,latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,great:[3,1,5,4,10,12],gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],async_wrapp:4,win:[],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,doubl:11,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:[],group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,jump:[0,3],download:0,ansible_python_interpret:8,append:6,turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],convert:4,convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],appli:[8,10,6,7],app:[5,10],apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],about:[0,1,2,3,4,5,6,7,10,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,some_serv:8,special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],"var":[3,1,6,7,8,10],rst:[],exactli:6,dive:7,daemonless:3,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5,3],cellspac:[],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,job:[11,2],entir:[1,5,4,7,8,10],webapp:[5,11],"2pm":3,addit:[3,6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6],hostnam:[8,10,9,6,7],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],necessari:[6,11],lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,transport:[0,5,3],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],pitfal:[3,4],hang:7,leverag:0,transfer:[3,4,6,11],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],evalu:[10,11],is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,inc:6,boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],branch:[0,6],varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 2d9230b533f..5fa02eed819 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -217,7 +217,7 @@ s.parentNode.insertBefore(ga, s);
    #ansible IRC chat channel
    List of Github Contributors
    all the awesome folks who have contributed improvements to Ansible
    -
    Github Impact Graphs <https://github.com/ansible/ansible/graphs/impact>
    +
    Github Impact Graphs
    week-to-week source code activity, by contributor
    From 58cb60c8af9e218c3af6ee3bfbbb1eb8e5815a36 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 27 Jul 2012 19:22:51 -0400 Subject: [PATCH 262/416] fix company name + docs rebuild --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 2 +- moduledev.html | 2 +- modules.html | 2 +- patterns.html | 2 +- playbooks.html | 2 +- playbooks2.html | 2 +- rst/who_uses_ansible.rst | 2 +- search.html | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 4 ++-- 17 files changed, 18 insertions(+), 18 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index a3f7f8d7dfb..077c80cd124 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -276,7 +276,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/api.html b/api.html index 0905cb306f6..2a93128effa 100644 --- a/api.html +++ b/api.html @@ -360,7 +360,7 @@ a conf.d file appropriately or something similar. Who knows?

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index caaf8967ba1..87b6960186a 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -298,7 +298,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/examples.html b/examples.html index f85e77d506a..b972178772b 100644 --- a/examples.html +++ b/examples.html @@ -383,7 +383,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/faq.html b/faq.html index 1132a12cd78..a3cae6602ef 100644 --- a/faq.html +++ b/faq.html @@ -390,7 +390,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/genindex.html b/genindex.html index 10560a3c504..72ff45e1c76 100644 --- a/genindex.html +++ b/genindex.html @@ -191,7 +191,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 4c7e7c3e20a..b8baec67e89 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -378,7 +378,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/index.html b/index.html index bb35839b667..c5ee455beb7 100644 --- a/index.html +++ b/index.html @@ -456,7 +456,7 @@ Puppet Labs, and is now with `_ Behavioral Commerce +`Steelhouse `_ Behavioral Commerce `Cygate AB `_ IT solutions from Malmö, Sweden `Skyline.es `_ Realtime Photo Search Engine ================================================== =================================================== diff --git a/search.html b/search.html index 112b3891539..7572fa7e48b 100644 --- a/search.html +++ b/search.html @@ -208,7 +208,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    diff --git a/searchindex.js b/searchindex.js index 6467b8f0e98..1599149fcdb 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,unpars:4,abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],contrib:4,notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,instruct:[0,5,3],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[6,12],"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9,12],compromis:5,assur:[10,7],height:3,guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],deal:4,tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:6,contriv:[],down:[9,6,7],wrap:1,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],wai:[0,1,3,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],forc:[0,6],batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:[3,6],self_destruct_countdown:8,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,assmebl:6,intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],ansible_hostnam:[10,6,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],condit:[3,10,7],word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[3,1,6,5,4,7,9,10,11],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],bounc:[6,7],non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,halon_system_timeout:8,term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],contributor:12,backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,state:[3,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[3,9,4],width:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],trigger:[5,6,7],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],node:[0,3,6,5,4,7,9,10,11],sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:[3,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,scp:11,nors:[],dehaan:[3,12],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,deleg:[],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],"public":10,hasn:5,full:[3,10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],virt:[3,6],taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,desir:[3,4,6,1,7],hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,unlink:6,associ:2,"short":[0,5,10,3],caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,unlik:[5,7],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,cron:[5,10],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,seth:5,group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],centos6:9,build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,filesystem:[10,6],cover:[9,3,5,11],dereferenc:[],clojur:4,clean:5,latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,great:[3,1,5,4,10,12],gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],async_wrapp:4,win:[],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,doubl:11,primarili:6,pythonpath:[],within:[8,10,5,6],ensur:[0,3,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:[],group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,jump:[0,3],download:0,ansible_python_interpret:8,append:6,turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],convert:4,convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],appli:[8,10,6,7],app:[5,10],apt:[3,10,6,1,11],"boolean":2,cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],about:[0,1,2,3,4,5,6,7,10,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,some_serv:8,special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],"var":[3,1,6,7,8,10],rst:[],exactli:6,dive:7,daemonless:3,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5,3],cellspac:[],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,job:[11,2],entir:[1,5,4,7,8,10],webapp:[5,11],"2pm":3,addit:[3,6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6],hostnam:[8,10,9,6,7],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],necessari:[6,11],lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,transport:[0,5,3],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],pitfal:[3,4],hang:7,leverag:0,transfer:[3,4,6,11],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],evalu:[10,11],is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,inc:6,boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],branch:[0,6],varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,contrib:4,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],somelog:6,word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],ensur:[0,3,5,6,7,10,11],backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,what:[0,1,2,3,4,5,6,7,9,10,12],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,append:6,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,wrap:1,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],rememb:11,varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 5fa02eed819..f3eec411169 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -196,7 +196,7 @@ s.parentNode.insertBefore(ga, s);
    Four Kitchens “the Drupal Experts” -Steelhouse.com +Steelhouse Behavioral Commerce Cygate AB @@ -238,7 +238,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 25, 2012.
    + Last updated on Jul 27, 2012.

    From db19d83e401594d33eae7c126139d89c18ee12dc Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 27 Jul 2012 20:35:45 -0400 Subject: [PATCH 263/416] Update the format of the modules page to use tables. --- modules.html | 863 ++++++++++++++++++++++++++++++++---------------- rst/modules.rst | 486 ++++++++++++--------------- searchindex.js | 2 +- 3 files changed, 789 insertions(+), 562 deletions(-) diff --git a/modules.html b/modules.html index c4b8cbccf42..3099e86b7a3 100644 --- a/modules.html +++ b/modules.html @@ -210,9 +210,8 @@ ansible webservers -m ping ansible webservers -m command -a "/sbin/reboot -t now"

    Each module supports taking arguments. Nearly all modules take key=value -arguments, space delimited. Some modules take -no arguments, and the command/shell modules simply take the string -of the command you want to run.

    +arguments, space delimited. Some modules take no arguments, and the +command/shell modules simply take the string of the command you want to run.

    From playbooks, Ansible modules are executed in a very similar way:

    - name: reboot the servers
       action: command /sbin/reboot -t now
    @@ -229,34 +228,56 @@ noted, any given module does support change hooks.

    apt

    Manages apt-packages (such as for Debian/Ubuntu).

    -

    pkg:

    -
      -
    • A package name or package specifier with version, like foo, or foo=1.0 to install a specific version of the foo package.
    • -
    -

    state:

    -
      -
    • Can be either ‘installed’, ‘removed’, or ‘latest’. The default is ‘installed’. (In 0.4 and later, the aliases ‘absent’ and ‘present’ can also be used. They correspond with ‘removed’ and ‘installed’)
    • -
    -

    update-cache:

    -
      -
    • Whether the apt cache must be updated prior to operation. This is equivalent -to doing “apt-get update”. Optional, and can be -‘yes’, or ‘no’. The default is ‘no’. This can be done as the part of a -package operation or as a seperate step.
    • -
    -

    purge:

    -
      -
    • Will force purge of configuration file for when ensure is set to ‘removed’. -Defaults to ‘no’.
    • -
    -

    default-release:

    -
      -
    • Corresponds to the -t option for apt, and sets pin priorities
    • -
    -

    install-recommends: (devel branch now, part of ansible 0.6 later)

    -
      -
    • Corresponds to the –no-install-recommends option for apt. Defaults to ‘yes’, which means install the recommended packages the same way APT does by default. Set this to ‘no’ to add the option not to install recommended packages.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameno A package name or package specifier with version, like foo or foo=1.0
    statenopresent‘absent’, ‘present’, or ‘latest’.
    update-cachenonorun the equivalent of apt-get update before the operation? +Can be run as part of the package installation or a seperate step
    purgenonoWill forge purge of configuration files if state is set to ‘removed’.
    default-releaseno Corresponds to the -t option for apt and sets pin priorities
    install-recommendsnoyesCorresponds to the –no-install-recommends option for apt, default +behavior works as apt’s default behavior, ‘no’ does not install +recommended packages. Suggested packages are never installed.

    Example action from Ansible Playbooks:

    apt pkg=foo update-cache=yes
     apt pkg=foo state=removed
    @@ -273,14 +294,38 @@ and does not support a conf.d style structure where it is easy to build up the c
     Assmeble will take a directory of files that have already been transferred to the system, and concatenate them
     together to produce a destination file.  Files are assembled in string sorting order.   Puppet calls this idea
     “fragments”.

    -

    src:

    -
      -
    • An already existing directory full of source files.
    • -
    -

    dest:

    -
      -
    • A file to create using the concatenation of all of the source files.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    srcyes An already existing directory full of source files
    destyes A file to create using the concatenation of all of the source files
    OTHERS  All arguments that the file module takes may also be used

    Example action from Ansible Playbooks:

    assemble src=/etc/someapp/fragments dest=/etc/someapp/someapp.conf
    @@ -288,18 +333,38 @@ together to produce a destination file. Files are assembled in string sorting o

    authorized_key

    (new in 0.5). Adds or removes an authorized key for a user from a remote host.

    -

    user:

    -
      -
    • Name of the user who access is being granted or remoted to.
    • -
    -

    state:

    -
      -
    • Either ‘absent’ or ‘present’, this is whether the given key should be in the authorized keys file or not.
    • -
    -

    key:

    -
      -
    • The actual key, as a string.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    useryes Name of the user who should have access to the remote host
    keyyes the SSH public key, as a string
    statenopresentwhether the given key should or should not be in the file

    Example action from Ansible Playbooks:

    authorized_key user=charlie key="ssh-dss ASDF1234L+8BTwaRYr/rycsBF1D8e5pTxEsXHQs4iq+mZdyWqlW++L6pMiam1A8yweP+rKtgjK2httVS6GigVsuWWfOd7/sdWippefq74nppVUELHPKkaIOjJNN1zUHFoL/YMwAAAEBALnAsQN10TNGsRDe5arBsW8cTOjqLyYBcIqgPYTZW8zENErFxt7ij3fW3Jh/sCpnmy8rkS7FyK8ULX0PEy/2yDx8/5rXgMIICbRH/XaBy9Ud5bRBFVkEDu/r+rXP33wFPHjWjwvHAtfci1NRBAudQI/98DbcGQw5HmE89CjgZRo5ktkC5yu/8agEPocVjdHyZr7PaHfxZGUDGKtGRL2QzRYukCmWo1cZbMBHcI5FzImvTHS9/8B3SATjXMPgbfBuEeBwuBK5EjL+CtHY5bWs9kmYjmeo0KfUMH8hY4MAXDoKhQ7DhBPIrcjS5jPtoGxIREZjba67r6/P2XKXaCZH6Fc= charlie@example.org 2011-01-17"
    @@ -332,16 +397,40 @@ following:

    The copy module moves a file on the local box to remote locations. In addition to the options listed below, the arguments available to the file module can also be passed to the copy module.

    -

    src:

    -
      -
    • Local path to a file to copy to the remote server. This can be an -absolute or relative path.
    • -
    -

    dest:

    -
      -
    • Remote absolute path where the file should end up.
    • -
    -

    This module also returns md5sum information about the resultant file.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    srcyes Local path to a file to copy to the remote server, can be absolute or +relative.
    destyes Remote absolute path where the file should end up
    OTHERS  All arguments the file module takes are also supported
    +

    This module also returns md5sum and other information about the resultant file.

    Example action from Ansible Playbooks:

    copy src=/srv/myfiles/foo.conf dest=/etc/foo.conf owner=foo group=foo mode=0644
    @@ -360,70 +449,129 @@ module behind the scenes.

    fetch

    This module works like ‘copy’, but in reverse. It is used for fetching files from remote machines and storing them locally in a file tree, organized by hostname.

    -

    src:

    -
      -
    • The file on the remote system to fetch. This needs to be a file, not a directory. Recursive fetching may be supported later.
    • -
    -

    dest:

    -
      -
    • A directory to save the file into. For example, if the ‘dest’ directory is ‘/foo’, a src file named ‘/tmp/bar’ on host ‘host.example.com’, would be saved into ‘/foo/host.example.com/tmp/bar’ (in Ansible 0.0.3 and later).
    • -
    -

    The fetch module is a useful way to gather log files from remote systems. If you require -fetching multiple files from remote systems, you may wish to execute a tar command and -then fetch the tarball.

    + ++++++ + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    srcyes The file on the remote system to fetch. This needs to be a file, not +a directory. Recursive fetching may be supported in a later release.
    destyes A directory to save the file into. For example, if the ‘dest’ directory +is ‘/foo’, a src file named ‘/tmp/bar’ on host ‘host.example.com’, would +be saved into ‘/foo/host.example.com/tmp/bar’

    Example:

    fetch src=/var/log/messages dest=/home/logtree

    file

    -

    Sets attributes of files, symlinks, and directories, or removes files/symlinks/directories. -All parameters available to the file module are also available when running the copy or -template modules.

    -

    dest:

    -
      -
    • alias for ‘path’. Sets an absolute path to a file on the filesystem when used with ‘state=file’. When used with ‘state=link’, sets the destination to create a symbolic link defined by ‘src’ key.
    • -
    -

    state:

    -
      -
    • either ‘file’, ‘link’, ‘directory’, or ‘absent’. The default is ‘file’. If ‘directory’, the directory and all immediate subdirectories will be created if they do not exist. If ‘file’, the file will NOT be created if it does not exist, specify copy or template for the module name instead if you need to put content at the specified location. If ‘link’, the symbolic link will be created or changed. If ‘absent’, directories will be recursively deleted, and files or symlinks will be unlinked.
    • -
    -

    mode:

    -
      -
    • the mode the file or directory should be, such as 644, as would be given to chmod. English modes like “g+x” are not yet supported.
    • -
    -

    owner:

    -
      -
    • name of user that should own the file or directory, as would be given to chown
    • -
    -

    group:

    -
      -
    • name of group that should own the file or directory, as would be given to chgrp
    • -
    -

    src:

    -
      -
    • path of the file to link to (applies only to ‘link’ state)
    • -
    -

    seuser:

    -
      -
    • ‘user’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify ‘_default’, it will use the ‘user’ portion of default context from the policy if available.
    • -
    -

    serole:

    -
      -
    • ‘role’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify ‘_default’, it will use the ‘role’ portion of default context from the policy if available.
    • -
    -

    setype:

    -
      -
    • ‘type’ part of SELinux file context. Will default to what is provided by system policy, if available. Only used on systems with SELinux present. If you specify ‘_default’, it will use the ‘type’ portion of default context from the policy if available.
    • -
    -

    selevel:

    -
      -
    • ‘level’ part of SELinux file context. This is the MLS and MCS attribute of the file context, also sometimes known as the ‘range’. It defaults to ‘s0’. Only used only used on hosts with SELinux present. If you specify ‘_default’, it will use the ‘level’ portion of default context from the policy if available.
    • -
    -

    context:

    -
      -
    • accepts only ‘default’ as value. This will restore a file’s selinux context to the default context in the policy. Does nothing if no default is available. Only used on hosts with SELinux present.
    • -
    +

    Sets attributes of files, symlinks, and directories, or removes files/symlinks/directories. Many other modules +support the same options as the file module – including ‘copy’, ‘template’, and ‘assmeble’.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    destyes defines the file being managed, unless when used with state=link, and +then sets the destination to create a symbolic link to using ‘src’
    state filevalues are ‘file’, ‘link’, ‘directory’, or ‘absent’. If directory, +all immediate subdirectories will be created if they do not exist. If +‘file’, the file will NOT be created if it does not exist, see the ‘copy’ +or ‘template’ module if you want that behavior. If ‘link’, the symbolic +link will be created or changed. If absent, directories will be +recursively deleted, and files or symlinks will be unlinked.
    mode  mode the file or directory shoudl be, such as 0644 as would be fed to +chmod. English modes like ‘g+x’ are not yet supported
    owner  name of the user that should own the file/directory, as would be fed to +chown
    group  name of the group that should own the file/directory, as would be fed to +group
    src  path of the file to link to (applies only to state=link)
    seuser  user part of SELinux file context. Will default to system policy, if +applicable. If set to ‘_default’, it will use the ‘user’ portion of the +the policy if available
    serole  role part of SELinux file context, ‘_default’ feature works as above.
    setype  type part of SELinux file context, ‘_default’ feature works as above
    selevel s0level part of the SELinux file context. This is the MLS/MCS attribute, +sometimes known as the ‘range’. ‘_default’ feature works as above
    context  accepts only ‘default’ as a value. This will restore a file’s selinux +context in the policy. Does nothing if no default is available.

    Example action from Ansible Playbooks:

    file path=/etc/foo.conf owner=foo group=foo mode=0644
     file path=/some/path owner=foo group=foo state=directory
    @@ -436,23 +584,44 @@ file path=/some/path state=directory context=default

    git

    Deploys software (or files) from git checkouts.

    -

    repo:

    -
      -
    • git, ssh, or http protocol address of the git repo to checkout.
    • -
    -

    dest:

    -
      -
    • Where to check it out, an absolute directory path.
    • -
    -

    version:

    -
      -
    • What version to check out – either the git SHA, the literal string -HEAD, branch name, or a tag name.
    • -
    -

    remote:

    -
      -
    • Name of the remote branch, defaults to ‘origin’.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    repoyes git, ssh, or http protocol address of the git repo
    destyes absolute path of where the repo should be checked out to
    version  what version to check out – either the git SHA, the literal string +‘HEAD’, branch name, or a tag name.
    remote originname of the remote branch

    Example action from Ansible Playbooks:

    git repo=git://foosball.example.org/path/to/repo.git dest=/srv/checkout version=release-0.22
    @@ -460,22 +629,43 @@ file path=/some/path state=directory context=default

    group

    Adds or removes groups.

    -

    name:

    -
      -
    • name of the group
    • -
    -

    gid:

    -
      -
    • optional gid to set for the group
    • -
    -

    state:

    -
      -
    • either ‘absent’, or ‘present’. ‘present’ is the default.
    • -
    -

    system:

    -
      -
    • (new in 0.4) Indicates the group (when being created), should be a system group. This does not allow changing groups from and to system groups. Value is ‘yes’ or ‘no’, default is ‘no’.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes name of the group
    gid  optional git to set for the group
    state present‘absent’ or ‘present’
    system noif ‘yes’, indicates that the group being created is a system group.

    To control members of the group, see the users resource.

    Example action from Ansible Playbooks:

    group name=somegroup state=present
    @@ -518,26 +708,47 @@ for this module.

    service

    Controls services on remote machines.

    -

    state:

    -
      -
    • Values are started, stopped, reloaded, or restarted. -Started/stopped are idempotent actions that will not run commands -unless necessary. restarted will always bounce the service, reloaded -will always issue a reload.
    • -
    -

    enabled:

    -
      -
    • (new in 0.4) Whether the service should start on boot. Either ‘yes’ or ‘no’. -Uses chkconfig or updates-rc.d as appropriate.
    • -
    -

    list:

    -
      -
    • (new in 0.4) When used with the value ‘status’, returns the status of the service along with other results. This is primarily useful for /usr/bin/ansible, and not meaningful for playbooks.
    • -
    -

    name:

    -
      -
    • The name of the service.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes name of the service
    statenostarted‘started’, ‘stopped’, ‘reloaded’, or ‘restarted’. Started/stopped are +idempotent actions that will not run commands unless neccessary. +‘restarted’ will always bounce the service, ‘reloaded’ will always reload.
    enabledno Whether the service should start on boot. Either ‘yes’ or ‘no’.
    listno when used as ‘list=status’, returns the status of the service along with +other results. Primarily useful for /usr/bin/ansible or playbooks with +–verbose.

    Example action from Ansible Playbooks:

    service name=httpd state=started
     service name=httpd state=stopped
    @@ -547,11 +758,9 @@ service name=httpd state=reloaded

    setup

    -

    Writes a JSON file containing key/value data, for use in templating. -Call this once before using the template module. Playbooks -will execute this module automatically as the first step in each play -using the variables section, so it is unnecessary to make explicit -calls to setup within a playbook.

    +

    This module is automatically called by playbooks to gather useful variables about remote hosts that can be used +in playbooks. It can also be executed directly by /usr/bin/ansible to check what variables are available +to a host.

    Ansible provides many ‘facts’ about the system, automatically.

    Some of the variables that are supplied are listed below. These in particular are from a VMWare Fusion 4 VM running CentOS 6.2:

    @@ -625,17 +834,8 @@ tell their source.

    All variables are bubbled up to the caller. Using the ansible facts and choosing to not install facter and ohai means you can avoid ruby-dependencies on your remote systems.

    -

    variablename:

    -
      -
    • Arbitrary variable names, which must be a mix of alphanumeric characters and underscores, can also be defined. Setting a variable creates a key=value pair in the JSON file for use in templating.
    • -
    -

    Example action from Ansible Playbooks:

    -
    vars:
    -    ntpserver: 'ntp.example.com'
    -    xyz: 1234
    -

    Example action from /usr/bin/ansible:

    -
    ansible all -m setup -a "ntpserver=ntp.example.com xyz=1234"
    +
    ansible testserver -m setup
    @@ -658,20 +858,40 @@ command was running.

    template

    -

    Templates a file out to a remote server. Call the setup module -prior to usage if you are not running from a playbook. In addition to the options -listed below, the arguments available to the file and copy modules can also be passed -to the template module.

    -

    src:

    -
      -
    • Path of a Jinja2 formatted template on the local server. This can -be a relative or absolute path.
    • -
    -

    dest:

    -
      -
    • Location to render the template on the remote server
    • -
    -

    This module also returns md5sum information about the resultant file.

    +

    Templates a file out to a remote server.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    srcyes Path of a Jinja2 formatted template on the local server. This can be +a relative or absolute path.
    destyes Location to render the template on the remote server
    OTHERS  This module also supports all of the arguments to the file module

    Example action from a playbook:

    template src=/srv/mytemplates/foo.j2 dest=/etc/foo.conf owner=foo group=foo mode=0644
    @@ -679,62 +899,96 @@ be a relative or absolute path.

    user

    Creates user accounts, manipulates existing user accounts, and removes user accounts.

    -

    name:

    -
      -
    • Name of the user to create, remove, or edit
    • -
    -

    comment:

    -
      -
    • Optionally sets the description of the user
    • -
    -

    uid:

    -
      -
    • optional uid to set for the user
    • -
    -

    group:

    -
      -
    • Optionally sets the user’s primary group, takes a group name
    • -
    -

    groups:

    -
      -
    • Put the user in the specified groups, takes comma delimited group names
    • -
    -

    append:

    -
      -
    • If true, will only add additional groups to the user listed in ‘groups’, rather than making the user only be in those specified groups
    • -
    -

    shell:

    -
      -
    • Optionally sets the user’s shell
    • -
    -

    createhome:

    -
      -
    • Whether to create the user’s home directory. Takes ‘yes’, or ‘no’. The default is ‘yes’.
    • -
    -

    home=:

    -
      -
    • Specifies where the user’s home directory should be, if not in /home/$username.
    • -
    -

    password:

    -
      -
    • Sets the user’s password to this crypted value. Pass in a result from crypt. See the users example in the github examples directory for what this looks like in a playbook.
    • -
    -

    state:

    -
      -
    • Defaults to ‘present’. When ‘absent’, the user account will be removed if present. Optionally additional removal behaviors can be set with the ‘force’ or ‘remove’ parameter values (see below).
    • -
    -

    system:

    -
      -
    • (new in 0.4) Indicates the user (when being created), should be a system account. This does not allow changing users from and to system accounts. Value is ‘yes’ or ‘no’, default is ‘no’.
    • -
    -

    force:

    -
      -
    • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for --force is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.
    • -
    -

    remove:

    -
      -
    • When used with a state of ‘absent’, the behavior denoted in the ‘userdel’ manpage for --remove is also used when removing the user. Value is ‘yes’ or ‘no’, default is ‘no’.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes name of the user to create, remove, or edit
    comment  optionally sets the description of the user
    uid  optionally sets the uid of the user
    group  optionally sets the user’s primary group (takes a group name)
    groups  puts the user in this comma-delimited list of groups
    append noif ‘yes’, will only add groups, not set them to just the list in ‘groups’
    shell  optionally set the user’s shell
    createhome yesunless ‘no’, a home directory will be made for the user
    home  sets where the user’s homedir should be, if not the default
    password  optionally set the user’s password to this crypted value. See the user’s +example in the github examples directory for what this looks like in a +playbook
    state presentwhen ‘absent’, removes the user.
    system noonly when initially creating, setting this to ‘yes’ makes the user a +system account. This setting cannot be changed on existing users.
    force nowhen used with state=absent, behavior is as with userdel –force
    remove nowhen used with state=remove, behavior is as with userdel –remove

    Example action from Ansible Playbooks:

    user name=mdehaan comment=awesome passwd=awWxVV.JvmdHw createhome=yes
     user name=mdehaan groups=wheel,skynet
    @@ -745,18 +999,41 @@ user name=mdehaan state=absent force=yes

    virt

    Manages virtual machines supported by libvirt. Requires that libvirt be installed on the managed machine.

    -

    guest:

    -
      -
    • The name of the guest VM being managed
    • -
    -

    state

    -
      -
    • Desired state of the VM. Either running, shutdown, destroyed, or undefined. Note that there may be some lag for state requests like ‘shutdown’, and these states only refer to the virtual machine states. After starting a guest, the guest OS may not be immediately accessible.
    • -
    -

    command:

    -
      -
    • In addition to state management, various non-idempotent commands are available for API and script usage (but don’t make much sense in a playbook). These mostly return information, though some also affect state. See examples below.
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes name of the guest VM being managed
    state  ‘running’, ‘shutdown’, ‘destroyed’, or ‘undefined’. Note that there may +be some lag for state requests like ‘shutdown’ since these refer only to +VM states. After starting a guest, it may not be immediately accessible.
    command  in addition to state management, various non-idempotent commands are +available. See examples below.

    Example action from Ansible Playbooks:

    virt guest=alpha state=running
     virt guest=alpha state=shutdown
    @@ -781,21 +1058,39 @@ ansible host -m virt -a "command=virttype"

    yum

    Will install, upgrade, remove, and list packages with the yum package manager.

    -

    pkg:

    -
      -
    • A package name or package specifier with version, like name-1.0
    • -
    -

    state:

    -
      -
    • Can be either ‘installed’, ‘latest’, or ‘removed’. The default is ‘installed’. (In 0.4 and later, the aliases ‘absent’ and ‘present’ can also be used. They correspond with ‘removed’ and ‘installed’)
    • -
    -

    list:

    -
      -
    • When ‘list’ is supplied instead of ‘state’, the yum module can list -various configuration attributes. Values include ‘installed’, ‘updates’, -‘available’, ‘repos’, or any package specifier. (This is more intended for -use with /usr/bin/ansible or the API, not playbooks.)
    • -
    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes package name, or package specifier with version, like ‘name-1.0’
    state present‘present’, ‘latest’, or ‘absent’.
    list  various non-idempotent commands for usage with /usr/bin/ansible and not +playbooks. See examples below.

    Example action from Ansible Playbooks:

    yum pkg=httpd state=latest
     yum pkg=httpd state=removed
    diff --git a/rst/modules.rst b/rst/modules.rst
    index 7cd42e291ca..0366989c44b 100644
    --- a/rst/modules.rst
    +++ b/rst/modules.rst
    @@ -14,9 +14,8 @@ Let's review how we execute three different modules from the command line::
         ansible webservers -m command -a "/sbin/reboot -t now"
     
     Each module supports taking arguments.  Nearly all modules take ``key=value`` 
    -arguments, space delimited.  Some modules take
    -no arguments, and the command/shell modules simply take the string
    -of the command you want to run.
    +arguments, space delimited.  Some modules take no arguments, and the 
    +command/shell modules simply take the string of the command you want to run.
     
     From playbooks, Ansible modules are executed in a very similar way::
     
    @@ -42,33 +41,24 @@ apt
     
     Manages apt-packages (such as for Debian/Ubuntu).
     
    -*pkg*:
    -
    -* A package name or package specifier with version, like `foo`, or `foo=1.0` to install a specific version of the foo package.
    -
    -*state*:
    -
    -* Can be either 'installed', 'removed', or 'latest'.  The default is 'installed'.  (In 0.4 and later, the aliases 'absent' and 'present' can also be used.  They correspond with 'removed' and 'installed')
    -
    -*update-cache*:
    -
    -* Whether the apt cache must be updated prior to operation. This is equivalent
    -  to doing "apt-get update". Optional, and can be
    -  'yes', or 'no'. The default is 'no'.  This can be done as the part of a
    -  package operation or as a seperate step.
    -
    -*purge*:
    -
    -* Will force purge of configuration file for when ensure is set to 'removed'.
    -  Defaults to 'no'.
    -
    -*default-release*:
    -
    -* Corresponds to the -t option for apt, and sets pin priorities
    -
    -*install-recommends*: (devel branch now, part of ansible 0.6 later)
    -
    -* Corresponds to the --no-install-recommends option for apt. Defaults to 'yes', which means install the recommended packages the same way APT does by default. Set this to 'no' to add the option not to install recommended packages.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| name               | no       |         | A package name or package specifier with version, like `foo` or `foo=1.0`  |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              | no       | present | 'absent', 'present', or 'latest'.                                          |  
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| update-cache       | no       | no      | run the equivalent of apt-get update before the operation?                 |
    +|                    |          |         | Can be run as part of the package installation or a seperate step          | 
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| purge              | no       | no      | Will forge purge of configuration files if state is set to 'removed'.      |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| default-release    | no       |         | Corresponds to the -t option for apt and sets pin priorities               |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| install-recommends | no       | yes     | Corresponds to the --no-install-recommends option for apt, default         |
    +|                    |          |         | behavior works as apt's default behavior, 'no' does not install            |
    +|                    |          |         | recommended packages.  Suggested packages are never installed.             |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -90,13 +80,15 @@ Assmeble will take a directory of files that have already been transferred to th
     together to produce a destination file.  Files are assembled in string sorting order.   Puppet calls this idea
     "fragments".
     
    -*src*:
    -
    -* An already existing directory full of source files.
    -
    -*dest*:
    -
    -* A file to create using the concatenation of all of the source files.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| src                | yes      |         | An already existing directory full of source files                         |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| dest               | yes      |         | A file to create using the concatenation of all of the source files        |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| OTHERS             |          |         | All arguments that the file module takes may also be used                  |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -110,17 +102,15 @@ authorized_key
     
     (new in 0.5).  Adds or removes an authorized key for a user from a remote host.
     
    -*user*:
    -
    -* Name of the user who access is being granted or remoted to.
    -
    -*state*:
    -
    -* Either 'absent' or 'present', this is whether the given key should be in the authorized keys file or not.
    -
    -*key*:
    -
    -* The actual key, as a string.  
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| user               | yes      |         | Name of the user who should have access to the remote host                 |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| key                | yes      |         | the SSH public key, as a string                                            |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              | no       | present | whether the given key should or should not be in the file                  |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -169,17 +159,18 @@ The copy module moves a file on the local box to remote locations.  In addition
     listed below, the arguments available to the `file` module can also be passed to the copy
     module.
     
    -*src*:
    -
    -* Local path to a file to copy to the remote server.  This can be an
    -  absolute or relative path.
    -
    -
    -*dest*:
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| src                | yes      |         | Local path to a file to copy to the remote server, can be absolute or      |
    +|                    |          |         | relative.                                                                  |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| dest               | yes      |         | Remote absolute path where the file should end up                          | 
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| OTHERS             |          |         | All arguments the file module takes are also supported                     |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
    -* Remote absolute path where the file should end up.
    -
    -This module also returns md5sum information about the resultant file.
    +This module also returns md5sum and other information about the resultant file.
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -208,17 +199,16 @@ fetch
     This module works like 'copy', but in reverse.  It is used for fetching files
     from remote machines and storing them locally in a file tree, organized by hostname.
     
    -*src*:
    -
    -* The file on the remote system to fetch.  This needs to be a file, not a directory. Recursive fetching may be supported later.
    -
    -*dest*:
    -
    -* A directory to save the file into.  For example, if the 'dest' directory is '/foo', a src file named '/tmp/bar' on host 'host.example.com', would be saved into '/foo/host.example.com/tmp/bar' (in Ansible 0.0.3 and later).
    -
    -The fetch module is a useful way to gather log files from remote systems.  If you require
    -fetching multiple files from remote systems, you may wish to execute a tar command and
    -then fetch the tarball.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| src                | yes      |         | The file on the remote system to fetch.  This needs to be a file, not      |
    +|                    |          |         | a directory.  Recursive fetching may be supported in a later release.      |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| dest               | yes      |         | A directory to save the file into.  For example, if the 'dest' directory   |
    +|                    |          |         | is '/foo', a src file named '/tmp/bar' on host 'host.example.com', would   |
    +|                    |          |         | be saved into '/foo/host.example.com/tmp/bar'                              |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example::
     
    @@ -228,53 +218,47 @@ Example::
     file
     ````
     
    -Sets attributes of files, symlinks, and directories, or removes files/symlinks/directories. 
    -All parameters available to the file module are also available when running the `copy` or 
    -`template` modules.
    -
    -*dest*:
    -
    -* alias for 'path'. Sets an absolute path to a file on the filesystem when used with 'state=file'. When used with 'state=link', sets the destination to create a symbolic link defined by 'src' key.
    -
    -*state*:
    -
    -* either 'file', 'link', 'directory', or 'absent'.  The default is 'file'.  If 'directory', the directory and all immediate subdirectories will be created if they do not exist.  If 'file', the file will NOT be created if it does not exist, specify `copy` or `template` for the module name instead if you need to put content at the specified location.  If 'link', the symbolic link will be created or changed.  If 'absent', directories will be recursively deleted, and files or symlinks will be unlinked.
    -
    -*mode*:
    -
    -* the mode the file or directory should be, such as 644, as would be given to `chmod`.  English modes like "g+x" are not yet supported.
    -
    -*owner*:
    -
    -* name of user that should own the file or directory, as would be given to `chown`
    -
    -*group*:
    -
    -* name of group that should own the file or directory, as would be given to `chgrp`
    -
    -*src*:
    -
    -* path of the file to link to (applies only to 'link' state)
    -
    -*seuser*:
    -
    -* 'user' part of SELinux file context.  Will default to what is provided by system policy, if available.  Only used on systems with SELinux present.  If you specify '_default', it will use the 'user' portion of default context from the policy if available.
    -
    -*serole*:
    -
    -* 'role' part of SELinux file context.  Will default to what is provided by system policy, if available.  Only used on systems with SELinux present.  If you specify '_default', it will use the 'role' portion of default context from the policy if available.
    -
    -*setype*:
    -
    -* 'type' part of SELinux file context.  Will default to what is provided by system policy, if available.  Only used on systems with SELinux present.  If you specify '_default', it will use the 'type' portion of default context from the policy if available.
    -
    -*selevel*:
    -
    -* 'level' part of SELinux file context.  This is the MLS and MCS attribute of the file context, also sometimes known as the 'range'.  It defaults to 's0'.  Only used only used on hosts with SELinux present.  If you specify '_default', it will use the 'level' portion of default context from the policy if available.
    -
    -*context*:
    -
    -* accepts only 'default' as value.  This will restore a file's selinux context to the default context in the policy.  Does nothing if no default is available. Only used on hosts with SELinux present.
    +Sets attributes of files, symlinks, and directories, or removes files/symlinks/directories.  Many other modules
    +support the same options as the file module -- including 'copy', 'template', and 'assmeble'.
    +
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| dest               | yes      |         | defines the file being managed, unless when used with state=link, and      |
    +|                    |          |         | then sets the destination to create a symbolic link to using 'src'         |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              |          | file    | values are 'file', 'link', 'directory', or 'absent'.  If directory,        |
    +|                    |          |         | all immediate subdirectories will be created if they do not exist.  If     |
    +|                    |          |         | 'file', the file will NOT be created if it does not exist, see the 'copy'  |
    +|                    |          |         | or 'template' module if you want that behavior.  If 'link', the symbolic   |
    +|                    |          |         | link will be created or changed.  If absent, directories will be           |
    +|                    |          |         | recursively deleted, and files or symlinks will be unlinked.               |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| mode               |          |         | mode the file or directory shoudl be, such as 0644 as would be fed to      |
    +|                    |          |         | chmod.  English modes like 'g+x' are not yet supported                     |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| owner              |          |         | name of the user that should own the file/directory, as would be fed to    |
    +|                    |          |         | chown                                                                      |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| group              |          |         | name of the group that should own the file/directory, as would be fed to   |
    +|                    |          |         | group                                                                      |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| src                |          |         | path of the file to link to (applies only to state=link)                   |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| seuser             |          |         | user part of SELinux file context.  Will default to system policy, if      |
    +|                    |          |         | applicable.  If set to '_default', it will use the 'user' portion of the   | 
    +|                    |          |         | the policy if available                                                    |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| serole             |          |         | role part of SELinux file context, '_default' feature works as above.      |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| setype             |          |         | type part of SELinux file context, '_default' feature works as above       |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| selevel            |          | s0      | level part of the SELinux file context.  This is the MLS/MCS attribute,    |
    +|                    |          |         | sometimes known as the 'range'.  '_default' feature works as above         |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| context            |          |         | accepts only 'default' as a value.  This will restore a file's selinux     |
    +|                    |          |         | context in the policy.  Does nothing if no default is available.           |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -292,22 +276,18 @@ git
     
     Deploys software (or files) from git checkouts.
     
    -*repo*:
    -
    -* git, ssh, or http protocol address of the git repo to checkout.
    -
    -*dest*:
    -
    -* Where to check it out, an absolute directory path.
    -
    -*version*:
    -
    -* What version to check out -- either the git SHA, the literal string
    -  ``HEAD``, branch name, or a tag name.
    -
    -*remote*:
    -
    -* Name of the remote branch, defaults to 'origin'.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| repo               | yes      |         | git, ssh, or http protocol address of the git repo                         |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| dest               | yes      |         | absolute path of where the repo should be checked out to                   |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| version            |          |         | what version to check out -- either the git SHA, the literal string        |
    +|                    |          |         | 'HEAD', branch name, or a tag name.                                        |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| remote             |          | origin  | name of the remote branch                                                  |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -320,22 +300,17 @@ group
     
     Adds or removes groups.
     
    -*name*:
    -
    -* name of the group
    -
    -*gid*:
    -
    -* optional gid to set for the group
    -
    -*state*:
    -
    -* either 'absent', or 'present'.  'present' is the default.
    -
    -*system*:
    -
    -* (new in 0.4) Indicates the group (when being created), should be a system group.  This does not allow changing groups from and to system groups.  Value is 'yes' or 'no', default is 'no'.
    -
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| name               | yes      |         | name of the group                                                          |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| gid                |          |         | optional git to set for the group                                          |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              |          | present | 'absent' or 'present'                                                      |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| system             |          | no      | if 'yes', indicates that the group being created is a system group.        |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     To control members of the group, see the users resource.
     
    @@ -398,25 +373,21 @@ service
     
     Controls services on remote machines.
     
    -*state*:
    -
    -* Values are ``started``, ``stopped``, ``reloaded``, or ``restarted``.
    -  Started/stopped are idempotent actions that will not run commands
    -  unless necessary.  ``restarted`` will always bounce the service, ``reloaded``
    -  will always issue a reload.
    -
    -*enabled*:
    -
    -* (new in 0.4) Whether the service should start on boot.  Either 'yes' or 'no'.
    -  Uses chkconfig or updates-rc.d as appropriate.
    -
    -*list*:
    -
    -* (new in 0.4) When used with the value 'status', returns the status of the service along with other results.  This is primarily useful for /usr/bin/ansible, and not meaningful for playbooks.
    -
    -*name*:
    -
    -* The name of the service.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| name               | yes      |         | name of the service                                                        |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              | no       | started | 'started', 'stopped', 'reloaded', or 'restarted'.  Started/stopped are     |
    +|                    |          |         | idempotent actions that will not run commands unless neccessary.           |
    +|                    |          |         | 'restarted' will always bounce the service, 'reloaded' will always reload. |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| enabled            | no       |         | Whether the service should start on boot.  Either 'yes' or 'no'.           |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| list               | no       |         | when used as 'list=status', returns the status of the service along with   |
    +|                    |          |         | other results.  Primarily useful for /usr/bin/ansible or playbooks with    |
    +|                    |          |         | --verbose.                                                                 |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -430,11 +401,9 @@ Example action from Ansible :doc:`playbooks`::
     setup
     `````
     
    -Writes a JSON file containing key/value data, for use in templating.
    -Call this once before using the :ref:`template` module.  Playbooks
    -will execute this module automatically as the first step in each play
    -using the variables section, so it is unnecessary to make explicit
    -calls to setup within a playbook.
    +This module is automatically called by playbooks to gather useful variables about remote hosts that can be used
    +in playbooks.  It can also be executed directly by /usr/bin/ansible to check what variables are available
    +to a host.
     
     Ansible provides many 'facts' about the system, automatically.
     
    @@ -514,19 +483,9 @@ All variables are bubbled up to the caller.  Using the ansible facts and choosin
     to not install facter and ohai means you can avoid ruby-dependencies
     on your remote systems.
     
    -*variablename*:
    -
    -* Arbitrary variable names, which must be a mix of alphanumeric characters and underscores, can also be defined. Setting a variable creates a ``key=value`` pair in the JSON file for use in templating.
    -
    -Example action from Ansible :doc:`playbooks`::
    -
    -    vars:
    -        ntpserver: 'ntp.example.com'
    -        xyz: 1234
    -
     Example action from `/usr/bin/ansible`::
     
    -    ansible all -m setup -a "ntpserver=ntp.example.com xyz=1234"
    +    ansible testserver -m setup
     
     
     .. _shell:
    @@ -560,21 +519,18 @@ Example action from a playbook::
     template
     ````````
     
    -Templates a file out to a remote server.  Call the :ref:`setup` module
    -prior to usage if you are not running from a playbook.   In addition to the options
    -listed below, the arguments available to the `file` and `copy` modules can also be passed
    -to the template module.
    -
    -*src*:
    -
    -* Path of a Jinja2 formatted template on the local server.  This can
    -  be a relative or absolute path.
    -
    -*dest*:
    -
    -* Location to render the template on the remote server
    +Templates a file out to a remote server.  
     
    -This module also returns md5sum information about the resultant file.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| src                | yes      |         | Path of a Jinja2 formatted template on the local server.  This can be      |
    +|                    |          |         | a relative or absolute path.                                               |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| dest               | yes      |         | Location to render the template on the remote server                       |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| OTHERS             |          |         | This module also supports all of the arguments to the file module          |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from a playbook::
     
    @@ -588,61 +544,40 @@ user
     
     Creates user accounts, manipulates existing user accounts, and removes user accounts.
     
    -*name*:
    -
    -* Name of the user to create, remove, or edit
    -
    -*comment*:
    -
    -* Optionally sets the description of the user
    -
    -*uid*:
    -
    -* optional uid to set for the user
    -
    -*group*:
    -
    -* Optionally sets the user's primary group, takes a group name
    -
    -*groups*:
    -
    -* Put the user in the specified groups, takes comma delimited group names
    -
    -*append*:
    -
    -* If true, will only add additional groups to the user listed in 'groups', rather than making the user only be in those specified groups
    -
    -*shell*:
    -
    -* Optionally sets the user's shell
    -
    -*createhome*:
    -
    -* Whether to create the user's home directory.  Takes 'yes', or 'no'.  The default is 'yes'.
    -   
    -*home=*:
    -
    -* Specifies where the user's home directory should be, if not in /home/$username.
    - 
    -*password*:
    -
    -* Sets the user's password to this crypted value.  Pass in a result from crypt.  See the users example in the github examples directory for what this looks like in a playbook.
    -
    -*state*:
    -
    -* Defaults to 'present'.  When 'absent', the user account will be removed if present.  Optionally additional removal behaviors can be set with the 'force' or 'remove' parameter values (see below).
    -
    -*system*:
    -
    -* (new in 0.4) Indicates the user (when being created), should be a system account.  This does not allow changing users from and to system accounts.  Value is 'yes' or 'no', default is 'no'.
    -
    -*force*:
    -
    -* When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for ``--force`` is also used when removing the user.  Value is 'yes' or 'no', default is 'no'.
    -
    -*remove*:
    -
    -* When used with a state of 'absent', the behavior denoted in the 'userdel' manpage for ``--remove`` is also used when removing the user.  Value is 'yes' or 'no', default is 'no'.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| name               | yes      |         | name of the user to create, remove, or edit                                |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| comment            |          |         | optionally sets the description of the user                                |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| uid                |          |         | optionally sets the uid of the user                                        |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| group              |          |         | optionally sets the user's primary group (takes a group name)              |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| groups             |          |         | puts the user in this comma-delimited list of groups                       |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| append             |          | no      | if 'yes', will only add groups, not set them to just the list in 'groups'  | 
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| shell              |          |         | optionally set the user's shell                                            |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| createhome         |          | yes     | unless 'no', a home directory will be made for the user                    |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| home               |          |         | sets where the user's homedir should be, if not the default                | 
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| password           |          |         | optionally set the user's password to this crypted value.  See the user's  |
    +|                    |          |         | example in the github examples directory for what this looks like in a     |
    +|                    |          |         | playbook                                                                   |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              |          | present | when 'absent', removes the user.                                           |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| system             |          | no      | only when initially creating, setting this to 'yes' makes the user a       |
    +|                    |          |         | system account.  This setting cannot be changed on existing users.         |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| force              |          | no      | when used with state=absent, behavior is as with userdel --force           | 
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| remove             |          | no      | when used with state=remove, behavior is as with userdel --remove          |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -658,17 +593,18 @@ virt
     Manages virtual machines supported by libvirt.  Requires that libvirt be installed
     on the managed machine.
     
    -*guest*:
    -
    -* The name of the guest VM being managed
    -
    -*state*
    -
    -* Desired state of the VM.  Either `running`, `shutdown`, `destroyed`, or `undefined`.  Note that there may be some lag for state requests like 'shutdown', and these states only refer to the virtual machine states.  After starting a guest, the guest OS may not be immediately accessible.
    -
    -*command*:
    -
    -* In addition to state management, various non-idempotent commands are available for API and script usage (but don't make much sense in a playbook).  These mostly return information, though some also affect state.  See examples below.
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| name               | yes      |         | name of the guest VM being managed                                         |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              |          |         | 'running', 'shutdown', 'destroyed', or 'undefined'.  Note that there may   |
    +|                    |          |         | be some lag for state requests like 'shutdown' since these refer only to   |
    +|                    |          |         | VM states.  After starting a guest, it may not be immediately accessible.  |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| command            |          |         | in addition to state management, various non-idempotent commands are       |
    +|                    |          |         | available.  See examples below.                                            |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    @@ -700,20 +636,16 @@ yum
     
     Will install, upgrade, remove, and list packages with the yum package manager.
     
    -*pkg*:
    -
    -* A package name or package specifier with version, like name-1.0
    -
    -*state*:
    -
    -* Can be either 'installed', 'latest', or 'removed'.  The default is 'installed'. (In 0.4 and later, the aliases 'absent' and 'present' can also be used.  They correspond with 'removed' and 'installed')
    -
    -*list*:
    -
    -* When 'list' is supplied instead of 'state', the yum module can list
    -  various configuration attributes.  Values include 'installed', 'updates',
    -  'available', 'repos', or any package specifier.  (This is more intended for
    -  use with /usr/bin/ansible or the API, not playbooks.)
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| parameter          | required | default | comments                                                                   |
    ++====================+==========+=========+============================================================================+
    +| name               | yes      |         | package name, or package specifier with version, like 'name-1.0'           |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| state              |          | present | 'present', 'latest', or 'absent'.                                          |  
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
    +| list               |          |         | various non-idempotent commands for usage with /usr/bin/ansible and not    |
    +|                    |          |         | playbooks.  See examples below.                                            |
    ++--------------------+----------+---------+----------------------------------------------------------------------------+
     
     Example action from Ansible :doc:`playbooks`::
     
    diff --git a/searchindex.js b/searchindex.js
    index 1599149fcdb..c2cbe9630e0 100644
    --- a/searchindex.js
    +++ b/searchindex.js
    @@ -1 +1 @@
    -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[10,9,4,7,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,5,4],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,4,10,6,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,6,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":10,reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:6,extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,5,4,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,6,7,8,9,11],arbitrari:[10,5,6],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:6,groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,contrib:4,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,groupfil:8,"true":[0,2,6,4,7,10],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,6,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:[4,6],phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],somelog:6,word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:[9,6],idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:6,data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:6,predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],xyz:6,non:[4,6,7,8],env:0,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],ensur:[0,3,5,6,7,10,11],backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,6,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,friend:12,grant:6,especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:[6,1],than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:6,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,6,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[10,9,6,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:6,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,what:[0,1,2,3,4,5,6,7,9,10,12],sub:3,section:[0,1,3,5,6,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:[10,6],amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[10,5,6],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:10,instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:6,beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,6,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,6,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:6,devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,6,7,9,10],fire:[3,5,10],imag:3,convert:4,append:6,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,wrap:1,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,pythonpath:[],within:[8,10,5,6],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:6,bracket:8,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:6,far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:[0,6],fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,6],openjdk:6,alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:[0,6],process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:6,onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,6,1,3],allow:[0,1,3,6,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:6,mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:6,our:[3,12,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[6,2],sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,6,7],baisc:[],which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,6,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6],structur:[10,6],denot:[8,6],effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:[10,6],undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:[6,11],cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],rememb:11,varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]})
    \ No newline at end of file
    +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:3,four:[8,12],prefix:[10,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[3,4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[3,1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[10,11],even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[3,6,5,4,9,10],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:[],restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[3,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[3,1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,3,6,4,7,10,11],perspect:9,updat:[3,10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,11],lab:[3,5],befor:[3,6,5,4,7,10,11],ohai_:[6,7],arch:[0,3],parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,3],environ:[0,6,3],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[3,10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:3,fix:0,better:[6,11],offic:3,easier:[3,1,2,5,4,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],"break":7,glorifi:3,jinja2:[0,5,6,7,10,11],mgmt:9,httpd_sys_content_t:6,choic:[0,3],vidal:5,bonu:9,timeout:10,each:[3,1,2,6,5,4,7,8,9,10],debug:2,mean:[3,2,6,5,4,7,10],exactli:6,playbooks2:[],logo:3,contend:5,network:[3,5,10],dss:6,content:[3,10,4,7],adapt:9,got:5,forth:7,site_fact:4,ntp:[8,11],nightmar:3,free:[0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],rang:[3,6],render:6,wast:3,restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],master:9,too:[3,2,5,4,9,11],similarli:[3,9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[3,8,1,7],keyword:[5,10],provid:[3,1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[3,5,4],raw:[0,6,3],aforement:8,seem:[5,10,7],seek:6,someapp:6,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:3,simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:3,doe:[0,3,6,5,4,8,9,10,11],declar:7,wildcard:8,came:9,cobbler_external_inventori:9,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:[3,5],absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,6],reload:6,bad:4,respond:7,daemonless:3,resist:1,result:[3,6,5,4,9,10],fail:[9,3,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:4,awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[3,5,10],attribut:6,manpag:[],extens:[3,5],add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:3,somelist:10,com:[0,3,6,4,8,9],compromis:5,assur:[10,7],height:3,written:[0,3,4,7,9,10,11],guid:[],assum:[3,9,8],speak:6,multiplay:3,ansible_library_path:4,three:[8,6],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,3,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,servic:[3,1,6,4,7,8,10,11],vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,3,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[3,4,8],complet:[5,10,1,2,7],wheel:[10,6],ansible_arch2:[],fragil:3,selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:[3,9],ansible_:[10,7],hypothet:[],tho:[],client:3,"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:[3,11],daemon:[3,5],specif:[3,1,5,7,8,9,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:3,right:[],deal:4,maxim:5,dead:3,born:5,intern:4,heritag:[],successfulli:3,txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[3,10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:[3,5],"super":3,sshd:3,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,contrib:4,storag:8,eth0:6,git:[0,1,3,6,5,4,8,10,11],fabric:[3,5],suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:3,reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],fork:[9,5,10,11],head:[6,11],python26:0,form:[3,10,4,7,2],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[3,4,1,7],ship:[4,6],check:[10,6,11],assembl:[3,6],pipe:11,encrypt:5,tip:[3,8,10,1,7],role:[3,10,6,1,7],test:[0,3,6,5,4,9],tie:9,unlimit:3,maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,3,4,5,6,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],"5rxgmiicbrh":6,skip:10,consum:5,invent:[],operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],graph:[5,12],readabl:1,decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6],somelog:6,word:9,brows:4,jdk:6,level:[3,6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],gener:[0,5,4,7,9,10,11],address:[3,1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10,3],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[3,5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:11,live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:3,cat:[],whatev:4,purpos:[8,6,1],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11],critic:3,occur:[],alwai:[4,5,6,7],multipl:[1,5,6,7,8,9,10,11],ping:[0,9,6,3],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[],mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,6,4,7,9,10,11],underscor:[],data:[3,2,6,5,4,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[3,5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],nbsp:3,still:[0,5,4,7,9,10],mainli:5,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:9,polici:6,yaml:[3,1,2,5,7,8,10],curli:11,intl:3,mail:[0,1,2,6,5,4,7,8,9,10,11,12],job_statu:[],main:[10,9,4,1,7],xyz:[],non:[4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:11,name:[3,1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:7,arg1:6,laserllama:3,yeah:[],ensur:[0,3,5,7,10,11],backport:[0,6],facter:[3,5,6,7,10,11],happen:[9,5],likes_emac:2,shown:4,space:[3,6],infrar:[],profil:9,intermix:3,skylin:12,internet:3,correct:[3,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:6,reusabl:4,wai:[0,1,3,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,3,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[3,10,5,4,1],frequent:[3,9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[3,9,4],gif:3,white:4,friend:12,grant:[],especi:[5,10],copi:[0,3,6,9,10,11],specifi:[0,2,3,6,5,4,7,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,3,4,5,6,7,10,11],cmdb:9,wide:5,were:[3,5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],argument:[6,4,7,8,9,11],dash:2,loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:[3,5],denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,6,5,4,8,9,11,12],begin:[3,11,2],sure:[10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[4,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4,3],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,enough:[8,5,11],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:6,ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,3,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,ansible_distribut:[10,6],detect:6,ansible_ssh_host_key_dsa_publ:6,innov:3,review:[3,1,5,6,7,10],enumer:10,behind:[5,6],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[3,10,9,4,11],across:5,cycl:[0,3],come:[3,10,4,1],timmi:7,contract:9,tutori:[3,4],mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:[3,5],period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[3,10,11],other_vari:10,coupl:5,rebuild:[],rubi:[2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,10,11],md5sum:6,straighten:5,trick:[3,7],exist:[3,5,6,7,8,9,10,11],newhost:6,stdout:9,worri:[5,10],destin:6,myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,3,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,versu:[0,5,1,3],miscellan:[3,1],except:4,littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[3,5,6,7,10,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,integ:6,server:[3,5,6,7,8,10,11],either:[9,10,5,6],output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[3,6,7,9,10,11],stone:4,central:[3,5],acm:[8,1,11],wolf:9,industri:[3,5],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:7,start:[0,1,2,3,5,6,7,9,11],interfac:5,low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:[3,1],congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[3,10,5,6,7],strongli:[3,5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,"60k":[3,5],directori:[3,1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:[3,10],appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:3,month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:3,children:8,nors:[],program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:[],liter:6,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],sane:5,stderr:4,small:[3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,3,6,4,7,9,10,11],further:[3,5,2],sudo_us:7,what:[0,1,2,3,4,5,6,7,9,10,12],sub:3,section:[0,1,3,5,7,8,10,11],abl:1,delet:[6,11],abbrevi:2,version:[0,1,3,6,7,8,10,11],method:9,hasn:5,full:[3,10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,modifi:4,valu:[3,2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:10,amount:9,pick:[5,11],action:[3,10,9,6,7],via:[0,9,10,3],shorthand:[3,10,4],factnam:10,managememnt:3,href:[],select:[3,1,6,4,7,8,10],distinct:3,two:[3,6,7,8,9,10],rhel:[0,3],demo:11,taken:[5,7],kick:[10,11],more:[0,1,3,5,6,7,8,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[3,6,7,8,9,10,11],known:6,compani:[5,12],cach:6,none:[0,9,6],pkgbuild:0,hous:3,dev:5,remain:3,learn:[0,1,2,3,5,4,7,8,10],prompt:[3,10,7,11],yamllint:2,moduledev:[],templat:[3,1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[3,10,5,6],rather:[5,10],anoth:[1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[3,10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:3,args_data:4,associ:2,"short":[0,5,10,3],caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,3,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5,3],mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:10,orient:[3,7],hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[9,10,5,4,7],base:[3,5,10,1],believ:5,ask:[0,7,11],bash:[0,5,4,11],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:3,feel:[10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:11,construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],pars:[5,4],consult:12,reinstal:3,jump:[0,3],kind:[5,4],grep:[],remot:[0,3,6,7,10,11],remov:[8,10,6,11],reus:[3,5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:5,well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,3,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,3,5,11],roughli:0,clojur:4,clean:5,usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:[],devolv:3,mpd_ring:[],particularli:[3,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],olympu:[],yml:[10,1,7],remedi:[3,10],long_running_oper:11,financ:3,nativ:[0,10,3],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[3,10,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,10,11],dump:4,see:[0,1,2,3,4,5,6,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:3,foo_port:[],popul:9,both:[0,3,5,4,10,11],last:[0,3],delimit:6,thor:[],context:6,whole:5,load:[],simpli:[6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:3,unsuccess:7,devic:6,due:[0,5,4,3],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:3,convert:4,append:6,gap:5,understand:4,func:[3,5],educ:4,look:[3,6,4,7,8,10,11],straight:11,batch:[3,5],"while":[3,5,10,1,7],unifi:3,match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[3,10,7],pack:9,pragmat:3,motd:[9,7,11],max_client:7,wrap:1,readm:4,jpg:[],itself:[9,5],cento:[0,10,6,3],fedora:[0,12],minim:[0,4],shorter:4,higher:[3,10],optim:1,painless:3,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[3,10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[2,5,6,7,8,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],often:[3,1,5,6,9,10],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[3,5,10],per:9,pem:0,larg:5,rycsbf1d8e5ptxesxhqs4iq:6,machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,pythonpath:[],within:[8,5,10],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[3,1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[3,9,6,11],concaten:6,caller:6,planet:3,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],asciidoc:[],meaning:[],far:[3,11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,10],sensit:[3,10],elsewher:11,friendli:3,send:10,autostart:6,sens:0,fatal:7,blindingli:3,sent:4,logtre:6,signfic:4,asdf1234l:6,implicitli:5,relev:[10,5,4],recip:0,magic:[3,10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,natur:3,cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],turn:[3,10,5,4],compar:[3,5],access:[0,10,6,11,3],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:6,sinc:[3,9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,3,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],win:[],app:[5,10],apt:[3,10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:6,from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:[],usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,fetch:[3,10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[11,0,5,7,3],high:[4,11],knows_oop:2,tag:[0,6,3],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:[0,3],attent:11,tier:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,3,5,4,9,10,11],move:[6,7],elit:2,comma:6,release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:5,devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],mode:[0,3,5,6,10,11],grok:3,bump:0,usernam:[],our:[3,12,11,2],patch:5,pitfal:[3,4],special:10,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],rel:[8,6,1],"_default":6,leverag:0,ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,3,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[3,5],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:2,sweden:12,favorit:[3,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5,3],mix:[8,10,7],baisc:[],which:[0,1,2,3,5,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[3,5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:3,verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[3,10,5,6],contribut:[0,11,12,3],pull:[9,3,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[3,6,1,12],sha:6,stuff:11,integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[3,6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,job:[11,2],entir:[1,5,4,7,8,10],homebrew:0,"2pm":3,addit:[3,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4,3],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6],decent:[],compos:7,compon:3,json:[3,2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6],"2677m":6,yournam:[7,11],capistrano:[3,5],global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6,3],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[3,10,9,6,7],layer:[9,5],almost:[5,6],virt:[3,6],site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[3,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],seth:5,exampl:[0,1,2,3,4,5,6,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,3,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],necessari:11,cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":0,home:6,librari:[4,6,1,2],tmp:[9,6,11],lead:5,avoid:[0,6,11,3],thank:5,overlap:3,leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,10,11],actual:[3,6,5,4,7,10],disabl:7,ntp_server:[8,11],own:[3,1,6,5,4,7,9,10],automat:[3,1,6,4,9,11],some_serv:8,hang:7,merg:[5,4],transfer:[3,4,6,11],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[3,1,6,7,8,10],individu:[8,1],simplejson:[0,4,6],subscrib:3,continu:4,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,asynchron:[3,10,7],record:2,below:[0,9,6,7],limit:[3,10,11],otherwis:[4,6],problem:[3,5,2],epel:[0,3],pin:6,is_favcolor_blu:10,filenam:10,implement:[9,5,4,7],ini:8,probabl:[0,5,4,1,7],boot:6,detail:[3,9,7,11],virtual:[6,7],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[3,10,4,1],rememb:11,varieti:[5,4],riak:12,repeat:[10,1],"class":[3,9,7],debian:[0,10,6,3],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[3,10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","The Future Is Now","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]})
    \ No newline at end of file
    
    From 10fc56adf0d2436def5632eb0de0f0971cd94bd6 Mon Sep 17 00:00:00 2001
    From: Michael DeHaan 
    Date: Fri, 27 Jul 2012 22:16:14 -0400
    Subject: [PATCH 264/416] Attempt to make the home page less of a wall of text.
      Probably more to come.
    
    ---
     gettingstarted.html |   2 +-
     index.html          | 391 ++++++++++++++++++--------------------------
     rst/index.rst       | 234 +++++++++++++-------------
     searchindex.js      |   2 +-
     4 files changed, 276 insertions(+), 353 deletions(-)
    
    diff --git a/gettingstarted.html b/gettingstarted.html
    index b8baec67e89..9673cb5598f 100644
    --- a/gettingstarted.html
    +++ b/gettingstarted.html
    @@ -28,7 +28,7 @@
         
         
         
    -    
    +    
     
     
    @@ -276,7 +289,7 @@ languages:
     

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/_themes/bootstrap/layout.html b/_themes/bootstrap/layout.html index 1be86e2f0e6..1aa6b5bd564 100644 --- a/_themes/bootstrap/layout.html +++ b/_themes/bootstrap/layout.html @@ -139,6 +139,19 @@ s.parentNode.insertBefore(ga, s);

    +

    + + + + + + + + + +
    +

    +

    diff --git a/api.html b/api.html index d887c924c7e..407ee8a3be6 100644 --- a/api.html +++ b/api.html @@ -445,6 +445,19 @@ e.g.

    +

    + + + + + + + + + +
    +

    +

    @@ -452,7 +465,7 @@ e.g.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index c2ccbaf33a4..32306812046 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -291,6 +291,19 @@ This way you have an audit trail describing when and why you changed the rules a

    +

    + + + + + + + + + +
    +

    +

    @@ -298,7 +311,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/examples.html b/examples.html index 097b7a49b87..2dc93430bb7 100644 --- a/examples.html +++ b/examples.html @@ -376,6 +376,19 @@ a simplified syntax for this.

    +

    + + + + + + + + + +
    +

    +

    @@ -383,7 +396,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/faq.html b/faq.html index 9e208aad5cb..1912d57344f 100644 --- a/faq.html +++ b/faq.html @@ -383,6 +383,19 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    +

    + + + + + + + + + +
    +

    +

    @@ -390,7 +403,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/genindex.html b/genindex.html index 75a50e8c180..e1e4be62576 100644 --- a/genindex.html +++ b/genindex.html @@ -184,6 +184,19 @@ s.parentNode.insertBefore(ga, s);

    +

    + + + + + + + + + +
    +

    +

    @@ -191,7 +204,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 7bb7a00e183..8676f875c52 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -371,6 +371,19 @@ explore, but you already have a fully working infrastructure!

    +

    + + + + + + + + + +
    +

    +

    @@ -378,7 +391,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/index.html b/index.html index 7590a177b28..009b22b507a 100644 --- a/index.html +++ b/index.html @@ -390,6 +390,19 @@ Puppet Labs, and is now with

    +

    + + + + + + + + + +
    +

    +

    @@ -397,7 +410,7 @@ Puppet Labs, and is now with

    +

    + + + + + + + + + +
    +

    +

    @@ -456,7 +469,7 @@ Stop by the mailing list to inquire about requirements.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/modules.html b/modules.html index c69f5fc2656..9eba20b1d33 100644 --- a/modules.html +++ b/modules.html @@ -1255,6 +1255,19 @@ yum pkg=httpd state=installed

    +

    + + + + + + + + + +
    +

    +

    @@ -1262,7 +1275,7 @@ yum pkg=httpd state=installed

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/patterns.html b/patterns.html index 7e725a4f538..49350d641a6 100644 --- a/patterns.html +++ b/patterns.html @@ -360,6 +360,19 @@ a

    +

    + + + + + + + + + +
    +

    +

    @@ -367,7 +380,7 @@ a

    +

    + + + + + + + + + +
    +

    +

    @@ -501,7 +514,7 @@ package is installed. Try it!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 6b498fba126..27456e5886e 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -502,6 +502,19 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    +

    + + + + + + + + + +
    +

    +

    @@ -509,7 +522,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/search.html b/search.html index 60539d77dfc..4a952e03c5e 100644 --- a/search.html +++ b/search.html @@ -201,6 +201,19 @@ s.parentNode.insertBefore(ga, s);

    +

    + + + + + + + + + +
    +

    +

    @@ -208,7 +221,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    diff --git a/searchindex.js b/searchindex.js index fe332ca7cfd..e9e6ada8605 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,9,6],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:6,playbooks2:[],logo:[],contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:4,ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],suppos:[8,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:6,login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:[10,7],hypothet:[],tho:[],client:[],"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:4,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],vpc:9,"5rxgmiicbrh":6,skip:10,consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,4],purpos:[3,6,1,8],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:9,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:5,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:6,ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,hell:3,ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,11],across:[9,5],cycl:0,come:[3,10,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,exist:[3,5,6,7,8,9,10,11],newhost:6,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[10,9,6,7,11],stone:4,central:[3,5],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[10,5,6,7],strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,6,7,8,9,10],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],psycopg2:6,cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:10,orient:7,hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,4],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],sinc:[9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,login_password:6,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,10,5,6,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:[9,10],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[9,10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[10,7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[4,6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6,7],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4,7],ini:[8,9],ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:11,varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,9,6],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:4,ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:[],restrict:4,hook:6,instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:6,login_us:6,manpag:[],extens:5,recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,5,12,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:[10,7],hypothet:[],deal:4,tho:[],client:[],"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],contriv:[],down:[9,6,7],contrib:4,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:10,consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,4],purpos:[3,6,1,8],claim:1,hostvar:10,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:9,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:5,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],bounc:[6,7],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:6,ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,11],across:[9,5],cycl:0,come:[3,10,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,6,5,4,7,9,10,11],sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[10,9,6,7,11],stone:4,central:[3,5],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[10,5,6,7],strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,6,7,8,9,10],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,6],psycopg2:6,cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],centos6:9,build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,10,12],gap:5,understand:[3,4],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,doubl:11,primarili:6,pythonpath:[],within:[9,8,5,10],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:0,ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":2,cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,10,5,6,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:[9,10],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[9,10,7],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],cellspac:[],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6,7],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,6],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4,7],ini:[8,9],ing:6,inc:6,boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 0b60abedf7c..323bb2a6aa0 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -234,6 +234,19 @@ s.parentNode.insertBefore(ga, s);

    +

    + + + + + + + + + +
    +

    +

    @@ -241,7 +254,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 28, 2012.
    + Last updated on Jul 30, 2012.

    From 49385bb3a31d400c7de2e20270ecb1030a1f09c2 Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Tue, 31 Jul 2012 09:02:37 -0400 Subject: [PATCH 277/416] Minor doc fixups for apt module. Change hyphens to underscores in argument names, e.g.: update-cache -> update_cache Remove question mark in description of behavior of update_cache. --- rst/modules.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rst/modules.rst b/rst/modules.rst index 01962d97709..3ffada75717 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -48,14 +48,14 @@ Manages apt-packages (such as for Debian/Ubuntu). +--------------------+----------+---------+----------------------------------------------------------------------------+ | state | no | present | 'absent', 'present', or 'latest'. | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| update-cache | no | no | run the equivalent of apt-get update before the operation? | +| update_cache | no | no | Run the equivalent of apt-get update before the operation. | | | | | Can be run as part of the package installation or a seperate step | +--------------------+----------+---------+----------------------------------------------------------------------------+ | purge | no | no | Will forge purge of configuration files if state is set to 'removed'. | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| default-release | no | | Corresponds to the -t option for apt and sets pin priorities | +| default_release | no | | Corresponds to the -t option for apt and sets pin priorities | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| install-recommends | no | yes | Corresponds to the --no-install-recommends option for apt, default | +| install_recommends | no | yes | Corresponds to the --no-install-recommends option for apt, default | | | | | behavior works as apt's default behavior, 'no' does not install | | | | | recommended packages. Suggested packages are never installed. | +--------------------+----------+---------+----------------------------------------------------------------------------+ From dac0db9ca21b849eb57186894b2844a6aad28132 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Mon, 30 Jul 2012 22:57:01 -0400 Subject: [PATCH 278/416] Add company + rebuild --- modules.html | 14 +++++++------- rst/who_uses_ansible.rst | 1 + searchindex.js | 2 +- who_uses_ansible.html | 3 +++ 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/modules.html b/modules.html index 9eba20b1d33..0a3c9b115e6 100644 --- a/modules.html +++ b/modules.html @@ -255,10 +255,10 @@ noted, any given module does support change hooks.

    present ‘absent’, ‘present’, or ‘latest’. -update-cache +update_cache no no -run the equivalent of apt-get update before the operation? +Run the equivalent of apt-get update before the operation. Can be run as part of the package installation or a seperate step purge @@ -266,12 +266,12 @@ Can be run as part of the package installation or a seperate step no Will forge purge of configuration files if state is set to ‘removed’. -default-release +default_release no   Corresponds to the -t option for apt and sets pin priorities -install-recommends +install_recommends no yes Corresponds to the –no-install-recommends option for apt, default @@ -1219,9 +1219,9 @@ playbooks. See examples below.

    Example action from Ansible Playbooks:

    -
    yum pkg=httpd state=latest
    -yum pkg=httpd state=removed
    -yum pkg=httpd state=installed
    +
    yum name=httpd state=latest
    +yum name=httpd state=removed
    +yum name=httpd state=installed
    diff --git a/rst/who_uses_ansible.rst b/rst/who_uses_ansible.rst index 018cdb64a82..dc08c308829 100644 --- a/rst/who_uses_ansible.rst +++ b/rst/who_uses_ansible.rst @@ -8,6 +8,7 @@ Who They Are What They Do ================================================== =================================================== `Basho `_ makers of NoSQL key-value store Riak `Cygate AB `_ IT solutions from Malmö, Sweden +`Dag IT Solutions `_ "Enterprise Linux and Beyond" `Fedora Project `_ produces the popular Linux distribution `Four Kitchens `_ "the Drupal Experts" `Schmooze Com `_ Creators of Industry-Leading PBX Platforms diff --git a/searchindex.js b/searchindex.js index e9e6ada8605..c8a01054f9e 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,9,6],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:4,ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:[],restrict:4,hook:6,instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:6,login_us:6,manpag:[],extens:5,recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,5,12,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:[10,7],hypothet:[],deal:4,tho:[],client:[],"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],contriv:[],down:[9,6,7],contrib:4,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:10,consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,4],purpos:[3,6,1,8],claim:1,hostvar:10,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:9,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:5,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],bounc:[6,7],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:6,ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,11],across:[9,5],cycl:0,come:[3,10,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,cobbler:[9,3,5],newhost:6,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,6,5,4,7,9,10,11],sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,src:[10,9,6,7,11],stone:4,central:[3,5],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[10,5,6,7],strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:0,zero:4,design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,6,7,8,9,10],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,6],psycopg2:6,cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:10,id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:10,event:[4,5,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],centos6:9,build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,10,12],gap:5,understand:[3,4],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,doubl:11,primarili:6,pythonpath:[],within:[9,8,5,10],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:0,ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":2,cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:[],greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,10,5,6,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:[9,10],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[9,10,7],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],cellspac:[],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,gather:[10,5,6],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[10,7,11],suppos:[8,4,7],"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:11,lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:11,xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6,7],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,6],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4,7],ini:[8,9],ing:6,inc:6,boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,9,6],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:6,playbooks2:[],logo:[],contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:4,ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],suppos:[8,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:6,login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:[10,7],hypothet:[],tho:[],client:[],"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:4,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],vpc:9,"5rxgmiicbrh":6,skip:10,consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,4],purpos:[3,6,1,8],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:9,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:5,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:6,ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,hell:3,ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,11],across:[9,5],cycl:0,come:[3,10,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[10,9,6,7,11],stone:4,central:[3,5],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[10,5,6,7],strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:4,design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,6,7,8,9,10],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],psycopg2:6,cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,4],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],sinc:[9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,login_password:6,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,10,5,6,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:[9,10],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[9,10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[10,7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[4,6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6,7],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4,7],ini:[8,9],ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:11,varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 323bb2a6aa0..2f1a36cba2a 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -193,6 +193,9 @@ s.parentNode.insertBefore(ga, s); Cygate AB IT solutions from Malmö, Sweden +Dag IT Solutions +“Enterprise Linux and Beyond” + Fedora Project produces the popular Linux distribution From 1aa3c1522cdf4f8e4e14db32941600825669624e Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 22:19:04 -0400 Subject: [PATCH 279/416] Updating various doc items with 0.6 features, releasing soon, and removing references to things new in 0.4, which has been out long enough to no longer be new. --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 2 +- moduledev.html | 5 +- modules.html | 5 +- patterns.html | 4 +- playbooks.html | 101 +++++++++++++++++------------ playbooks2.html | 144 +++++++++++++++++++++++++++++++++--------- rst/moduledev.rst | 3 +- rst/modules.rst | 1 - rst/patterns.rst | 2 +- rst/playbooks.rst | 95 ++++++++++++++++------------ rst/playbooks2.rst | 130 ++++++++++++++++++++++++++++++++------ search.html | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 2 +- 21 files changed, 360 insertions(+), 152 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 184aa483cbb..e44ea11d1d1 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -289,7 +289,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/api.html b/api.html index 407ee8a3be6..3df546eb35d 100644 --- a/api.html +++ b/api.html @@ -465,7 +465,7 @@ e.g.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index 32306812046..d002d627948 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -311,7 +311,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/examples.html b/examples.html index 2dc93430bb7..dc0db169978 100644 --- a/examples.html +++ b/examples.html @@ -396,7 +396,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/faq.html b/faq.html index 1912d57344f..0dbd76f9537 100644 --- a/faq.html +++ b/faq.html @@ -403,7 +403,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/genindex.html b/genindex.html index e1e4be62576..0c99a1360ca 100644 --- a/genindex.html +++ b/genindex.html @@ -204,7 +204,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 8676f875c52..6c848d921fd 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -391,7 +391,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/index.html b/index.html index 009b22b507a..f27716d4107 100644 --- a/index.html +++ b/index.html @@ -410,7 +410,7 @@ Puppet Labs, and is now with

    The ‘setup’ module that ships with Ansible provides many variables about a system that can be used in playbooks and templates. However, it’s possible to also add your own facts without modifying the system module. To do -this, just have the module return a ansible_facts key, like so, along with other return data. This requires -Ansible 0.4 and later:

    +this, just have the module return a ansible_facts key, like so, along with other return data:

    {
         "changed" : True,
         "rc" : 5,
    @@ -469,7 +468,7 @@ Stop by the mailing list to inquire about requirements.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/modules.html b/modules.html index 0a3c9b115e6..c7abc7bd9cf 100644 --- a/modules.html +++ b/modules.html @@ -818,8 +818,7 @@ host before using this module.

    raw

    -

    Executes a low-down and dirty SSH command, not going through the module subsystem. -This module is new in Ansible 0.4.

    +

    Executes a low-down and dirty SSH command, not going through the module subsystem.

    This is useful and should only be done in two cases. The first case is installing python-simplejson on older (python 2.4 and before) hosts that need it as a dependency to run modules, since nearly all core modules require it. Another is speaking to any @@ -1275,7 +1274,7 @@ yum name=httpd state=installed

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/patterns.html b/patterns.html index 49350d641a6..af0f7e8f988 100644 --- a/patterns.html +++ b/patterns.html @@ -271,7 +271,7 @@ proxy=proxy.atlanta.example.com

    Groups of Groups, and Group Variables

    -

    Using Ansible 0.4, it is possible to make groups of groups and assign +

    It is also possible to make groups of groups and assign variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not /usr/bin/ansible:

    [atlanta]
    @@ -380,7 +380,7 @@ a Page
       
    • Playbooks @@ -189,11 +189,10 @@ s.parentNode.insertBefore(ga, s);

      Playbooks

      -

      Playbooks are a completely different way to use ansible and are -particularly awesome. They are the basis for a really simple +

      Playbooks are a completely different way to use ansible than in task execution mode, and are +particularly awesome. Simply put, playbooks are the basis for a really simple configuration management and multi-machine deployment system, -unlike any that already exist, and -one that is very well suited to deploying complex applications.

      +unlike any that already exist, and one that is very well suited to deploying complex applications.

      Playbooks can declare configurations, but they can also orchestrate steps of any manual ordered process, even as different steps must bounce back and forth between sets of machines in particular orders. They can launch tasks @@ -205,10 +204,13 @@ remote systems are in spec.

      Let’s dive in and see how they work. As you go, you may wish to open the github examples directory in another tab, so you can apply the theory to what things look like in practice.

      -
      -

      Playbook Example

      +
      +

      Playbook Language Example

      Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed of one or more ‘plays’ in a list.

      +

      The goal of a play is map a group of hosts to some well defined roles, represented by +things ansible called tasks. At the basic level, a task is nothing more than a call +to an ansible module, which you should have learned about in earlier chapters.

      By composing a playbook of multiple ‘plays’, it is possible to orchestrate multi-machine deployments, running certain steps on all machines in the webservers group, then certain steps on the database @@ -285,21 +287,18 @@ this does not come into play. Ansible also takes care to not log password parame

      These variables can be used later in the playbook like this:

      $varname or ${varname}
      -

      The later is useful in the event you need to do something like ${other}_concatenated_value.

      -

      The full power of the Jinja2 templating language is also available (note: in 0.4, this is only true inside of templates), which looks like this:

      +

      The later is useful in the event you need to do something like ${other}_some_string.

      +

      The full power of the Jinja2 templating language is also available, which looks like this:

      {{ varname }}

      The Jinja2 documentation provides information about how to construct loops and conditionals for those who which to use more advanced templating. This is optional and the $varname format still works in template files.

      -

      If there are discovered variables about the system (ansible provides some of these, -plus we include ones taken from facter or ohai if installed) these variables bubble up back into the -playbook, and can be used on each system just like explicitly set -variables.

      -

      Facter variables are prefixed with facter_ and Ohai -variables are prefixed with ohai_. Ansible variables (0.3 and later) -are not surprisingly prefixed with ansible_ (See the setup module -documentation for a list of Ansible variables).

      +

      If there are discovered variables about the system, called ‘facts’, these variables bubble up back into the +playbook, and can be used on each system just like explicitly set variables. Ansible provides several +of these, prefixed with ‘ansible’, and are documented under setup in the module documentation. Additionally, +facts can be gathered by ohai and facter if they are installed. Facter variables are prefixed with facter_ and Ohai +variables are prefixed with ohai_.

      So for instance, if I wanted to write the hostname into the /etc/motd file, I could say:

      - name: write the motd
      @@ -314,19 +313,22 @@ to write the hostname into the /etc/motd file, I could say:

      Tasks list

      Each play contains a list of tasks. Tasks are executed in order, one at a time, against all machines matched by the host pattern, -before moving on to the next task.

      -

      Hosts with failed tasks are taken out of the rotation for the entire -playbook. If things fail, simply correct the playbook file and rerun.

      +before moving on to the next task. It is important to understand that, within a play, +all hosts are going to get the same task directives. It is the purpose of a play to map +a selection of hosts to tasks.

      +

      When running the playbook, which runs top to bottom, hosts with failed tasks are +taken out of the rotation for the entire playbook. If things fail, simply correct the playbook file and rerun.

      The goal of each task is to execute a module, with very specific arguments. Variables, as mentioned above, can be used in arguments to modules.

      -

      Modules other than command and shell are ‘idempotent’, meaning if you run them +

      Modules are ‘idempotent’, meaning if you run them again, they will make the changes they are told to make to bring the system to the desired state. This makes it very safe to rerun the same playbook multiple times. They won’t change things unless they have to change things.

      -

      The command and shell modules will actually rerun the same command again, +

      The command and shell modules will typically rerun the same command again, which is totally ok if the command is something like -‘chmod’ or ‘setsebool’, etc.

      +‘chmod’ or ‘setsebool’, etc. Though there is a ‘creates’ flag available which can +be used to make these modules also idempotent.

      Every task should have a name, which is included in the output from running the playbook. This is output for humans, so it is nice to have reasonably good descriptions of each task step. If the name @@ -345,6 +347,18 @@ them work just like you would expect. Simple:

      - name: disable selinux action: command /sbin/setenforce 0
      +

      The command and shell module care about return codes, so if you have a command +who’s successful exit code is not zero, you may wish to do this:

      +
      +
      +
      tasks:
      +
        +
      • name: run this command and ignore the result +action: shell /usr/bin/somecommand & /bin/true
      • +
      +
      +
      +

      Variables can be used in action lines. Suppose you defined a variable called ‘vhost’ in the ‘vars’ section, you could do this:

      tasks:
      @@ -352,11 +366,13 @@ a variable called ‘vhost’ in the ‘vars’ section, you cou
           action: template src=somefile.j2 dest=/etc/httpd/conf.d/$vhost

      Those same variables are usable in templates, which we’ll get to later.

      +

      Now in a very basic playbook all the tasks will be listed directly in that play, though it will usually +make more sense to break up tasks using the ‘include:’ directive. We’ll show that a bit later.

      Running Operations On Change

      -

      As we’ve mentioned, nearly all modules are written to be ‘idempotent’ and can relay when +

      As we’ve mentioned, modules are written to be ‘idempotent’ and can relay when they have made a change on the remote system. Playbooks recognize this and have a basic event system that can be used to respond to change.

      These ‘notify’ actions are triggered at the end of each ‘play’ in a playbook, and @@ -391,11 +407,13 @@ won’t need them for much else.

      Notify handlers are always run in the order written.

      -
      -

      Include Files And Reuse

      +
      +

      Include Files And Encouraging Reuse

      Suppose you want to reuse lists of tasks between plays or playbooks. You can use -include files to do this.

      -

      An include file simply contains a flat list of tasks, like so:

      +include files to do this. Use of included task lists is a great way to define a role +that system is going to fulfill. Remember, the goal of a play in a playbook is to map +a group of systems into multiple roles. Let’s see what this looks like...

      +

      A task include file simply contains a flat list of tasks, like so:

      ---
       # possibly saved as tasks/foo.yml
       - name: placeholder foo
      @@ -403,11 +421,11 @@ include files to do this.

      - name: placeholder bar action: command /bin/bar
      -

      Include directives look like this:

      +

      Include directives look like this, and can be mixed in with regular tasks in a playbook:

      - tasks:
          - include: tasks/foo.yml
      -

      You can also pass variables into includes directly. We might call this a ‘parameterized include’.

      +

      You can also pass variables into includes. We call this a ‘parameterized include’.

      For instance, if deploying multiple wordpress instances, I could contain all of my wordpress tasks in a single wordpress.yml file, and use it like so:

      - tasks:
      @@ -415,16 +433,16 @@ contain all of my wordpress tasks in a single wordpress.yml file, and use it lik
         - include: wordpress.yml user=alice
         - include: wordpress.yml user=bob
      -

      Variables passed in can be used in the included files. You can reference them like this:

      +

      Variables passed in can then be used in the included files. You can reference them like this:

      $user
      -

      In addition to the explicitly passed in parameters, all variables from -the vars section are also available for use here as well.

      +

      (In addition to the explicitly passed in parameters, all variables from +the vars section are also available for use here as well.)

      Note

      -

      Include statements are only usable from the top level -playbook file. This means includes can not include other -includes. This may be implemented in a later release.

      +

      Task include statements are only usable one-level deep. +This means task includes can not include other +task includes. This may change in a later release.

      Includes can also be used in the ‘handlers’ section, for instance, if you want to define how to restart apache, you only have to do that once for all @@ -440,9 +458,12 @@ of a play:

      - include: handlers/handlers.yml

    You can mix in includes along with your regular non-included tasks and handlers.

    -

    Note that you can not conditionally path the location to an include file, like you can +

    NOTE:: you can not conditionally path the location to an include file, like you can with ‘vars_files’. If you find yourself needing to do this, consider how you can -restructure your playbook to be more class/role oriented.

    +restructure your playbook to be more class/role oriented. This is to say you cannot +use a ‘fact’ to decide what include file to use. All hosts contained within the play +are going to get the same tasks. (‘only_if’ provides some ability for hosts to conditionally +skip tasks).

    Executing A Playbook

    @@ -514,7 +535,7 @@ package is installed. Try it!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 27456e5886e..aac35f3e104 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -149,9 +149,10 @@ s.parentNode.insertBefore(ga, s); class="dropdown-toggle">Page @@ -195,11 +200,44 @@ s.parentNode.insertBefore(ga, s); are not neccessary, but many of them will prove useful. If a feature doesn’t seem immediately relevant, feel free to skip it. For many people, the features documented in playbooks will be 90% or more of what they use in Ansible.

    +
    +

    Tags

    +

    (New in 0.6) If you have a large playbook it may become useful to be able to run a specific +part of the configuration. Both plays and tasks support a “tags:” attribute for this reason.

    +

    Example:

    +
    tasks:
    +
    +    - action: yum name=$item state=installed
    +      with_items:
    +         - httpd
    +         - memcached
    +      tags:
    +         - packages
    +
    +    - action: template src=templates/src.j2 dest=/etc/foo.conf
    +      tags:
    +         - configuration
    +
    +

    If you wanted to just run the “configuration” and “packages” part of a very long playbook, you could do this:

    +
    ansible-playbook example.yml --tags "configuration,packages"
    +
    +
    +
    +

    Playbooks Including Playbooks

    +

    (New in 0.6) To further advance the concept of include files, playbook files can include other playbook +files. Suppose you define the behavior of all your webservers in “webservers.yml” and +all your database servers in “dbservers.yml”. You can create a “site.yml” that would +reconfigure all of your systems like this:

    +
    ----
    +- include: playbooks/webservers.yml
    +- include: playbooks/dbservers.yml
    +
    +

    This concept works great with tags to rapidly select exactly what plays you want to run, and exactly +what parts of those plays.

    -

    Accessing Complex Variable Data

    +

    Accessing Complex Variable Data

    Some provided facts, like networking information, are made available as nested data structures. To access -them a simple ‘$foo’ is not sufficient, but it is still easy to do. Here’s how we get an IP address using -Ansible 0.4 and later:

    +them a simple ‘$foo’ is not sufficient, but it is still easy to do. Here’s how we get an IP address:

    ${ansible_eth0.ipv4.address}

    It is also possible to access variables whose elements are arrays:

    @@ -212,19 +250,14 @@ that is preferred:

    -

    Accessing Information About Other Hosts

    +

    Accessing Information About Other Hosts

    If your database server wants to check the value of a ‘fact’ from another node, or an inventory variable -assigned to another node, it’s easy to do so within a template or even an action line (note: this uses syntax available in 0.4 and later):

    +assigned to another node, it’s easy to do so within a template or even an action line:

    ${hostvars.hostname.factname}

    NOTE: No database or other complex system is required to exchange data between hosts. The hosts that you want to reference data from must be included in either the current play or any previous play.

    -
    -
    -

    Magic Variables

    -

    Some variables made available to hosts don’t come from definitions in a playbook, the inventory file, or discovery from the system. There are only two of these, and are used in special cases that many users won’t need.

    -

    group_names is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 -syntax to make template source files that vary based on the group membership (or role) of the host:

    +

    Additionally, group_names is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 syntax to make template source files that vary based on the group membership (or role) of the host:

    {% if 'webserver' in group_names %}
        # some part of a configuration file that only applies to webservers
     {% endif %}
    @@ -238,10 +271,12 @@ For example:

    Use cases include pointing a frontend proxy server to all of the app servers, setting up the correct firewall rules between servers, etc.

    inventory_hostname is the name of the hostname as configured in Ansible’s inventory host file. This can be useful for when you don’t want to rely on the discovered hostname ansible_hostname or for other mysterious -reasons. Don’t worry about it unless you think you need it.

    +reasons. If you have a long FQDN, inventory_hostname_short (in Ansible 0.6) also contains the part up to the first +period.

    +

    Don’t worry about any of this unless you think you need it. You’ll know when you do.

    -

    Variable File Seperation

    +

    Variable File Seperation

    It’s a great idea to keep your playbooks under source control, but you may wish to make the playbook source public while keeping certain important variables private. Similarly, sometimes you may just @@ -267,9 +302,10 @@ sharing your playbook source with them.

    somevar: somevalue password: magic
    +

    NOTE: It’s also possible to keep per-host and per-group variables in very similar files, this is covered in Inventory & Patterns.

    -

    Prompting For Sensitive Data

    +

    Prompting For Sensitive Data

    You may wish to prompt the user for certain input, and can do so with the similarly named ‘vars_prompt’ section. This has uses beyond security, for instance, you may use the same playbook for all @@ -286,17 +322,37 @@ in a push-script:

    favcolor: "what is your favorite color?"

    There are full examples of both of these items in the github examples/playbooks directory.

    +

    An alternative form of vars_prompt allows for hiding input from the user, and may later support +some other options, but otherwise works equivalently:

    +
    vars_prompt:
    +  - name: "some_password"
    +    prompt: "Enter password"
    +    private: True
    +  - name: "release_version"
    +    prompt: "Product release version"
    +    private: False
    +
    -

    Passing Variables On The Command Line

    +

    Passing Variables On The Command Line

    In addition to vars_prompt and vars_files, it is possible to send variables over the ansible command line. This is particularly useful when writing a generic release playbook where you may want to pass in the version of the application to deploy:

    ansible-playbook release.yml --extra-vars "version=1.23.45 other_variable=foo"
    +

    This is useful, for, among other things, setting the hosts group or the user for the playbook.

    +

    Example:

    +
    -----
    +- user: $user
    +  hosts: $hosts
    +  tasks:
    +     - ...
    +
    +ansible-playbook release.yml --extra-vars "hosts=vipers user=starbuck"
    +
    -

    Conditional Execution

    +

    Conditional Execution

    Sometimes you will want to skip a particular step on a particular host. This could be something as simple as not installing a certain package if the operating system is a particular version, or it could be something like performing some cleanup steps if a filesystem is getting full.

    @@ -306,22 +362,32 @@ Don’t panic – it’s actually pretty simple:

    favcolor: blue is_favcolor_blue: "'$favcolor' == 'blue'" is_centos: "'$facter_operatingsystem' == 'CentOS'" + tasks: - name: "shutdown if my favorite color is blue" action: command /sbin/shutdown -t now only_if: '$is_favcolor_blue'

    Variables from tools like facter and ohai can be used here, if installed, or you can -use variables that bubble up from ansible (0.3 and later). As a reminder, +use variables that bubble up from ansible, which many are provided by the setup module. As a reminder, these variables are prefixed, so it’s $facter_operatingsystem, not $operatingsystem. Ansible’s -built in variables are prefixed with ansible_. The only_if -expression is actually a tiny small bit of Python, so be sure to quote variables and make something +built in variables are prefixed with ansible_.

    +

    The only_if expression is actually a tiny small bit of Python, so be sure to quote variables and make something that evaluates to True or False. It is a good idea to use ‘vars_files’ instead of ‘vars’ to define all of your conditional expressions in a way that makes them very easy to reuse between plays and playbooks.

    +

    You cannot use live checks here, like ‘os.path.exists’, so don’t try.

    +

    It’s also easy to provide your own facts if you want, which is covered in Module Development. To run them, just +make a call to your own custom fact gathering module at the top of your list of tasks, and variables returned +there will be accessible to future tasks:

    +
    tasks:
    +    - name: gather site specific fact data
    +      action: site_facts
    +    - action: command echo ${my_custom_fact_can_be_used_now}
    +
    -

    Conditional Imports

    +

    Conditional Imports

    Sometimes you will want to do certain things differently in a playbook based on certain criteria. Having one playbook that works on multiple platforms and OS versions is a good example.

    As an example, the name of the Apache package may be different between CentOS and Debian, @@ -364,7 +430,7 @@ in more streamlined & auditable configuration rules – especially becau minimum of decision points to track.

    -

    Loop Shorthand

    +

    Loop Shorthand

    To save some typing, repeated tasks can be written in short-hand like so:

    - name: add user $item
       action: user name=$item state=present groups=wheel
    @@ -372,6 +438,9 @@ minimum of decision points to track.

    - testuser1 - testuser2
    +

    If you have defined a YAML list in a variables file, or the ‘vars’ section, you can also do:

    +
    with_items: $somelist
    +

    The above would be the equivalent of:

    - name: add user testuser1
       action: user name=testuser1 state=present groups=wheel
    @@ -382,9 +451,9 @@ minimum of decision points to track.

    manager transactions.

    -

    Selecting Files And Templates Based On Variables

    +

    Selecting Files And Templates Based On Variables

    Sometimes a configuration file you want to copy, or a template you will use may depend on a variable. -The following construct (new in 0.4) selects the first available file appropriate for the variables of a given host, +The following construct selects the first available file appropriate for the variables of a given host, which is often much cleaner than putting a lot of if conditionals in a template.

    The following example shows how to template out a configuration file that was very different between, say, CentOS and Debian:

    @@ -396,7 +465,7 @@ CentOS and Debian:

    -

    Asynchronous Actions and Polling

    +

    Asynchronous Actions and Polling

    By default tasks in playbooks block, meaning the connections stay open until the task is done on each node. If executing playbooks with a small parallelism value (aka --forks), you may wish that long @@ -446,7 +515,7 @@ tasks even faster. This also increases the efficiency of polling.

    -

    Local Playbooks

    +

    Local Playbooks

    It may be useful to use a playbook locally, rather than by connecting over SSH. This can be useful for assuring the configuration of a system by putting a playbook on a crontab. This may also be used to run a playbook inside a OS installer, such as an Anaconda kickstart.

    @@ -459,10 +528,19 @@ use the default remote connection type:

    connection: local
    +
    +

    Turning Off Facts

    +

    If you know you don’t need any fact data about your hosts, and know everything about your systems centrally, you +can turn off fact gathering. This has advantages in scaling ansible in push mode with very large numbers of +systems, mainly, or if you are using Ansible on experimental platforms. In any play, just do this:

    +
    - hosts: whatever
    +  gather_facts: False
    +
    +
    -

    Pull-Mode Playbooks

    -

    The use of playbooks in local mode (above) is made extremely powerful with the addition of ansible-pull in the -0.4 release. A script for setting up ansible-pull is provided in the examples/playbooks directory of the source +

    Pull-Mode Playbooks

    +

    The use of playbooks in local mode (above) is made extremely powerful with the addition of ansible-pull. +A script for setting up ansible-pull is provided in the examples/playbooks directory of the source checkout.

    The basic idea is to use Ansible to set up a remote copy of ansible on each managed node, each set to run via cron and update playbook source via git. This interverts the default push architecture of ansible into a pull @@ -470,6 +548,11 @@ architecture, which has near-limitless scaling potential. The setup playbook ca the cron frequency, logging locations, and parameters to ansible-pull.

    This is useful both for extreme scale-out as well as periodic remediation. Usage of the ‘fetch’ module to retrieve logs from ansible-pull runs would be an excellent way to gather and analyze remote logs from ansible-pull.

    +
    +
    +

    Style Points

    +

    Ansible playbooks are colorized. If you do not like this, set the ANSIBLE_NOCOLOR=1 environment variable.

    +

    Ansible playbooks also look more impressive with cowsay installed, and we encourage installing this package.

    See also

    @@ -493,6 +576,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo
    +
    @@ -522,7 +606,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/rst/moduledev.rst b/rst/moduledev.rst index c78cc26919a..57f3c3a5f2f 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -174,8 +174,7 @@ Module Provided 'Facts' The 'setup' module that ships with Ansible provides many variables about a system that can be used in playbooks and templates. However, it's possible to also add your own facts without modifying the system module. To do -this, just have the module return a `ansible_facts` key, like so, along with other return data. This requires -Ansible 0.4 and later:: +this, just have the module return a `ansible_facts` key, like so, along with other return data:: { "changed" : True, diff --git a/rst/modules.rst b/rst/modules.rst index 15fdb54092e..dd145945b42 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -433,7 +433,6 @@ raw ``` Executes a low-down and dirty SSH command, not going through the module subsystem. -This module is new in Ansible 0.4. This is useful and should only be done in two cases. The first case is installing python-simplejson on older (python 2.4 and before) hosts that need it as a dependency diff --git a/rst/patterns.rst b/rst/patterns.rst index f0bdc72b813..17dc81694a3 100644 --- a/rst/patterns.rst +++ b/rst/patterns.rst @@ -110,7 +110,7 @@ Variables can also be applied to an entire group at once:: Groups of Groups, and Group Variables +++++++++++++++++++++++++++++++++++++ -Using Ansible 0.4, it is possible to make groups of groups and assign +It is also possible to make groups of groups and assign variables to groups. These variables can be used by /usr/bin/ansible-playbook, but not /usr/bin/ansible:: diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 4ffbf653371..fb720b3b167 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -1,11 +1,10 @@ Playbooks ========= -Playbooks are a completely different way to use ansible and are -particularly awesome. They are the basis for a really simple +Playbooks are a completely different way to use ansible than in task execution mode, and are +particularly awesome. Simply put, playbooks are the basis for a really simple configuration management and multi-machine deployment system, -unlike any that already exist, and -one that is very well suited to deploying complex applications. +unlike any that already exist, and one that is very well suited to deploying complex applications. Playbooks can declare configurations, but they can also orchestrate steps of any manual ordered process, even as different steps must bounce back and forth @@ -21,12 +20,16 @@ Let's dive in and see how they work. As you go, you may wish to open the `github examples directory `_ in another tab, so you can apply the theory to what things look like in practice. -Playbook Example -```````````````` +Playbook Language Example +````````````````````````` Playbooks are expressed in YAML format and have a minimum of syntax. Each playbook is composed of one or more 'plays' in a list. +The goal of a play is map a group of hosts to some well defined roles, represented by +things ansible called tasks. At the basic level, a task is nothing more than a call +to an ansible module, which you should have learned about in earlier chapters. + By composing a playbook of multiple 'plays', it is possible to orchestrate multi-machine deployments, running certain steps on all machines in the webservers group, then certain steps on the database @@ -116,25 +119,21 @@ These variables can be used later in the playbook like this:: $varname or ${varname} -The later is useful in the event you need to do something like ${other}_concatenated_value. +The later is useful in the event you need to do something like ${other}_some_string. -The full power of the Jinja2 templating language is also available (note: in 0.4, this is only true inside of templates), which looks like this:: +The full power of the `Jinja2 `_ templating language is also available, which looks like this:: {{ varname }} The Jinja2 documentation provides information about how to construct loops and conditionals for those who which to use more advanced templating. This is optional and the $varname format still works in template -files. - -If there are discovered variables about the system (ansible provides some of these, -plus we include ones taken from facter or ohai if installed) these variables bubble up back into the -playbook, and can be used on each system just like explicitly set -variables. +files. -Facter variables are prefixed with ``facter_`` and Ohai -variables are prefixed with ``ohai_``. Ansible variables (0.3 and later) -are not surprisingly prefixed with ``ansible_`` (See the :ref:`setup` module -documentation for a list of Ansible variables). +If there are discovered variables about the system, called 'facts', these variables bubble up back into the +playbook, and can be used on each system just like explicitly set variables. Ansible provides several +of these, prefixed with 'ansible', and are documented under :ref:`setup` in the module documentation. Additionally, +facts can be gathered by ohai and facter if they are installed. Facter variables are prefixed with ``facter_`` and Ohai +variables are prefixed with ``ohai_``. So for instance, if I wanted to write the hostname into the /etc/motd file, I could say:: @@ -153,23 +152,26 @@ Tasks list Each play contains a list of tasks. Tasks are executed in order, one at a time, against all machines matched by the host pattern, -before moving on to the next task. +before moving on to the next task. It is important to understand that, within a play, +all hosts are going to get the same task directives. It is the purpose of a play to map +a selection of hosts to tasks. -Hosts with failed tasks are taken out of the rotation for the entire -playbook. If things fail, simply correct the playbook file and rerun. +When running the playbook, which runs top to bottom, hosts with failed tasks are +taken out of the rotation for the entire playbook. If things fail, simply correct the playbook file and rerun. The goal of each task is to execute a module, with very specific arguments. Variables, as mentioned above, can be used in arguments to modules. -Modules other than `command` and `shell` are 'idempotent', meaning if you run them +Modules are 'idempotent', meaning if you run them again, they will make the changes they are told to make to bring the system to the desired state. This makes it very safe to rerun the same playbook multiple times. They won't change things unless they have to change things. -The `command` and `shell` modules will actually rerun the same command again, +The `command` and `shell` modules will typically rerun the same command again, which is totally ok if the command is something like -'chmod' or 'setsebool', etc. +'chmod' or 'setsebool', etc. Though there is a 'creates' flag available which can +be used to make these modules also idempotent. Every task should have a `name`, which is included in the output from running the playbook. This is output for humans, so it is @@ -192,6 +194,13 @@ them work just like you would expect. Simple:: - name: disable selinux action: command /sbin/setenforce 0 +The command and shell module care about return codes, so if you have a command +who's successful exit code is not zero, you may wish to do this: + + tasks: + - name: run this command and ignore the result + action: shell /usr/bin/somecommand & /bin/true + Variables can be used in action lines. Suppose you defined a variable called 'vhost' in the 'vars' section, you could do this:: @@ -201,11 +210,13 @@ a variable called 'vhost' in the 'vars' section, you could do this:: Those same variables are usable in templates, which we'll get to later. +Now in a very basic playbook all the tasks will be listed directly in that play, though it will usually +make more sense to break up tasks using the 'include:' directive. We'll show that a bit later. Running Operations On Change ```````````````````````````` -As we've mentioned, nearly all modules are written to be 'idempotent' and can relay when +As we've mentioned, modules are written to be 'idempotent' and can relay when they have made a change on the remote system. Playbooks recognize this and have a basic event system that can be used to respond to change. @@ -246,13 +257,15 @@ won't need them for much else. Notify handlers are always run in the order written. -Include Files And Reuse -``````````````````````` +Include Files And Encouraging Reuse +``````````````````````````````````` Suppose you want to reuse lists of tasks between plays or playbooks. You can use -include files to do this. +include files to do this. Use of included task lists is a great way to define a role +that system is going to fulfill. Remember, the goal of a play in a playbook is to map +a group of systems into multiple roles. Let's see what this looks like... -An include file simply contains a flat list of tasks, like so:: +A task include file simply contains a flat list of tasks, like so:: --- # possibly saved as tasks/foo.yml @@ -261,12 +274,12 @@ An include file simply contains a flat list of tasks, like so:: - name: placeholder bar action: command /bin/bar -Include directives look like this:: +Include directives look like this, and can be mixed in with regular tasks in a playbook:: - tasks: - include: tasks/foo.yml -You can also pass variables into includes directly. We might call this a 'parameterized include'. +You can also pass variables into includes. We call this a 'parameterized include'. For instance, if deploying multiple wordpress instances, I could contain all of my wordpress tasks in a single wordpress.yml file, and use it like so:: @@ -276,17 +289,17 @@ contain all of my wordpress tasks in a single wordpress.yml file, and use it lik - include: wordpress.yml user=alice - include: wordpress.yml user=bob -Variables passed in can be used in the included files. You can reference them like this:: +Variables passed in can then be used in the included files. You can reference them like this:: $user -In addition to the explicitly passed in parameters, all variables from -the vars section are also available for use here as well. +(In addition to the explicitly passed in parameters, all variables from +the vars section are also available for use here as well.) .. note:: - Include statements are only usable from the top level - playbook file. This means includes can not include other - includes. This may be implemented in a later release. + Task include statements are only usable one-level deep. + This means task includes can not include other + task includes. This may change in a later release. Includes can also be used in the 'handlers' section, for instance, if you want to define how to restart apache, you only have to do that once for all @@ -305,10 +318,12 @@ of a play:: You can mix in includes along with your regular non-included tasks and handlers. -Note that you can not conditionally path the location to an include file, like you can +NOTE:: you can not conditionally path the location to an include file, like you can with 'vars_files'. If you find yourself needing to do this, consider how you can -restructure your playbook to be more class/role oriented. - +restructure your playbook to be more class/role oriented. This is to say you cannot +use a 'fact' to decide what include file to use. All hosts contained within the play +are going to get the same tasks. ('only_if' provides some ability for hosts to conditionally +skip tasks). Executing A Playbook ```````````````````` diff --git a/rst/playbooks2.rst b/rst/playbooks2.rst index 5b9012ff8e4..d95f21ba111 100644 --- a/rst/playbooks2.rst +++ b/rst/playbooks2.rst @@ -6,12 +6,51 @@ are not neccessary, but many of them will prove useful. If a feature doesn't se relevant, feel free to skip it. For many people, the features documented in `playbooks` will be 90% or more of what they use in Ansible. +Tags +```` + +(New in 0.6) If you have a large playbook it may become useful to be able to run a specific +part of the configuration. Both plays and tasks support a "tags:" attribute for this reason. + +Example:: + + tasks: + + - action: yum name=$item state=installed + with_items: + - httpd + - memcached + tags: + - packages + + - action: template src=templates/src.j2 dest=/etc/foo.conf + tags: + - configuration + +If you wanted to just run the "configuration" and "packages" part of a very long playbook, you could do this:: + + ansible-playbook example.yml --tags "configuration,packages" + +Playbooks Including Playbooks +````````````````````````````` + +(New in 0.6) To further advance the concept of include files, playbook files can include other playbook +files. Suppose you define the behavior of all your webservers in "webservers.yml" and +all your database servers in "dbservers.yml". You can create a "site.yml" that would +reconfigure all of your systems like this:: + + ---- + - include: playbooks/webservers.yml + - include: playbooks/dbservers.yml + +This concept works great with tags to rapidly select exactly what plays you want to run, and exactly +what parts of those plays. + Accessing Complex Variable Data +++++++++++++++++++++++++++++++ Some provided facts, like networking information, are made available as nested data structures. To access -them a simple '$foo' is not sufficient, but it is still easy to do. Here's how we get an IP address using -Ansible 0.4 and later:: +them a simple '$foo' is not sufficient, but it is still easy to do. Here's how we get an IP address:: ${ansible_eth0.ipv4.address} @@ -30,26 +69,19 @@ Accessing Information About Other Hosts +++++++++++++++++++++++++++++++++++++++ If your database server wants to check the value of a 'fact' from another node, or an inventory variable -assigned to another node, it's easy to do so within a template or even an action line (note: this uses syntax available in 0.4 and later):: +assigned to another node, it's easy to do so within a template or even an action line:: ${hostvars.hostname.factname} NOTE: No database or other complex system is required to exchange data between hosts. The hosts that you want to reference data from must be included in either the current play or any previous play. -Magic Variables -+++++++++++++++ - -Some variables made available to hosts don't come from definitions in a playbook, the inventory file, or discovery from the system. There are only two of these, and are used in special cases that many users won't need. - -*group_names* is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 -syntax to make template source files that vary based on the group membership (or role) of the host:: +Additionally, *group_names* is a list (array) of all the groups the current host is in. This can be used in templates using Jinja2 syntax to make template source files that vary based on the group membership (or role) of the host:: {% if 'webserver' in group_names %} # some part of a configuration file that only applies to webservers {% endif %} - *groups* is a list of all the groups (and hosts) in the inventory. This can be used to enumerate all hosts within a group. For example:: @@ -57,12 +89,14 @@ For example:: # something that applies to all app servers. {% endfor %} - Use cases include pointing a frontend proxy server to all of the app servers, setting up the correct firewall rules between servers, etc. *inventory_hostname* is the name of the hostname as configured in Ansible's inventory host file. This can be useful for when you don't want to rely on the discovered hostname `ansible_hostname` or for other mysterious -reasons. Don't worry about it unless you think you need it. +reasons. If you have a long FQDN, *inventory_hostname_short* (in Ansible 0.6) also contains the part up to the first +period. + +Don't worry about any of this unless you think you need it. You'll know when you do. Variable File Seperation ++++++++++++++++++++++++ @@ -96,6 +130,8 @@ The contents of each variables file is a simple YAML dictionary, like this:: somevar: somevalue password: magic +NOTE: It's also possible to keep per-host and per-group variables in very similar files, this is covered in :ref:`patterns`. + Prompting For Sensitive Data ++++++++++++++++++++++++++++ @@ -117,6 +153,18 @@ in a push-script:: There are full examples of both of these items in the github examples/playbooks directory. +An alternative form of vars_prompt allows for hiding input from the user, and may later support +some other options, but otherwise works equivalently:: + + vars_prompt: + - name: "some_password" + prompt: "Enter password" + private: True + - name: "release_version" + prompt: "Product release version" + private: False + + Passing Variables On The Command Line +++++++++++++++++++++++++++++++++++++ @@ -126,6 +174,18 @@ where you may want to pass in the version of the application to deploy:: ansible-playbook release.yml --extra-vars "version=1.23.45 other_variable=foo" +This is useful, for, among other things, setting the hosts group or the user for the playbook. + +Example:: + + ----- + - user: $user + hosts: $hosts + tasks: + - ... + + ansible-playbook release.yml --extra-vars "hosts=vipers user=starbuck" + Conditional Execution +++++++++++++++++++++ @@ -140,20 +200,32 @@ Don't panic -- it's actually pretty simple:: favcolor: blue is_favcolor_blue: "'$favcolor' == 'blue'" is_centos: "'$facter_operatingsystem' == 'CentOS'" + tasks: - name: "shutdown if my favorite color is blue" action: command /sbin/shutdown -t now only_if: '$is_favcolor_blue' Variables from tools like `facter` and `ohai` can be used here, if installed, or you can -use variables that bubble up from ansible (0.3 and later). As a reminder, +use variables that bubble up from ansible, which many are provided by the :ref:`setup` module. As a reminder, these variables are prefixed, so it's `$facter_operatingsystem`, not `$operatingsystem`. Ansible's -built in variables are prefixed with `ansible_`. The only_if -expression is actually a tiny small bit of Python, so be sure to quote variables and make something +built in variables are prefixed with `ansible_`. + +The only_if expression is actually a tiny small bit of Python, so be sure to quote variables and make something that evaluates to `True` or `False`. It is a good idea to use 'vars_files' instead of 'vars' to define all of your conditional expressions in a way that makes them very easy to reuse between plays and playbooks. +You cannot use live checks here, like 'os.path.exists', so don't try. + +It's also easy to provide your own facts if you want, which is covered in :doc:`moduledev`. To run them, just +make a call to your own custom fact gathering module at the top of your list of tasks, and variables returned +there will be accessible to future tasks:: + + tasks: + - name: gather site specific fact data + action: site_facts + - action: command echo ${my_custom_fact_can_be_used_now} Conditional Imports +++++++++++++++++++ @@ -216,6 +288,10 @@ To save some typing, repeated tasks can be written in short-hand like so:: - testuser1 - testuser2 +If you have defined a YAML list in a variables file, or the 'vars' section, you can also do:: + + with_items: $somelist + The above would be the equivalent of:: - name: add user testuser1 @@ -231,7 +307,7 @@ Selecting Files And Templates Based On Variables ++++++++++++++++++++++++++++++++++++++++++++++++ Sometimes a configuration file you want to copy, or a template you will use may depend on a variable. -The following construct (new in 0.4) selects the first available file appropriate for the variables of a given host, +The following construct selects the first available file appropriate for the variables of a given host, which is often much cleaner than putting a lot of if conditionals in a template. The following example shows how to template out a configuration file that was very different between, say, @@ -312,11 +388,21 @@ use the default remote connection type:: hosts: 127.0.0.1 connection: local +Turning Off Facts ++++++++++++++++++ + +If you know you don't need any fact data about your hosts, and know everything about your systems centrally, you +can turn off fact gathering. This has advantages in scaling ansible in push mode with very large numbers of +systems, mainly, or if you are using Ansible on experimental platforms. In any play, just do this:: + + - hosts: whatever + gather_facts: False + Pull-Mode Playbooks +++++++++++++++++++ -The use of playbooks in local mode (above) is made extremely powerful with the addition of `ansible-pull` in the -0.4 release. A script for setting up ansible-pull is provided in the examples/playbooks directory of the source +The use of playbooks in local mode (above) is made extremely powerful with the addition of `ansible-pull`. +A script for setting up ansible-pull is provided in the examples/playbooks directory of the source checkout. The basic idea is to use Ansible to set up a remote copy of ansible on each managed node, each set to run via @@ -327,6 +413,12 @@ the cron frequency, logging locations, and parameters to ansible-pull. This is useful both for extreme scale-out as well as periodic remediation. Usage of the 'fetch' module to retrieve logs from ansible-pull runs would be an excellent way to gather and analyze remote logs from ansible-pull. +Style Points +++++++++++++ + +Ansible playbooks are colorized. If you do not like this, set the ANSIBLE_NOCOLOR=1 environment variable. + +Ansible playbooks also look more impressive with cowsay installed, and we encourage installing this package. .. seealso:: diff --git a/search.html b/search.html index 4a952e03c5e..cbd9289b38b 100644 --- a/search.html +++ b/search.html @@ -221,7 +221,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    diff --git a/searchindex.js b/searchindex.js index c8a01054f9e..0c4de81a1fe 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:10,spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,9,6],exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:6,playbooks2:[],logo:[],contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:4,ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],suppos:[8,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:[10,6],figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:6,login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,5,12,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:[10,7],hypothet:[],tho:[],client:[],"_concatenated_valu":7,thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:0,left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:4,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:7,sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,5,6,7,9,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:4,time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,1,11],vpc:9,"5rxgmiicbrh":6,skip:10,consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:0,handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,4],purpos:[3,6,1,8],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:9,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:5,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,7,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:6,ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,hell:3,ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,11],across:[9,5],cycl:0,come:[3,10,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:5,color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:10,legal:[4,1],moon:[],exit:[9,4],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,src:[10,9,6,7,11],stone:4,central:[3,5],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,11],certain:[10,5,6,7],strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],month:0,abil:5,follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:4,design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:7,prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,6,7,8,9,10],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],fff:[],suffer:5,paramet:[4,10,6,7],style:[4,6],psycopg2:6,cowsai:7,pend:[],rapidli:9,might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[9,4,5,6],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:10,ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:11,awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,4],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:9,pem:0,larg:5,either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],sinc:[9,6,1,11],great:[3,1,5,4,10,12],convers:8,hypervisor:6,technolog:3,later:[0,1,6,4,7,8,10,11],typic:[5,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,1],sbin:[10,6,7,11],trail:1,train:5,login_password:6,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:[],bunch:[],taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,10,5,6,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:[9,10],out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[9,10,7],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,8,10,11],fqdn:[],keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,gather:[10,5,6],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[10,7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[6,5,4,7,8,10,11],progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:7,halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[4,6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[5,1],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6,7],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4,7],ini:[8,9],ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:11,varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:4,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,5,6,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:[5,10],ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],month:0,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,4,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:10,bunch:[],somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[9,10],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[4,6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[5,10,1,7],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 2f1a36cba2a..a82f3a931f8 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -257,7 +257,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 30, 2012.
    + Last updated on Jul 31, 2012.

    From 962e6e55720493e44239f58ae445758627448f91 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 22:47:04 -0400 Subject: [PATCH 280/416] module doc updates for 0.6 (release pending soon) --- modules.html | 278 +++++++++++++++++++++++++++++++++++++++++++++--- rst/modules.rst | 130 +++++++++++++++++++++- searchindex.js | 2 +- 3 files changed, 388 insertions(+), 22 deletions(-) diff --git a/modules.html b/modules.html index c7abc7bd9cf..ecfe612f732 100644 --- a/modules.html +++ b/modules.html @@ -157,8 +157,12 @@ s.parentNode.insertBefore(ga, s);
  • facter
  • fetch
  • file
  • +
  • get_url
  • git
  • group
  • +
  • mount
  • +
  • mysql_db
  • +
  • mysql_user
  • ohai
  • ping
  • postgresql_db
  • @@ -278,6 +282,11 @@ Can be run as part of the package installation or a seperate step behavior works as apt’s default behavior, ‘no’ does not install recommended packages. Suggested packages are never installed. +force +no +no +If ‘yes’, force installs/removes. +

    Example action from Ansible Playbooks:

    @@ -583,8 +592,54 @@ file path=/some/path state=directory setype=httpd_sys_content_t file path=/some/path state=directory context=default +
    +

    get_url

    +

    Downloads files from http, https, or ftp to the remote server. The remote server must have direct +access to the remote resource.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    urlyes http, https, or ftp URL
    destyes absolute path of where to download the file to. If dest is a directory, +the basename of the file on the remote server will be used.
    OTHERSno all arguments accepted by the file module also work here
    +

    Example action from Ansible Playbooks:

    +
    - name: Grab a bunch of jQuery stuff
    +   action: get_url url=http://code.jquery.com/$item  dest=${jquery_directory} mode=0444
    +   with_items:
    +   - jquery.min.js
    +   - mobile/latest/jquery.mobile.min.js
    +   - ui/jquery-ui-git.css
    +
    +
    -

    git

    +

    git

    Deploys software (or files) from git checkouts.

    @@ -612,13 +667,13 @@ file path=/some/path state=directory context=default - - + + - + @@ -629,7 +684,7 @@ file path=/some/path state=directory context=default
    -

    group

    +

    group

    Adds or removes groups.

    absolute path of where the repo should be checked out to
    version  noHEAD what version to check out – either the git SHA, the literal string ‘HEAD’, branch name, or a tag name.
    remote no origin name of the remote branch
    @@ -673,8 +728,197 @@ file path=/some/path state=directory context=default
    group name=somegroup state=present
    +
    +

    mount

    +

    The mount module controls active and configured mount points (fstab).

    +
    ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes path to the mountpoint, ex: /mnt/foo
    srcyes device to be mounted
    fstypeyes fstype
    optsno mount options (see fstab docs)
    dumpno dump (see fstab docs)
    passnono passno (see fstab docs)
    stateyes ‘present’, ‘absent’, ‘mounted’, or ‘unmounted’. If mounted/unmounted, +the device will be actively mounted or unmounted as well as just +configured in fstab. ‘absent’, and ‘present’ only deal with fstab.
    +
    +
    +

    mysql_db

    +

    Add or remove MySQL databases from a remote host.

    + +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes
    +
    name of the database to add or remove
    +
    +
    login_userno user used to authenticate with
    login_passwordno password used to authenticate with
    login_hostnolocalhosthost running the database
    statenopresent‘absent’ or ‘present’
    collationno collation mode
    encodingno encoding mode
    +

    Example action from Ansible Playbooks:

    +
    - name: Create database
    +  action: mysql_db loginpass=$mysql_root_password db=bobdata state=present
    +
    +
    +
    +

    mysql_user

    +

    Adds or removes a user from a MySQL database.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    nameyes name of the user (role) to add or remove
    passwordyes set the user’s password
    dbyes name of an existing database to grant user access to
    login_userno user (role) used to authenticate with
    login_passwordno password used to authenticate with
    login_hostnolocalhosthost running MySQL. Default (blank) implies localhost
    privno MySQL priveledges string
    statenopresent‘absent’ or ‘present’
    +

    Example action from Ansible Playbooks:

    +
    - name: Create database user
    +  action: mysql_user loginpass=$mysql_root_password name=bob passwd=12345 priv=*.*:ALL state=present
    +
    +- name: Ensure no user named 'sally' exists
    +  action: mysql_user loginpass=$mysql_root_password name=sally state=absent
    +
    +
    -

    ohai

    +

    ohai

    Similar to the facter module, this returns JSON inventory data. Ohai data is a bit more verbose and nested than facter.

    Requires that ‘ohai’ be installed on the remote end.

    @@ -684,7 +928,7 @@ support change hooks, nor does it make any changes on the system.

    setup module behind the scenes instead.

    -

    ping

    +

    ping

    A trivial test module, this module always returns the integer 1 on successful contact.

    This module does not support change hooks and is informative only - it @@ -717,7 +961,7 @@ host before using this module.

    -db +name yes   name of the database to add or remove @@ -775,7 +1019,7 @@ host before using this module.

    -user +name yes   name of the user (role) to add or remove @@ -817,7 +1061,7 @@ host before using this module.

    -

    raw

    +

    raw

    Executes a low-down and dirty SSH command, not going through the module subsystem.

    This is useful and should only be done in two cases. The first case is installing python-simplejson on older (python 2.4 and before) hosts that need it as a dependency @@ -832,7 +1076,7 @@ for this module.

    -

    service

    +

    service

    Controls services on remote machines.

    @@ -883,7 +1127,7 @@ service name=httpd state=reloaded
    -

    setup

    +

    setup

    This module is automatically called by playbooks to gather useful variables about remote hosts that can be used in playbooks. It can also be executed directly by /usr/bin/ansible to check what variables are available to a host.

    @@ -965,7 +1209,7 @@ on your remote systems.

    -

    shell

    +

    shell

    The shell module takes the command name followed by a list of arguments, space delimited. It is almost exactly like the command module but runs the command through the user’s configured shell on the remote node.

    @@ -983,7 +1227,7 @@ command was running.

    -

    template

    +

    template

    Templates a file out to a remote server.

    @@ -1023,7 +1267,7 @@ a relative or absolute path.
    -

    user

    +

    user

    Creates user accounts, manipulates existing user accounts, and removes user accounts.

    @@ -1122,7 +1366,7 @@ user name=mdehaan state=absent force=yes
    -

    virt

    +

    virt

    Manages virtual machines supported by libvirt. Requires that libvirt be installed on the managed machine.

    @@ -1182,7 +1426,7 @@ ansible host -m virt -a "command=virttype"
    -

    yum

    +

    yum

    Will install, upgrade, remove, and list packages with the yum package manager.

    diff --git a/rst/modules.rst b/rst/modules.rst index dd145945b42..eb65f52c973 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -59,6 +59,8 @@ Manages apt-packages (such as for Debian/Ubuntu). | | | | behavior works as apt's default behavior, 'no' does not install | | | | | recommended packages. Suggested packages are never installed. | +--------------------+----------+---------+----------------------------------------------------------------------------+ +| force | no | no | If 'yes', force installs/removes. | ++--------------------+----------+---------+----------------------------------------------------------------------------+ Example action from Ansible :doc:`playbooks`:: @@ -271,6 +273,34 @@ Example action from Ansible :doc:`playbooks`:: file path=/some/path state=directory setype=httpd_sys_content_t file path=/some/path state=directory context=default +.. _get_url: + +get_url +``````` + +Downloads files from http, https, or ftp to the remote server. The remote server must have direct +access to the remote resource. + ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| parameter | required | default | comments | ++====================+==========+=========+============================================================================+ +| url | yes | | http, https, or ftp URL | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| dest | yes | | absolute path of where to download the file to. If dest is a directory, | +| | | | the basename of the file on the remote server will be used. | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| OTHERS | no | | all arguments accepted by the file module also work here | ++--------------------+----------+---------+----------------------------------------------------------------------------+ + +Example action from Ansible :doc:`playbooks`:: + + - name: Grab a bunch of jQuery stuff + action: get_url url=http://code.jquery.com/$item dest=${jquery_directory} mode=0444 + with_items: + - jquery.min.js + - mobile/latest/jquery.mobile.min.js + - ui/jquery-ui-git.css + .. _git: git @@ -285,10 +315,10 @@ Deploys software (or files) from git checkouts. +--------------------+----------+---------+----------------------------------------------------------------------------+ | dest | yes | | absolute path of where the repo should be checked out to | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| version | | | what version to check out -- either the git SHA, the literal string | +| version | no | HEAD | what version to check out -- either the git SHA, the literal string | | | | | 'HEAD', branch name, or a tag name. | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| remote | | origin | name of the remote branch | +| remote | no | origin | name of the remote branch | +--------------------+----------+---------+----------------------------------------------------------------------------+ Example action from Ansible :doc:`playbooks`:: @@ -320,6 +350,98 @@ Example action from Ansible :doc:`playbooks`:: group name=somegroup state=present +.. _mount: + +mount +````` + +The mount module controls active and configured mount points (fstab). + ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| parameter | required | default | comments | ++====================+==========+=========+============================================================================+ +| name | yes | | path to the mountpoint, ex: /mnt/foo | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| src | yes | | device to be mounted | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| fstype | yes | | fstype | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| opts | no | | mount options (see fstab docs) | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| dump | no | | dump (see fstab docs) | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| passno | no | | passno (see fstab docs) | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| state | yes | | 'present', 'absent', 'mounted', or 'unmounted'. If mounted/unmounted, | +| | | | the device will be actively mounted or unmounted as well as just | +| | | | configured in fstab. 'absent', and 'present' only deal with fstab. | ++--------------------+----------+---------+----------------------------------------------------------------------------+ + +.. _mysql_db: + +mysql_db +```````` + +Add or remove MySQL databases from a remote host. + ++--------------------+----------+----------+-----------------------------------------------------------------------------+ +| parameter | required | default | comments | ++====================+==========+==========+=============================================================================+ +| name | yes | | name of the database to add or remove | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ +| login_user | no | | user used to authenticate with | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ +| login_password | no | | password used to authenticate with | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ +| login_host | no | localhost | host running the database | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ +| state | no | present | 'absent' or 'present' | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ +| collation | no | | collation mode | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ +| encoding | no | | encoding mode | ++--------------------+----------+-----------+----------------------------------------------------------------------------+ + +Example action from Ansible :doc:`playbooks`:: + + - name: Create database + action: mysql_db loginpass=$mysql_root_password db=bobdata state=present + + +mysql_user +`````````` + +Adds or removes a user from a MySQL database. + ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| parameter | required | default | comments | ++====================+==========+============+============================================================================+ +| name | yes | | name of the user (role) to add or remove | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| password | yes | | set the user's password | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| db | yes | | name of an existing database to grant user access to | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| login_user | no | | user (role) used to authenticate with | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| login_password | no | | password used to authenticate with | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| login_host | no | localhost | host running MySQL. Default (blank) implies localhost | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| priv | no | | MySQL priveledges string | ++--------------------+----------+------------+----------------------------------------------------------------------------+ +| state | no | present | 'absent' or 'present' | ++--------------------+----------+------------+----------------------------------------------------------------------------+ + +Example action from Ansible :doc:`playbooks`:: + + - name: Create database user + action: mysql_user loginpass=$mysql_root_password name=bob passwd=12345 priv=*.*:ALL state=present + + - name: Ensure no user named 'sally' exists + action: mysql_user loginpass=$mysql_root_password name=sally state=absent + + .. _ohai: ohai @@ -370,7 +492,7 @@ host before using this module. +--------------------+----------+----------+----------------------------------------------------------------------------+ | parameter | required | default | comments | +====================+==========+==========+============================================================================+ -| db | yes | | name of the database to add or remove | +| name | yes | | name of the database to add or remove | +--------------------+----------+----------+----------------------------------------------------------------------------+ | login_user | no | postgres | user (role) used to authenticate with PostgreSQL | +--------------------+----------+----------+----------------------------------------------------------------------------+ @@ -407,7 +529,7 @@ host before using this module. +--------------------+----------+----------+----------------------------------------------------------------------------+ | parameter | required | default | comments | +====================+==========+==========+============================================================================+ -| user | yes | | name of the user (role) to add or remove | +| name | yes | | name of the user (role) to add or remove | +--------------------+----------+----------+----------------------------------------------------------------------------+ | password | yes | | set the user's password | +--------------------+----------+----------+----------------------------------------------------------------------------+ diff --git a/searchindex.js b/searchindex.js index 0c4de81a1fe..f2376395e8d 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5,4],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:[],doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,ani:[0,1,3,6,5,4,7,9,10,11],enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:4,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],bounc:[6,7],contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,5,6,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,6,5,4,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],item:[9,10,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:7,commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],claim:1,hostvar:10,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:[5,10],ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,show:[10,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:12,behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],md5sum:6,straighten:5,trick:7,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,found:[10,9,4],"throw":5,earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],month:0,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],built:[9,0,5,10,11],equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:4,creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[9,10,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,4,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,createhom:6,lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,amp:[8,9],love:[],centos6:9,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":2,popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],lose:11,step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:0,ansible_python_interpret:8,folk:[0,4,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],release_vers:10,bunch:[],somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[9,10],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:10,divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],sha:6,stuff:[3,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],state:[6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,cellspac:[],async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[4,6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[5,10,1,7],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:[],restrict:4,hook:6,instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],contrib:4,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],claim:1,hostvar:10,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:[5,10],ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:6,straighten:5,trick:7,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,6,5,4,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],css:6,distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,4,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:6,pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":2,cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[9,10],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,detail:[9,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[5,10,1,7],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file From dde17404c6d86bfc487bbea92d014deb92218854 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 23:08:04 -0400 Subject: [PATCH 281/416] Mention the AnsibleModule common code on the docs site --- moduledev.html | 95 ++++++++++++++++++++++++++++------------ rst/moduledev.rst | 109 +++++++++++++++++++++++++++++++++------------- searchindex.js | 2 +- 3 files changed, 148 insertions(+), 58 deletions(-) diff --git a/moduledev.html b/moduledev.html index 27bea1dea59..473bbd04748 100644 --- a/moduledev.html +++ b/moduledev.html @@ -153,8 +153,9 @@ s.parentNode.insertBefore(ga, s);
  • Testing Modules
  • Reading Input
  • Module Provided ‘Facts’
  • +
  • Common Module Boilerplate
  • Common Pitfalls
  • -
  • Conventions
  • +
  • Conventions/Recomendations
  • Shorthand Vs JSON
  • Sharing Your Module
  • Getting Your Module Into Core
  • @@ -198,6 +199,10 @@ a module that just outputs the current time.

    We are going to use Python here but any language is possible. Only File I/O and outputing to standard out are required. So, bash, C++, clojure, Python, Ruby, whatever you want is fine.

    +

    Now Python Ansible modules contain some extremely powerful shortcuts (that all the core modules use) +but first we are going to build a module the very hard way. The reason we do this is because modules +written in any language OTHER than Python are going to have to do exactly this. We’ll show the easy +way later.

    So, here’s an example. You would never really need to build a module to set the system time, the ‘command’ module could already be used to do this. Though we’re going to make one.

    Reading the modules that come with ansible (linked above) is a great way to learn how to write @@ -224,7 +229,7 @@ you’ll turn to stone. Nobody ever executes async_wrapper directly.

    chmod +x ansible/hacking/test-module

    Let’s run the script you just wrote with that:

    -
    ansible/hacking/test-module ./time
    +
    ansible/hacking/test-module -m ./time

    You should see output that looks something like this:

    {u'time': u'2012-03-14 22:13:48.539183'}
    @@ -357,17 +362,50 @@ this, just have the module return a ansible_facts key, like so, alo
     A good idea might be make a module called ‘site_facts’ and always call it at the top of each playbook, though
     we’re always open to improving the selection of core facts in Ansible as well.

    -
    -

    Common Pitfalls

    -

    If writing a module in Python and you have managed nodes running -Python 2.4 or lower, this is generally a good idea, because -json isn’t in the Python standard library until 2.5.:

    -
    try:
    -    import json
    -except ImportError:
    -    import simplejson as json
    +
    +

    Common Module Boilerplate

    +

    As mentioned, if you are writing a module in Python, there are some very powerful shortcuts you can use. +Modules are still transferred as one file, but an arguments file is no longer needed, so these are not +only shorter in terms of code, they are actually FASTER in terms of execution time.

    +

    Rather than mention these here, the best way to learn is to read some of the source of the modules that come with Ansible.

    +

    The ‘group’ and ‘user’ modules are reasonably non-trival and showcase what this looks like.

    +

    Key parts include always ending the module file with:

    +
    # include magic from lib/ansible/module_common.py
    +#<<INCLUDE_ANSIBLE_MODULE_COMMON>>
    +main()
    +
    +
    +

    And instantiating the module class like:

    +
    module = AnsibleModule(
    +    argument_spec = dict(
    +        state     = dict(default='present', choices=['present', 'absent']),
    +        name      = dict(required=True),
    +        enabled   = dict(required=True, choices=BOOLEANS),
    +        something = dict(aliases=['whatever'])
    +    )
    +)
    +
    +
    +

    The AnsibleModule provides lots of common code for handling returns, parses your arguments +for you, and allows you to check inputs.

    +

    Successful returns are made like this:

    +
    module.exit_json(changed=True, something_else=12345)
     
    +

    And failures are just as simple (where ‘msg’ is a required parameter to explain the error):

    +
    module.exit_json(msg="Something fatal happened")
    +
    +
    +

    There are also other useful functions in the module class, such as module.md5(path). See +lib/ansible/module_common.py in the source checkout for implementation details.

    +

    Again, modules developed this way are best tested with the hacking/test-module script in the git +source checkout. Because of the magic involved, this is really the only way the scripts +can function outside of Ansible.

    +

    If submitting a module to ansible’s core code, which we encourage, use of the AnsibleModule +class is required.

    +
    +
    +

    Common Pitfalls

    You should also never do this in a module:

    print "some status message"
     
    @@ -383,17 +421,20 @@ will still be shown in Ansible, but the command will not succeed.

    Always use the hacking/test-module script when developing modules and it will warn you about these kind of things.

    -
    -

    Conventions

    +
    +

    Conventions/Recomendations

    As a reminder from the example code above, here are some basic conventions and guidelines:

      -
    • Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file.
    • -
    • Modules must be self contained in one file to be auto-transferred by ansible
    • -
    • If packaging modules in an RPM, they only need to be installed on the control machine and should be dropped into /usr/share/ansible. This is entirely optional.
    • -
    • Modules should return JSON or key=value results all on one line. JSON is best if you can do JSON. All return types must be hashes (dictionaries) although they can be nested.
    • -
    • In the event of failure, a key of ‘failed’ should be included, along with a string explanation in ‘msg’. Modules that raise tracebacks (stacktraces) are generally considered ‘poor’ modules, though Ansible can deal with these returns and will automatically convert anything unparseable into a failed result.
    • -
    • Return codes are actually not signficant, but continue on with 0=success and non-zero=failure for reasons of future proofing.
    • +
    • If the module is addressing an object, the parameter for that object should be called ‘name’ whenever possible, or accept ‘name’ as an alias.
    • +
    • If you have a company module that returns facts specific to your installations, a good name for this module is site_facts.
    • +
    • Modules accepting boolean status should generally accept ‘yes’, ‘no’, ‘true’, ‘false’, or anything else a user may likely throw at them. The AnsibleModule common code supports this with “choices=BOOLEANS” and a module.boolean(value) casting function.
    • +
    • Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file, and have the module raise JSON error messages when the import fails.
    • +
    • Modules must be self contained in one file to be auto-transferred by ansible.
    • +
    • If packaging modules in an RPM, they only need to be installed on the control machine and should be dropped into /usr/share/ansible. This is entirely optional and up to you.
    • +
    • Modules should return JSON or key=value results all on one line. JSON is best if you can do JSON. All return types must be hashes (dictionaries) although they can be nested. Lists or simple scalar values are not supported, though they can be trivially contained inside a dictionary.
    • +
    • In the event of failure, a key of ‘failed’ should be included, along with a string explanation in ‘msg’. Modules that raise tracebacks (stacktraces) are generally considered ‘poor’ modules, though Ansible can deal with these returns and will automatically convert anything unparseable into a failed result. If you are using the AnsibleModule common Python code, the ‘failed’ element will be included for you automatically when you call ‘fail_json’.
    • +
    • Return codes from modules are not actually not signficant, but continue on with 0=success and non-zero=failure for reasons of future proofing.
    • As results from many hosts will be aggregrated at once, modules should return only relevant output. Returning the entire contents of a log file is generally bad form.
    @@ -410,20 +451,20 @@ JSON is probably the simplest way to go.

    Sharing Your Module

    -

    If you think your module is generally useful to others, Ansible is preparing -an ‘ansible-contrib’ repo. Stop by the mailing list and we’ll help you to -get your module included. Contrib modules can be implemented in a variety -of languages. Including a README with your module is a good idea so folks -can understand what arguments it takes and so on. We would like to build -up as many of these as possible in as many languages as possible.

    +

    If you think your module is generally useful to others, a good place to share it +is in Ansible Resources <https://github.com/ansible/ansible-resources>. This is maintained +as a simple repo with pointers to other github projects.

    +

    Contrib modules here can be implemented in a variety of languages. +We would like to build up as many of these as possible in as many languages as possible.

    Ansible Mailing List

    Getting Your Module Into Core

    High-quality modules with minimal dependencies can be included in the core, but core modules (just due to the programming -preferences of the developers) will need to be implemented in Python. -Stop by the mailing list to inquire about requirements.

    +preferences of the developers) will need to be implemented in Python and use +the AnsibleModule common code, and should generally use consistent arguments with the rest of +the program. Stop by the mailing list to inquire about requirements.

    See also

    diff --git a/rst/moduledev.rst b/rst/moduledev.rst index 57f3c3a5f2f..71539f9bd9c 100644 --- a/rst/moduledev.rst +++ b/rst/moduledev.rst @@ -6,10 +6,9 @@ or by the `ansible` or `ansible-playbook` programs. Modules can be written in any language and are found in the path specified by `ANSIBLE_LIBRARY_PATH` or the ``--module-path`` command line option. - + Tutorial ```````` - Let's build a module to get and set the system time. For starters, let's build a module that just outputs the current time. @@ -17,6 +16,11 @@ We are going to use Python here but any language is possible. Only File I/O and out are required. So, bash, C++, clojure, Python, Ruby, whatever you want is fine. +Now Python Ansible modules contain some extremely powerful shortcuts (that all the core modules use) +but first we are going to build a module the very hard way. The reason we do this is because modules +written in any language OTHER than Python are going to have to do exactly this. We'll show the easy +way later. + So, here's an example. You would never really need to build a module to set the system time, the 'command' module could already be used to do this. Though we're going to make one. @@ -47,7 +51,7 @@ There's a useful test script in the source checkout for ansible:: Let's run the script you just wrote with that:: - ansible/hacking/test-module ./time + ansible/hacking/test-module -m ./time You should see output that looks something like this:: @@ -168,7 +172,6 @@ This should return something like:: {"changed": True, "time": "2012-03-14 12:23:00.000307"} - Module Provided 'Facts' ``````````````````````` @@ -192,17 +195,57 @@ These 'facts' will be available to all statements called after that module (but A good idea might be make a module called 'site_facts' and always call it at the top of each playbook, though we're always open to improving the selection of core facts in Ansible as well. -Common Pitfalls -``````````````` +Common Module Boilerplate +````````````````````````` + +As mentioned, if you are writing a module in Python, there are some very powerful shortcuts you can use. +Modules are still transferred as one file, but an arguments file is no longer needed, so these are not +only shorter in terms of code, they are actually FASTER in terms of execution time. + +Rather than mention these here, the best way to learn is to read some of the `source of the modules `_ that come with Ansible. + +The 'group' and 'user' modules are reasonably non-trival and showcase what this looks like. + +Key parts include always ending the module file with:: + + # include magic from lib/ansible/module_common.py + #<> + main() + +And instantiating the module class like:: + + module = AnsibleModule( + argument_spec = dict( + state = dict(default='present', choices=['present', 'absent']), + name = dict(required=True), + enabled = dict(required=True, choices=BOOLEANS), + something = dict(aliases=['whatever']) + ) + ) -If writing a module in Python and you have managed nodes running -Python 2.4 or lower, this is generally a good idea, because -json isn't in the Python standard library until 2.5.:: +The AnsibleModule provides lots of common code for handling returns, parses your arguments +for you, and allows you to check inputs. - try: - import json - except ImportError: - import simplejson as json +Successful returns are made like this:: + + module.exit_json(changed=True, something_else=12345) + +And failures are just as simple (where 'msg' is a required parameter to explain the error):: + + module.exit_json(msg="Something fatal happened") + +There are also other useful functions in the module class, such as module.md5(path). See +lib/ansible/module_common.py in the source checkout for implementation details. + +Again, modules developed this way are best tested with the hacking/test-module script in the git +source checkout. Because of the magic involved, this is really the only way the scripts +can function outside of Ansible. + +If submitting a module to ansible's core code, which we encourage, use of the AnsibleModule +class is required. + +Common Pitfalls +``````````````` You should also never do this in a module:: @@ -222,26 +265,31 @@ will still be shown in Ansible, but the command will not succeed. Always use the hacking/test-module script when developing modules and it will warn you about these kind of things. -Conventions -``````````` +Conventions/Recomendations +`````````````````````````` As a reminder from the example code above, here are some basic conventions and guidelines: -* Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file. +* If the module is addressing an object, the parameter for that object should be called 'name' whenever possible, or accept 'name' as an alias. -* Modules must be self contained in one file to be auto-transferred by ansible +* If you have a company module that returns facts specific to your installations, a good name for this module is `site_facts`. -* If packaging modules in an RPM, they only need to be installed on the control machine and should be dropped into /usr/share/ansible. This is entirely optional. +* Modules accepting boolean status should generally accept 'yes', 'no', 'true', 'false', or anything else a user may likely throw at them. The AnsibleModule common code supports this with "choices=BOOLEANS" and a module.boolean(value) casting function. -* Modules should return JSON or key=value results all on one line. JSON is best if you can do JSON. All return types must be hashes (dictionaries) although they can be nested. +* Include a minimum of dependencies if possible. If there are dependencies, document them at the top of the module file, and have the module raise JSON error messages when the import fails. -* In the event of failure, a key of 'failed' should be included, along with a string explanation in 'msg'. Modules that raise tracebacks (stacktraces) are generally considered 'poor' modules, though Ansible can deal with these returns and will automatically convert anything unparseable into a failed result. +* Modules must be self contained in one file to be auto-transferred by ansible. -* Return codes are actually not signficant, but continue on with 0=success and non-zero=failure for reasons of future proofing. +* If packaging modules in an RPM, they only need to be installed on the control machine and should be dropped into /usr/share/ansible. This is entirely optional and up to you. -* As results from many hosts will be aggregrated at once, modules should return only relevant output. Returning the entire contents of a log file is generally bad form. +* Modules should return JSON or key=value results all on one line. JSON is best if you can do JSON. All return types must be hashes (dictionaries) although they can be nested. Lists or simple scalar values are not supported, though they can be trivially contained inside a dictionary. + +* In the event of failure, a key of 'failed' should be included, along with a string explanation in 'msg'. Modules that raise tracebacks (stacktraces) are generally considered 'poor' modules, though Ansible can deal with these returns and will automatically convert anything unparseable into a failed result. If you are using the AnsibleModule common Python code, the 'failed' element will be included for you automatically when you call 'fail_json'. +* Return codes from modules are not actually not signficant, but continue on with 0=success and non-zero=failure for reasons of future proofing. + +* As results from many hosts will be aggregrated at once, modules should return only relevant output. Returning the entire contents of a log file is generally bad form. Shorthand Vs JSON ````````````````` @@ -260,12 +308,12 @@ JSON is probably the simplest way to go. Sharing Your Module ``````````````````` -If you think your module is generally useful to others, Ansible is preparing -an 'ansible-contrib' repo. Stop by the mailing list and we'll help you to -get your module included. Contrib modules can be implemented in a variety -of languages. Including a README with your module is a good idea so folks -can understand what arguments it takes and so on. We would like to build -up as many of these as possible in as many languages as possible. +If you think your module is generally useful to others, a good place to share it +is in `Ansible Resources `. This is maintained +as a simple repo with pointers to other github projects. + +Contrib modules here can be implemented in a variety of languages. +We would like to build up as many of these as possible in as many languages as possible. `Ansible Mailing List `_ @@ -274,8 +322,9 @@ Getting Your Module Into Core High-quality modules with minimal dependencies can be included in the core, but core modules (just due to the programming -preferences of the developers) will need to be implemented in Python. -Stop by the mailing list to inquire about requirements. +preferences of the developers) will need to be implemented in Python and use +the AnsibleModule common code, and should generally use consistent arguments with the rest of +the program. Stop by the mailing list to inquire about requirements. .. seealso:: diff --git a/searchindex.js b/searchindex.js index f2376395e8d..5f8397af3c3 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:0,vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5,4],rang:[3,6],render:6,wast:[],restrict:4,hook:6,instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,recent:5,kitchen:12,easi:[0,1,3,5,6,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],contrib:4,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,5,6,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[6,11],inquir:4,maximum:10,until:[10,4,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:10,anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,5,6,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,5,10],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:4,uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],claim:1,hostvar:10,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],mainli:[5,10],ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:11,name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:3,raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,5,6,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:[],destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],somevar:10,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:6,straighten:5,trick:7,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:[],kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,4,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,6,5,4,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,7,9,10],broken:1,fulli:[0,6],"throw":5,earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,5,6,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,2],faq:[3,5],fall:10,veri:[0,1,3,5,6,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[5,10],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,7,9,10,11],css:6,distro:9,resourc:[10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:5,idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,10,5,6],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,4,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:4,jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,5,6,7,9,10,11],yesterdai:3,built:[9,0,5,10,11],lower:[3,5,4],task:[3,1,5,7,10,11],older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,4,12],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:6,pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[4,6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:7,blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":2,cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:8,openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[9,10],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:7,rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[9,10],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:9,adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:5,owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],increas:10,ansible_ssh_port:[],enabl:6,organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,detail:[9,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[5,10,1,7],slight:9,importerror:4,usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],simplejson:[0,4,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,7],debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:6,straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file From 5d5231c4d07aff99a85459a58ee73cbea360fd7b Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 23:10:15 -0400 Subject: [PATCH 282/416] undocument service list=status, since that's gone now --- modules.html | 7 ------- rst/modules.rst | 4 ---- searchindex.js | 2 +- 3 files changed, 1 insertion(+), 12 deletions(-) diff --git a/modules.html b/modules.html index ecfe612f732..a4ba0702a77 100644 --- a/modules.html +++ b/modules.html @@ -1110,13 +1110,6 @@ idempotent actions that will not run commands unless neccessary.
    - - - - -
      Whether the service should start on boot. Either ‘yes’ or ‘no’.
    listno when used as ‘list=status’, returns the status of the service along with -other results. Primarily useful for /usr/bin/ansible or playbooks with -–verbose.

    Example action from Ansible Playbooks:

    diff --git a/rst/modules.rst b/rst/modules.rst index eb65f52c973..e32f5d0e4de 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -588,10 +588,6 @@ Controls services on remote machines. +--------------------+----------+---------+----------------------------------------------------------------------------+ | enabled | no | | Whether the service should start on boot. Either 'yes' or 'no'. | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| list | no | | when used as 'list=status', returns the status of the service along with | -| | | | other results. Primarily useful for /usr/bin/ansible or playbooks with | -| | | | --verbose. | -+--------------------+----------+---------+----------------------------------------------------------------------------+ Example action from Ansible :doc:`playbooks`:: diff --git a/searchindex.js b/searchindex.js index 5f8397af3c3..d85b191c8ed 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:6,unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,6,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,6,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:6,straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:6,unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5],rang:[3,6],render:6,wast:[],restrict:4,hook:6,instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[4,10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:[10,4],anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,fail_json:4,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:6,straighten:5,trick:7,cast:4,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,5,6,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,fulli:[0,6],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,longer:4,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],mainli:[5,10],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],fall:10,veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,12],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:[],pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":[4,2],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[4,10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,detail:[9,4,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file From 30f42b97357e3070b5f032220e001deadf086ead Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 23:19:41 -0400 Subject: [PATCH 283/416] Module docs cleanup + rebuild --- modules.html | 113 ++++++++++++++++++++++++++++++++++++------------ rst/modules.rst | 71 +++++++++++++++++------------- searchindex.js | 2 +- 3 files changed, 126 insertions(+), 60 deletions(-) diff --git a/modules.html b/modules.html index a4ba0702a77..42ce7ceb171 100644 --- a/modules.html +++ b/modules.html @@ -226,10 +226,9 @@ command/shell modules simply take the string of the command you want to run.

    command line or playbooks, you don’t really need to know much about that. If you’re writing your own module, you care, and this means you do not have to write modules in any particular language – you get to choose.

    -

    Most modules other than command are idempotent, meaning they will seek -to avoid changes to the system unless a change needs to be made. When using Ansible -playbooks, these modules can trigger ‘change events’. Unless otherwise -noted, any given module does support change hooks.

    +

    Modules are idempotent, meaning they will seek to avoid changes to the system unless a change needs to be made. When using Ansible +playbooks, these modules can trigger ‘change events’ in the form of notifying ‘handlers’ +to run additional tasks.

    Let’s see what’s available in the Ansible module library, out of the box:

    apt

    @@ -384,24 +383,52 @@ together to produce a destination file. Files are assembled in string sorting o

    command

    The command module takes the command name followed by a list of arguments, space delimited.

    -

    If you want to run a command through the shell (say you are using -‘<’, ‘>’, ‘|’, etc), you actually want the ‘shell’ module instead. -The ‘command’ module is much more secure as it’s not affected by the user’s environment.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    (free form)N/AN/Athe command module takes a free form command to run
    createsno a filename, when it already exists, this step will NOT be run
    chdirno cd into this directory before running the command (0.6 and later)

    The given command will be executed on all selected nodes. It will not be processed through the shell, so variables like “$HOME” and operations like “<”, “>”, “|”, and “&” will not work. As such, all paths to commands must be fully qualified.

    -

    This module does not support change hooks and returns the return code -from the program as well as timing information about how long the -command was running.

    +

    NOTE:: If you want to run a command through the shell (say you are using +‘<’, ‘>’, ‘|’, etc), you actually want the ‘shell’ module instead. +The ‘command’ module is much more secure as it’s not affected by the user’s environment.

    Example action from Ansible Playbooks:

    command /sbin/shutdown -t now
    -

    If you only want to run a command if a certain file does not exist, you can do the -following:

    +

    creates and chdir can be specified after the command. For instance, if you only want to run a command if a certain file does not exist, you can do the following:

    command /usr/bin/make_database.sh arg1 arg2 creates=/path/to/database
    -

    The creates= option will not be passed to the executable.

    +

    The creates= and chdir options will not be passed to the actual executable.

    copy

    @@ -441,7 +468,6 @@ relative. -

    This module also returns md5sum and other information about the resultant file.

    Example action from Ansible Playbooks:

    copy src=/srv/myfiles/foo.conf dest=/etc/foo.conf owner=foo group=foo mode=0644
    @@ -451,10 +477,11 @@ relative.

    Runs the discovery program ‘facter’ on the remote system, returning JSON data that can be useful for inventory purposes.

    Requires that ‘facter’ and ‘ruby-json’ be installed on the remote end.

    -

    This module is informative only - it takes no parameters & does not -support change hooks, nor does it make any changes on the system. -Playbooks do not actually use this module, they use the setup +

    Playbooks do not actually use this module, they use the setup module behind the scenes.

    +

    Example from /usr/bin/ansible:

    +
    ansible foo.example.org -m ohai
    +

    fetch

    @@ -922,18 +949,19 @@ configured in fstab. ‘absent’, and ‘present’ only deal

    Similar to the facter module, this returns JSON inventory data. Ohai data is a bit more verbose and nested than facter.

    Requires that ‘ohai’ be installed on the remote end.

    -

    This module is information only - it takes no parameters & does not -support change hooks, nor does it make any changes on the system.

    Playbooks should not call the ohai module, playbooks call the setup module behind the scenes instead.

    +

    Example:

    +
    ansible foo.example.org -m ohai
    +

    ping

    -

    A trivial test module, this module always returns the integer 1 on -successful contact.

    -

    This module does not support change hooks and is informative only - it -takes no parameters & does not support change hooks, nor does it make -any changes on the system.

    +

    A trivial test module, this module always returns ‘pong’ on +successful contact. It does not make sense in playbooks, but is useful +from /usr/bin/ansible:

    +
    ansible webservers -m ping
    +

    postgresql_db

    @@ -1206,15 +1234,44 @@ on your remote systems.

    The shell module takes the command name followed by a list of arguments, space delimited. It is almost exactly like the command module but runs the command through the user’s configured shell on the remote node.

    + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    parameterrequireddefaultcomments
    (free form)N/AN/Athe command module takes a free form command to run
    createsno a filename, when it already exists, this step will NOT be run
    chdirno cd into this directory before running the command (0.6 and later)

    The given command will be executed on all selected nodes.

    -

    If you want to execute a command securely and predicably, it may +

    NOTE:: If you want to execute a command securely and predicably, it may be better to use the ‘command’ module instead. Best practices when writing playbooks will follow the trend of using ‘command’ unless ‘shell’ is explicitly required. When running ad-hoc commands, use your best judgement.

    -

    This module does not support change hooks and returns the return code -from the program as well as timing information about how long the -command was running.

    Example action from a playbook:

    shell somescript.sh >> somelog.txt
    diff --git a/rst/modules.rst b/rst/modules.rst index e32f5d0e4de..6370ebc9abc 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -27,10 +27,9 @@ command line or playbooks, you don't really need to know much about that. If you're writing your own module, you care, and this means you do not have to write modules in any particular language -- you get to choose. -Most modules other than command are `idempotent`, meaning they will seek -to avoid changes to the system unless a change needs to be made. When using Ansible -playbooks, these modules can trigger 'change events'. Unless otherwise -noted, any given module does support change hooks. +Modules are `idempotent`, meaning they will seek to avoid changes to the system unless a change needs to be made. When using Ansible +playbooks, these modules can trigger 'change events' in the form of notifying 'handlers' +to run additional tasks. Let's see what's available in the Ansible module library, out of the box: @@ -127,29 +126,34 @@ command The command module takes the command name followed by a list of arguments, space delimited. -If you want to run a command through the shell (say you are using -'<', '>', '|', etc), you actually want the 'shell' module instead. -The 'command' module is much more secure as it's not affected by the user's environment. ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| parameter | required | default | comments | ++====================+==========+=========+============================================================================+ +| (free form) | N/A | N/A | the command module takes a free form command to run | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| creates | no | | a filename, when it already exists, this step will NOT be run | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| chdir | no | | cd into this directory before running the command (0.6 and later) | ++--------------------+----------+---------+----------------------------------------------------------------------------+ The given command will be executed on all selected nodes. It will not be processed through the shell, so variables like "$HOME" and operations like "<", ">", "|", and "&" will not work. As such, all paths to commands must be fully qualified. -This module does not support change hooks and returns the return code -from the program as well as timing information about how long the -command was running. +NOTE:: If you want to run a command through the shell (say you are using +'<', '>', '|', etc), you actually want the 'shell' module instead. +The 'command' module is much more secure as it's not affected by the user's environment. Example action from Ansible :doc:`playbooks`:: command /sbin/shutdown -t now -If you only want to run a command if a certain file does not exist, you can do the -following:: +creates and chdir can be specified after the command. For instance, if you only want to run a command if a certain file does not exist, you can do the following:: command /usr/bin/make_database.sh arg1 arg2 creates=/path/to/database -The `creates=` option will not be passed to the executable. +The `creates=` and `chdir` options will not be passed to the actual executable. .. _copy: @@ -172,8 +176,6 @@ module. | OTHERS | | | All arguments the file module takes are also supported | +--------------------+----------+---------+----------------------------------------------------------------------------+ -This module also returns md5sum and other information about the resultant file. - Example action from Ansible :doc:`playbooks`:: copy src=/srv/myfiles/foo.conf dest=/etc/foo.conf owner=foo group=foo mode=0644 @@ -189,10 +191,12 @@ JSON data that can be useful for inventory purposes. Requires that 'facter' and 'ruby-json' be installed on the remote end. -This module is informative only - it takes no parameters & does not -support change hooks, nor does it make any changes on the system. Playbooks do not actually use this module, they use the :ref:`setup` module behind the scenes. + +Example from /usr/bin/ansible:: + + ansible foo.example.org -m ohai .. _fetch: @@ -452,24 +456,23 @@ Ohai data is a bit more verbose and nested than facter. Requires that 'ohai' be installed on the remote end. -This module is information only - it takes no parameters & does not -support change hooks, nor does it make any changes on the system. - Playbooks should not call the ohai module, playbooks call the :ref:`setup` module behind the scenes instead. +Example:: + + ansible foo.example.org -m ohai + .. _ping: ping ```` -A trivial test module, this module always returns the integer ``1`` on -successful contact. - -This module does not support change hooks and is informative only - it -takes no parameters & does not support change hooks, nor does it make -any changes on the system. +A trivial test module, this module always returns 'pong' on +successful contact. It does not make sense in playbooks, but is useful +from /usr/bin/ansible:: + ansible webservers -m ping .. postgresql_db: @@ -697,18 +700,24 @@ The shell module takes the command name followed by a list of arguments, space delimited. It is almost exactly like the command module but runs the command through the user's configured shell on the remote node. ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| parameter | required | default | comments | ++====================+==========+=========+============================================================================+ +| (free form) | N/A | N/A | the command module takes a free form command to run | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| creates | no | | a filename, when it already exists, this step will NOT be run | ++--------------------+----------+---------+----------------------------------------------------------------------------+ +| chdir | no | | cd into this directory before running the command (0.6 and later) | ++--------------------+----------+---------+----------------------------------------------------------------------------+ + The given command will be executed on all selected nodes. -If you want to execute a command securely and predicably, it may +NOTE:: If you want to execute a command securely and predicably, it may be better to use the 'command' module instead. Best practices when writing playbooks will follow the trend of using 'command' unless 'shell' is explicitly required. When running ad-hoc commands, use your best judgement. -This module does not support change hooks and returns the return code -from the program as well as timing information about how long the -command was running. - Example action from a playbook:: shell somescript.sh >> somelog.txt diff --git a/searchindex.js b/searchindex.js index d85b191c8ed..721ce789d17 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[9,0,5,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5],rang:[3,6],render:6,wast:[],restrict:4,hook:6,instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,6,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[10,4,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[4,10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:[10,4],anywher:[],ignor:[4,7],time:[0,1,2,6,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,fail_json:4,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[5,6,7,9,10,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:6,straighten:5,trick:7,cast:4,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:6,server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,5,6,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,fulli:[0,6],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,longer:4,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],mainli:[5,10],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],fall:10,veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[11,5,4,1,7],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,6,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,12],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:[],pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,6,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":[4,2],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[4,10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,9,10,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,detail:[9,4,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:6,password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[4,10,6],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:10,ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,contrib:4,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],wrap:1,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file From 6dd26386af4249f4c1914895544504fbd31e380d Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 23:30:01 -0400 Subject: [PATCH 284/416] update docs readme --- README | 1 - README.md | 22 ++++++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) delete mode 100644 README create mode 100644 README.md diff --git a/README b/README deleted file mode 100644 index 71b96db787b..00000000000 --- a/README +++ /dev/null @@ -1 +0,0 @@ -Github pages documentation for the ansible project diff --git a/README.md b/README.md new file mode 100644 index 00000000000..8a6db043d80 --- /dev/null +++ b/README.md @@ -0,0 +1,22 @@ +Homepage and documentation source for the Ansible +================================================= + +This project hosts the source behind [ansible.github.com](http://ansible.github.com) + +Contributions to the documentation are welcome. To make changes, submit a pull request +that changes the restructured text files in the "rst/" directory only, and Michael can +do a docs build and push the static files. + +If you do not want to learn RST format (ReStructured Text), you can also file issues +on the documentation project. + +If you are using ansible at your company or software project, additions to the "Who Uses +Ansible" page are welcome. Email Michael at the address below to be added. + +Author +====== + +Michael DeHaan -- michael.dehaan@gmail.com + +[http://michaeldehaan.net](http://michaeldehaan.net/) + From dde93ae55a0d7c5c3e047362db360001d60c3790 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 1 Aug 2012 00:50:16 -0400 Subject: [PATCH 285/416] fixup service docs --- rst/modules.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rst/modules.rst b/rst/modules.rst index 6370ebc9abc..1672feec2dd 100644 --- a/rst/modules.rst +++ b/rst/modules.rst @@ -50,7 +50,7 @@ Manages apt-packages (such as for Debian/Ubuntu). | update_cache | no | no | Run the equivalent of apt-get update before the operation. | | | | | Can be run as part of the package installation or a seperate step | +--------------------+----------+---------+----------------------------------------------------------------------------+ -| purge | no | no | Will forge purge of configuration files if state is set to 'removed'. | +| purge | no | no | Will forge purge of configuration files if state is set to 'absent'. | +--------------------+----------+---------+----------------------------------------------------------------------------+ | default_release | no | | Corresponds to the -t option for apt and sets pin priorities | +--------------------+----------+---------+----------------------------------------------------------------------------+ From 47629a455c185fe28fc45d77b8b87f1d9637b663 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 1 Aug 2012 00:50:35 -0400 Subject: [PATCH 286/416] rebuild --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 2 +- moduledev.html | 2 +- modules.html | 4 ++-- patterns.html | 2 +- playbooks.html | 2 +- playbooks2.html | 2 +- search.html | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 2 +- 16 files changed, 17 insertions(+), 17 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index e44ea11d1d1..2057c18119e 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -289,7 +289,7 @@ languages:

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/api.html b/api.html index 3df546eb35d..21bd10eff5c 100644 --- a/api.html +++ b/api.html @@ -465,7 +465,7 @@ e.g.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index d002d627948..e14aa67f358 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -311,7 +311,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/examples.html b/examples.html index dc0db169978..d9f9625f218 100644 --- a/examples.html +++ b/examples.html @@ -396,7 +396,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/faq.html b/faq.html index 0dbd76f9537..8ed831a9778 100644 --- a/faq.html +++ b/faq.html @@ -403,7 +403,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/genindex.html b/genindex.html index 0c99a1360ca..397cd309d0c 100644 --- a/genindex.html +++ b/genindex.html @@ -204,7 +204,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/gettingstarted.html b/gettingstarted.html index 6c848d921fd..5d3663f7c42 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -391,7 +391,7 @@ explore, but you already have a fully working infrastructure!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    diff --git a/index.html b/index.html index f27716d4107..30d95ca1a20 100644 --- a/index.html +++ b/index.html @@ -410,7 +410,7 @@ Puppet Labs, and is now with

    © Copyright 2012 Michael DeHaan.
    - Last updated on Jul 31, 2012.
    + Last updated on Aug 01, 2012.

    From 717884b61a517c7427aa5c09721f53159d81f29e Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 1 Aug 2012 00:52:48 -0400 Subject: [PATCH 287/416] amend best practices --- rst/bestpractices.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst index 970e58dca5d..070601dd16f 100644 --- a/rst/bestpractices.rst +++ b/rst/bestpractices.rst @@ -3,6 +3,13 @@ Best Practices Here are some tips for making the most of Ansible. +Always Mention State +++++++++++++++++++++ + +The 'state' parameter is optional to a lot of modules. Whether state=present or state=absent, it's always +best to leave that parameter in your playbooks to make it clear, especially as some modules support additional +states. + Group By Roles ++++++++++++++ From 157bdbbd7341818793e2504b3e079db5c71b19db Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 1 Aug 2012 20:44:34 -0400 Subject: [PATCH 288/416] slight tweak to 'who uses' --- bestpractices.html | 7 +++++++ rst/who_uses_ansible.rst | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/bestpractices.html b/bestpractices.html index e14aa67f358..18d034bd1d9 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -149,6 +149,7 @@ s.parentNode.insertBefore(ga, s); class="dropdown-toggle">Page
    • Best Practices
        +
      • Always Mention State
      • Group By Roles
      • Directory Organization
      • Bundling Ansible Modules With Playbooks
      • @@ -183,6 +184,12 @@ s.parentNode.insertBefore(ga, s);

        Best Practices

        Here are some tips for making the most of Ansible.

        +
        +

        Always Mention State

        +

        The ‘state’ parameter is optional to a lot of modules. Whether state=present or state=absent, it’s always +best to leave that parameter in your playbooks to make it clear, especially as some modules support additional +states.

        +

        Group By Roles

        A system can be in multiple groups. See Inventory & Patterns. Having groups named after things like diff --git a/rst/who_uses_ansible.rst b/rst/who_uses_ansible.rst index dc08c308829..b5816840a34 100644 --- a/rst/who_uses_ansible.rst +++ b/rst/who_uses_ansible.rst @@ -1,7 +1,7 @@ Who Uses Ansible ================ -Ansible is used by all sorts of organizations from hosted web applications, media companies, consultancies, and ISVs. Some of these include: +Ansible is used by all sorts of organizations from hosted web applications, media companies, universities, consultancies, and ISVs -- all over the world. Some of these users include: ================================================== =================================================== Who They Are What They Do diff --git a/searchindex.js b/searchindex.js index 398910972b2..d0639db7750 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5],rang:[3,6],render:6,wast:[],restrict:4,hook:[],instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:9,reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],contrib:4,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,6],check:[4,10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:[10,4],anywher:[],ignor:[4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,fail_json:4,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],wrap:1,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],likes_emac:2,subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,5,6,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,fulli:[0,6],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,longer:4,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],mainli:[5,10],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],fall:10,veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,12],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:[],pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":[4,2],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[4,10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,detail:[9,4,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,univers:12,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10,1],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,1,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],clear:1,cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,1,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[1,6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[1,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6,1],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 7837e5207c5..12d7e2bfadc 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -175,7 +175,7 @@ s.parentNode.insertBefore(ga, s);

        Who Uses Ansible

        -

        Ansible is used by all sorts of organizations from hosted web applications, media companies, consultancies, and ISVs. Some of these include:

        +

        Ansible is used by all sorts of organizations from hosted web applications, media companies, universities, consultancies, and ISVs – all over the world. Some of these users include:

        From 71d7f1acf9a4c35f5cf0a03d7dd72685c4cde69d Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 1 Aug 2012 21:03:14 -0400 Subject: [PATCH 289/416] add naming info to FAQ --- faq.html | 6 ++++++ rst/faq.rst | 6 ++++++ searchindex.js | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/faq.html b/faq.html index 8ed831a9778..c1819565a47 100644 --- a/faq.html +++ b/faq.html @@ -149,6 +149,7 @@ s.parentNode.insertBefore(ga, s); class="dropdown-toggle">Page
        • FAQ
            +
          • Why Is It Called Ansible?
          • What inspired Ansible?
          • Comparisons
            • vs Func?
            • @@ -193,6 +194,11 @@ s.parentNode.insertBefore(ga, s);

              FAQ

              +
              +

              Why Is It Called Ansible?

              +

              One of my favorite books is Orson Scott Card’s “Ender’s Game”. In the book, the Ansible is a method of instantaneous +long distance “hyperspace” communication with a large number of space ships. You should read it!

              +

              What inspired Ansible?

              Back when I worked for Red Hat and working on Cobbler, several of us identified a gap between diff --git a/rst/faq.rst b/rst/faq.rst index cb6219eb48f..d6a300a9f67 100644 --- a/rst/faq.rst +++ b/rst/faq.rst @@ -1,6 +1,12 @@ FAQ === +Why Is It Called Ansible? +------------------------- + +One of my favorite books is Orson Scott Card's "Ender's Game". In the book, the Ansible is a method of instantaneous +long distance "hyperspace" communication with a large number of space ships. You should read it! + What inspired Ansible? ---------------------- diff --git a/searchindex.js b/searchindex.js index d0639db7750..bed861f808f 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,5,4,7,9,10],fail:[9,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],prove:10,is_cento:10,univers:12,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,9,10,11],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,grant:6,especi:[3,5,10,1],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,4,9,11],dark:9,world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:9,movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,1,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],clear:1,cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],minim:[0,4],belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:3,quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],cron:[5,10],download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,1,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,hassl:3,rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:10,deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[1,6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[1,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],"var":[8,10,6,1,7],individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,eat:11,count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6,1],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,exit_json:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5],rang:[3,6],render:6,wast:[],restrict:4,hook:[],instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:[9,5],reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,5,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,5,6],check:[4,10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:[10,4],anywher:[],ignor:[4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,fail_json:4,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],hyperspac:5,prove:10,is_cento:10,univers:12,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ender:5,ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],likes_emac:2,subnet:9,shown:4,space:[3,5,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[1,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,card:5,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,especi:[3,5,10,1],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,through:[0,6,11,3],where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,5,4,9,11],dark:9,world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,5,6,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,fulli:[0,6],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,other:[0,1,2,3,4,5,6,7,8,9,10,11,12],effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,longer:4,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],mainli:[5,10],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],fall:10,veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],instantan:5,prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,scott:5,hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,1,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,clear:1,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],grant:6,belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,12],judgement:6,nginx:6,game:[3,5],quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:[],pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":[4,2],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],orson:5,lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,1,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[4,10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:[5,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[1,6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],minim:[0,4],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,distanc:5,paus:6,less:[0,5,3],additon:0,detail:[9,4,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6,1],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],book:5,futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file From ce2cdc22c4f0a35e0f5d03860854bd88e170482a Mon Sep 17 00:00:00 2001 From: Lorin Hochstein Date: Wed, 1 Aug 2012 22:50:03 -0400 Subject: [PATCH 290/416] 'tasks' should not be preceded by '-' in examples --- rst/playbooks.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rst/playbooks.rst b/rst/playbooks.rst index 4ffbf653371..973611cac24 100644 --- a/rst/playbooks.rst +++ b/rst/playbooks.rst @@ -263,15 +263,15 @@ An include file simply contains a flat list of tasks, like so:: Include directives look like this:: - - tasks: - - include: tasks/foo.yml + tasks: + - include: tasks/foo.yml You can also pass variables into includes directly. We might call this a 'parameterized include'. For instance, if deploying multiple wordpress instances, I could contain all of my wordpress tasks in a single wordpress.yml file, and use it like so:: - - tasks: + tasks: - include: wordpress.yml user=timmy - include: wordpress.yml user=alice - include: wordpress.yml user=bob From fa6aa5ef98cbce42d8a84472c35fa8e29810cfba Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Thu, 2 Aug 2012 22:08:00 -0400 Subject: [PATCH 291/416] Added info about ignore_errors: True and added a user to the who uses page --- YAMLSyntax.html | 2 +- api.html | 2 +- bestpractices.html | 2 +- examples.html | 2 +- faq.html | 2 +- genindex.html | 2 +- gettingstarted.html | 2 +- index.html | 2 +- moduledev.html | 2 +- modules.html | 2 +- patterns.html | 2 +- playbooks.html | 8 +++---- playbooks2.html | 46 +++++++++++++++++++++++----------------- rst/playbooks2.rst | 38 +++++++++++++++++++++------------ rst/who_uses_ansible.rst | 25 +++++++++++----------- search.html | 2 +- searchindex.js | 2 +- who_uses_ansible.html | 15 +++++++------ 18 files changed, 90 insertions(+), 68 deletions(-) diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 2057c18119e..315ca49320c 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -289,7 +289,7 @@ languages:

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/api.html b/api.html index 21bd10eff5c..328777529fb 100644 --- a/api.html +++ b/api.html @@ -465,7 +465,7 @@ e.g.

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/bestpractices.html b/bestpractices.html index 18d034bd1d9..4cb5d5bc693 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -318,7 +318,7 @@ This way you have an audit trail describing when and why you changed the rules a

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/examples.html b/examples.html index d9f9625f218..bbe51a3b0c3 100644 --- a/examples.html +++ b/examples.html @@ -396,7 +396,7 @@ a simplified syntax for this.

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/faq.html b/faq.html index c1819565a47..e3891e11249 100644 --- a/faq.html +++ b/faq.html @@ -409,7 +409,7 @@ tasks – whether for a QA sytem, build system, or anything you can think of

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/genindex.html b/genindex.html index 397cd309d0c..af64d845845 100644 --- a/genindex.html +++ b/genindex.html @@ -204,7 +204,7 @@ s.parentNode.insertBefore(ga, s);

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/gettingstarted.html b/gettingstarted.html index 5d3663f7c42..8752f359c88 100644 --- a/gettingstarted.html +++ b/gettingstarted.html @@ -391,7 +391,7 @@ explore, but you already have a fully working infrastructure!

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/index.html b/index.html index 30d95ca1a20..10bcf8d787c 100644 --- a/index.html +++ b/index.html @@ -410,7 +410,7 @@ Puppet Labs, and is now with
              - tasks:
              -   - include: tasks/foo.yml
              +
              tasks:
              + - include: tasks/foo.yml

              You can also pass variables into includes. We call this a ‘parameterized include’.

              For instance, if deploying multiple wordpress instances, I could contain all of my wordpress tasks in a single wordpress.yml file, and use it like so:

              -

              This concept works great with tags to rapidly select exactly what plays you want to run, and exactly what parts of those plays.

              + +
              +

              Ignoring Failed Commands

              +

              (New in 0.6) Generally playbooks will stop executing any more steps on a host that has a failure. +Sometimes, though, you want to continue on. To do so, write a task that looks like this:

              +
              - name: this will not be counted as a failure
              +  action: command /bin/false
              +  ignore_errors: True
              +
              +
              -

              Accessing Complex Variable Data

              +

              Accessing Complex Variable Data

              Some provided facts, like networking information, are made available as nested data structures. To access them a simple ‘$foo’ is not sufficient, but it is still easy to do. Here’s how we get an IP address:

              ${ansible_eth0.ipv4.address}
              @@ -250,7 +259,7 @@ that is preferred:

              -

              Accessing Information About Other Hosts

              +

              Accessing Information About Other Hosts

              If your database server wants to check the value of a ‘fact’ from another node, or an inventory variable assigned to another node, it’s easy to do so within a template or even an action line:

              ${hostvars.hostname.factname}
              @@ -276,7 +285,7 @@ period.

              Don’t worry about any of this unless you think you need it. You’ll know when you do.

              -

              Variable File Seperation

              +

              Variable File Seperation

              It’s a great idea to keep your playbooks under source control, but you may wish to make the playbook source public while keeping certain important variables private. Similarly, sometimes you may just @@ -305,7 +314,7 @@ password: magic

              NOTE: It’s also possible to keep per-host and per-group variables in very similar files, this is covered in Inventory & Patterns.

              -

              Prompting For Sensitive Data

              +

              Prompting For Sensitive Data

              You may wish to prompt the user for certain input, and can do so with the similarly named ‘vars_prompt’ section. This has uses beyond security, for instance, you may use the same playbook for all @@ -334,7 +343,7 @@ some other options, but otherwise works equivalently:

              -

              Passing Variables On The Command Line

              +

              Passing Variables On The Command Line

              In addition to vars_prompt and vars_files, it is possible to send variables over the ansible command line. This is particularly useful when writing a generic release playbook where you may want to pass in the version of the application to deploy:

              @@ -352,7 +361,7 @@ ansible-playbook release.yml --extra-vars "hosts=vipers user=starbuck"
              -

              Conditional Execution

              +

              Conditional Execution

              Sometimes you will want to skip a particular step on a particular host. This could be something as simple as not installing a certain package if the operating system is a particular version, or it could be something like performing some cleanup steps if a filesystem is getting full.

              @@ -387,7 +396,7 @@ there will be accessible to future tasks:

              -

              Conditional Imports

              +

              Conditional Imports

              Sometimes you will want to do certain things differently in a playbook based on certain criteria. Having one playbook that works on multiple platforms and OS versions is a good example.

              As an example, the name of the Apache package may be different between CentOS and Debian, @@ -430,7 +439,7 @@ in more streamlined & auditable configuration rules – especially becau minimum of decision points to track.

              -

              Loop Shorthand

              +

              Loop Shorthand

              To save some typing, repeated tasks can be written in short-hand like so:

              - name: add user $item
                 action: user name=$item state=present groups=wheel
              @@ -451,7 +460,7 @@ minimum of decision points to track.

              manager transactions.

              -

              Selecting Files And Templates Based On Variables

              +

              Selecting Files And Templates Based On Variables

              Sometimes a configuration file you want to copy, or a template you will use may depend on a variable. The following construct selects the first available file appropriate for the variables of a given host, which is often much cleaner than putting a lot of if conditionals in a template.

              @@ -465,7 +474,7 @@ CentOS and Debian:

              -

              Asynchronous Actions and Polling

              +

              Asynchronous Actions and Polling

              By default tasks in playbooks block, meaning the connections stay open until the task is done on each node. If executing playbooks with a small parallelism value (aka --forks), you may wish that long @@ -515,7 +524,7 @@ tasks even faster. This also increases the efficiency of polling.

              -

              Local Playbooks

              +

              Local Playbooks

              It may be useful to use a playbook locally, rather than by connecting over SSH. This can be useful for assuring the configuration of a system by putting a playbook on a crontab. This may also be used to run a playbook inside a OS installer, such as an Anaconda kickstart.

              @@ -529,7 +538,7 @@ connection: local
              -

              Turning Off Facts

              +

              Turning Off Facts

              If you know you don’t need any fact data about your hosts, and know everything about your systems centrally, you can turn off fact gathering. This has advantages in scaling ansible in push mode with very large numbers of systems, mainly, or if you are using Ansible on experimental platforms. In any play, just do this:

              @@ -538,7 +547,7 @@ systems, mainly, or if you are using Ansible on experimental platforms. In any
              -

              Pull-Mode Playbooks

              +

              Pull-Mode Playbooks

              The use of playbooks in local mode (above) is made extremely powerful with the addition of ansible-pull. A script for setting up ansible-pull is provided in the examples/playbooks directory of the source checkout.

              @@ -550,7 +559,7 @@ the cron frequency, logging locations, and parameters to ansible-pull.

              logs from ansible-pull runs would be an excellent way to gather and analyze remote logs from ansible-pull.

              -

              Style Points

              +

              Style Points

              Ansible playbooks are colorized. If you do not like this, set the ANSIBLE_NOCOLOR=1 environment variable.

              Ansible playbooks also look more impressive with cowsay installed, and we encourage installing this package.

              @@ -576,7 +585,6 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo
              -
              @@ -606,7 +614,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/rst/playbooks2.rst b/rst/playbooks2.rst index d95f21ba111..f0c5b47b9b4 100644 --- a/rst/playbooks2.rst +++ b/rst/playbooks2.rst @@ -46,8 +46,18 @@ reconfigure all of your systems like this:: This concept works great with tags to rapidly select exactly what plays you want to run, and exactly what parts of those plays. +Ignoring Failed Commands +```````````````````````` + +(New in 0.6) Generally playbooks will stop executing any more steps on a host that has a failure. +Sometimes, though, you want to continue on. To do so, write a task that looks like this:: + + - name: this will not be counted as a failure + action: command /bin/false + ignore_errors: True + Accessing Complex Variable Data -+++++++++++++++++++++++++++++++ +``````````````````````````````` Some provided facts, like networking information, are made available as nested data structures. To access them a simple '$foo' is not sufficient, but it is still easy to do. Here's how we get an IP address:: @@ -66,7 +76,7 @@ that is preferred:: {{ ansible_eth0["ipv4"]["address"] }} Accessing Information About Other Hosts -+++++++++++++++++++++++++++++++++++++++ +``````````````````````````````````````` If your database server wants to check the value of a 'fact' from another node, or an inventory variable assigned to another node, it's easy to do so within a template or even an action line:: @@ -99,7 +109,7 @@ period. Don't worry about any of this unless you think you need it. You'll know when you do. Variable File Seperation -++++++++++++++++++++++++ +```````````````````````` It's a great idea to keep your playbooks under source control, but you may wish to make the playbook source public while keeping certain @@ -133,7 +143,7 @@ The contents of each variables file is a simple YAML dictionary, like this:: NOTE: It's also possible to keep per-host and per-group variables in very similar files, this is covered in :ref:`patterns`. Prompting For Sensitive Data -++++++++++++++++++++++++++++ +```````````````````````````` You may wish to prompt the user for certain input, and can do so with the similarly named 'vars_prompt' section. This has uses @@ -166,7 +176,7 @@ some other options, but otherwise works equivalently:: Passing Variables On The Command Line -+++++++++++++++++++++++++++++++++++++ +````````````````````````````````````` In addition to `vars_prompt` and `vars_files`, it is possible to send variables over the ansible command line. This is particularly useful when writing a generic release playbook @@ -187,7 +197,7 @@ Example:: ansible-playbook release.yml --extra-vars "hosts=vipers user=starbuck" Conditional Execution -+++++++++++++++++++++ +````````````````````` Sometimes you will want to skip a particular step on a particular host. This could be something as simple as not installing a certain package if the operating system is a particular version, @@ -228,7 +238,7 @@ there will be accessible to future tasks:: - action: command echo ${my_custom_fact_can_be_used_now} Conditional Imports -+++++++++++++++++++ +``````````````````` Sometimes you will want to do certain things differently in a playbook based on certain criteria. Having one playbook that works on multiple platforms and OS versions is a good example. @@ -278,7 +288,7 @@ in more streamlined & auditable configuration rules -- especially because there minimum of decision points to track. Loop Shorthand -++++++++++++++ +`````````````` To save some typing, repeated tasks can be written in short-hand like so:: @@ -304,7 +314,7 @@ manager transactions. Selecting Files And Templates Based On Variables -++++++++++++++++++++++++++++++++++++++++++++++++ +```````````````````````````````````````````````` Sometimes a configuration file you want to copy, or a template you will use may depend on a variable. The following construct selects the first available file appropriate for the variables of a given host, @@ -321,7 +331,7 @@ CentOS and Debian:: Asynchronous Actions and Polling -++++++++++++++++++++++++++++++++ +```````````````````````````````` By default tasks in playbooks block, meaning the connections stay open until the task is done on each node. If executing playbooks with @@ -372,7 +382,7 @@ Alternatively, if you do not need to wait on the task to complete, you may tasks even faster. This also increases the efficiency of polling. Local Playbooks -+++++++++++++++ +``````````````` It may be useful to use a playbook locally, rather than by connecting over SSH. This can be useful for assuring the configuration of a system by putting a playbook on a crontab. This may also be used @@ -389,7 +399,7 @@ use the default remote connection type:: connection: local Turning Off Facts -+++++++++++++++++ +````````````````` If you know you don't need any fact data about your hosts, and know everything about your systems centrally, you can turn off fact gathering. This has advantages in scaling ansible in push mode with very large numbers of @@ -399,7 +409,7 @@ systems, mainly, or if you are using Ansible on experimental platforms. In any gather_facts: False Pull-Mode Playbooks -+++++++++++++++++++ +``````````````````` The use of playbooks in local mode (above) is made extremely powerful with the addition of `ansible-pull`. A script for setting up ansible-pull is provided in the examples/playbooks directory of the source @@ -414,7 +424,7 @@ This is useful both for extreme scale-out as well as periodic remediation. Usag logs from ansible-pull runs would be an excellent way to gather and analyze remote logs from ansible-pull. Style Points -++++++++++++ +```````````` Ansible playbooks are colorized. If you do not like this, set the ANSIBLE_NOCOLOR=1 environment variable. diff --git a/rst/who_uses_ansible.rst b/rst/who_uses_ansible.rst index b5816840a34..fba68cf29c6 100644 --- a/rst/who_uses_ansible.rst +++ b/rst/who_uses_ansible.rst @@ -3,18 +3,19 @@ Who Uses Ansible Ansible is used by all sorts of organizations from hosted web applications, media companies, universities, consultancies, and ISVs -- all over the world. Some of these users include: -================================================== =================================================== -Who They Are What They Do -================================================== =================================================== -`Basho `_ makers of NoSQL key-value store Riak -`Cygate AB `_ IT solutions from Malmö, Sweden -`Dag IT Solutions `_ "Enterprise Linux and Beyond" -`Fedora Project `_ produces the popular Linux distribution -`Four Kitchens `_ "the Drupal Experts" -`Schmooze Com `_ Creators of Industry-Leading PBX Platforms -`Skyline.es `_ Realtime Photo Search Engine -`Steelhouse `_ Behavioral Commerce -================================================== =================================================== +============================================================ =================================================== +Who They Are What They Do +============================================================ =================================================== +`Basho `_ Makers of NoSQL key-value store Riak +`Cygate AB `_ IT solutions from Malmö, Sweden +`Dag IT Solutions `_ "Enterprise Linux and Beyond" +`Fedora Project `_ Produces the popular Linux distribution +`Four Kitchens `_ "The Drupal Experts" +`Schmooze Com `_ Creators of Industry-Leading PBX Platforms +`Skyline.es `_ Realtime Photo Search Engine +`Steelhouse `_ Behavioral Commerce +`Tomorrow Focus Technologies GmbH `_ Running some of the biggest web sites in Europe +============================================================ =================================================== and lots of other people (you should see our Google Analytics data). Tweet at `Michael DeHaan `_ or `email him `_ to get your company or project listed here. (It's free!) diff --git a/search.html b/search.html index 5a4d3e927d4..6583526f9a4 100644 --- a/search.html +++ b/search.html @@ -221,7 +221,7 @@ s.parentNode.insertBefore(ga, s);

              © Copyright 2012 Michael DeHaan.
              - Last updated on Aug 01, 2012.
              + Last updated on Aug 02, 2012.

              diff --git a/searchindex.js b/searchindex.js index bed861f808f..78c9b782c55 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,forget:[10,11],whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,blue:10,hide:10,thunder:5,children:8,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,unpars:4,abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,program:[3,2,6,5,4,7,11],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],scpnmy8rks7fyk8ulx0pei:6,os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],failur:[9,5,4,7],orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,exit_json:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,isn:[3,5],rang:[3,6],render:6,wast:[],restrict:4,hook:[],instruct:[0,5],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,behavior:[10,6,12],"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,ec2_spot_instance_request_id:9,contact:[0,9,6],even:[0,5,7,8,9,10,11],though:[0,1,3,6,5,4,7,9],bruce:0,limitless:10,what:[0,1,2,3,4,5,6,7,9,10,12],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,ec2_state_reason:9,ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],method:[9,5],reload:6,bad:4,respond:7,richer:5,resist:1,result:[3,5,4,7,9,10],fail:[9,5,4,7],hash:[8,10,9,4,2],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,nobodi:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,tabl:[],contributor:12,conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],cfengin:5,inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],format:[3,2,5,6,7,8,9,11],complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],deal:[4,6],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:6,maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],somelog:6,foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,eat:11,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],xyz:[],encod:6,down:[9,6,7],wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,wai:[0,1,6,5,4,7,8,9,10,11],support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],gif:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,5,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],forc:[0,6],batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],exist:[3,5,6,7,8,9,10,11],door:5,ship:[4,5,6],check:[4,10,6,11],assembl:6,self_destruct_countdown:8,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,assmebl:6,intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],faster:[10,4],anywher:[],ignor:[4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],ansible_hostnam:[10,6,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,fail_json:4,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],condit:[10,7],word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,overrid:[0,9],regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],hyperspac:5,prove:10,is_cento:10,univers:12,visit:3,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,templat:[1,6,5,4,7,9,10,11],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],max:11,clone:[0,4],usabl:7,membership:[10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ender:5,ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,intl:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],basenam:6,security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],env:0,contriv:[],initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,halon_system_timeout:8,term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],likes_emac:2,subnet:9,shown:4,space:[3,5,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,state:[1,6,5,4,7,8,10,11],migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,card:5,care:[6,7],reusabl:4,suffici:10,frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,fast:[0,5,3],oppos:11,open:[10,5,4,7],somegroup:6,given:[10,5,6,1,11],args_data:4,convent:[9,4],width:[],fierc:[],white:4,friend:12,especi:[3,5,10,1],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],altogeth:3,ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],help:[0,1,2,3,4,5,6,7,8,9,10,11],xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,through:[0,6,11,3],where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,kei:[0,2,3,6,5,4,7,9,10,11,12],innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,homebrew:0,typic:[5,7,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,cobbler:[9,3,5],default_releas:6,newhost:6,advantag:10,stdout:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],without:[0,5,4],model:[3,5],roughli:0,execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],miscellan:1,trigger:[5,6,7],except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,5,4,9,11],dark:9,world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,node:[0,3,5,6,7,9,10,11],sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,fulli:[0,6],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,other:[0,1,2,3,4,5,6,7,8,9,10,11,12],effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,longer:4,strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],mainli:[5,10],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],orient:7,valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],consider:9,selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],scp:11,nors:[],articl:3,dehaan:[3,12],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],fall:10,veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],sudo_us:7,deleg:[],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,version:[0,1,6,7,8,10,11],"public":[10,9,6],movement:3,hasn:5,full:[10,6,7],themselv:[],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],ec2_stat:9,two:[3,9,6,7,8],rhel:0,virt:6,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,desir:[4,1,7],hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],instantan:5,prompt:[10,7,11],yamllint:2,moduledev:[],accept:[4,6],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],unlink:6,associ:[9,2],"short":[0,5,10],django:6,caus:0,rotat:7,xmpp:5,mission:3,uvh:0,scott:5,hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,1,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],unlik:[5,7],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,found:[10,9,4],only_if:[10,7],id_rsa:[0,11],subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],event:[4,5,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],cron:[5,10],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],seth:5,group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,filesystem:10,clear:1,cover:[9,5,10,11],dereferenc:[],clojur:4,clean:5,pars:[5,4],latest:[0,6,7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,php:11,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,ec2_root_device_nam:9,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],great:[3,1,5,4,7,10,12],gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],facter_hostnam:[7,11],error:[4,10,5,6],cleanup:10,loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],grant:6,belong:9,shorter:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,win:[],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,transpar:0,folk:[0,12],judgement:6,nginx:6,game:[3,5],quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,like:[0,1,2,3,4,5,6,7,8,9,10,11],name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,api:[9,3,4,5,6],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,doubl:11,primarili:[],pythonpath:[],within:[9,8,5,10,7],ensur:[0,5,6,7,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,few:9,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],"long":[0,3,5,9,10,11],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,host5:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],coder:5,crypt:[6,11],chgrp:[],bracket:8,librari:[6,1,2],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],login_host:6,pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],update_cach:6,async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],ansible_kernel:6,michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],jump:[0,3],download:[0,6],ansible_python_interpret:8,append:6,index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],convert:[9,4],convers:8,hypervisor:6,technolog:3,"_some_str":7,later:[0,1,6,4,7,8,10,11],chang:[0,1,3,6,4,7,8,10,11],maker:12,employe:[5,2],fstab:6,heart:9,appli:[8,10,6,7],app:[5,10],apt:[10,6,1,11],"boolean":[4,2],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,steelhous:12,upgrad:[6,7,11],next:[0,7,8],ansible_python_vers:6,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,about:[0,1,2,3,4,5,6,7,9,10,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,control:[3,1,6,5,4,7,8,9,10,11],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],orson:5,lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,1,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,some_serv:8,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,merg:[5,4],ref:[],reg:[],red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],manipul:[6,11],ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],exactli:[4,10,6],priveledg:6,dive:7,daemonless:[],intervert:10,charact:[9,2],sweden:12,favorit:[5,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],asdf1234l:6,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,pipe:11,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],suppos:[8,10,4,7],"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],grab:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],pattern:[0,1,3,7,8,9,10,11],written:[0,3,4,7,9,10,11],viper:10,progress:[],email:[3,1,12],ansible_ssh_host_key_dsa_publ:6,homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],webapp:[5,11],"2pm":3,addit:[1,6,4,7,8,9,10],revers:[3,6],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],structur:[10,6],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],pin:6,platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],minim:[0,4],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],demo:11,site:[5,10,1],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],probabl:[0,5,4,1,7],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],hostnam:[8,10,9,6,7],denot:8,effect:[],libvirt:6,collat:6,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],well:[0,1,3,6,5,4,7,8,9,10,11],exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],choos:[0,5,6,7,3],undefin:6,usual:[7,11],lest:3,tunabl:1,distanc:5,paus:6,less:[0,5,3],additon:0,detail:[9,4,7,11],heavili:5,skill:2,simultan:11,web:[9,5,11,12],add:[0,1,6,5,4,9,10,11],host4:9,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,rememb:[7,11],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,xaby9ud5brbfvkedu:6,success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],unreach:7,shed:5,drop:4,captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,transport:[0,5,3],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],leav:[10,4,1],encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],sbin:[10,6,7,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,pitfal:4,hang:7,leverag:0,transfer:[4,6,7,11],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],hassl:3,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:4,ec2_plac:9,eas:5,bug:[0,3],count:7,succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6,1],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,evalu:[10,11],is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,inc:6,boot:6,starbuck:10,virtual:[6,7],capabilit:[],book:5,futur:[10,4,1],branch:[0,6],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9,10],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,5,4,7,9,10],fail:[9,10,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,5,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,5,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[10,4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],hyperspac:5,prove:10,is_cento:10,univers:12,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],book:5,max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ender:5,ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],hassl:3,env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,5,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,card:5,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,9,10,11],oppos:11,open:[10,5,4,7],tomorrow:12,somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,especi:[3,5,10,1],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,scott:5,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],europ:12,miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],ignore_error:10,around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,5,4,9,11],dark:9,world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,10,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:[9,5],movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],instantan:5,prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,1,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],clear:1,cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],grant:6,belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:[3,5],quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11,12],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],focu:12,cron:[5,10],gmbh:12,download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:[3,12],"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],orson:5,lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,1,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:[5,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[1,6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[1,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],minim:[0,4],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1,12],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,distanc:5,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],biggest:12,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:[10,4],ec2_plac:9,eas:5,eat:11,count:[10,7],succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6,1],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 12d7e2bfadc..0291a31a947 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -178,8 +178,8 @@ s.parentNode.insertBefore(ga, s);

              Ansible is used by all sorts of organizations from hosted web applications, media companies, universities, consultancies, and ISVs – all over the world. Some of these users include:

        --++ @@ -188,7 +188,7 @@ s.parentNode.insertBefore(ga, s); - + @@ -197,10 +197,10 @@ s.parentNode.insertBefore(ga, s); - + - + @@ -211,6 +211,9 @@ s.parentNode.insertBefore(ga, s); + + +
        Who They Are
        Bashomakers of NoSQL key-value store RiakMakers of NoSQL key-value store Riak
        Cygate AB IT solutions from Malmö, Sweden“Enterprise Linux and Beyond”
        Fedora Projectproduces the popular Linux distributionProduces the popular Linux distribution
        Four Kitchens“the Drupal Experts”“The Drupal Experts”
        Schmooze Com Creators of Industry-Leading PBX Platforms
        Steelhouse Behavioral Commerce
        Tomorrow Focus Technologies GmbHRunning some of the biggest web sites in Europe

        and lots of other people (you should see our Google Analytics data). Tweet at Michael DeHaan or email him to get your company or project listed here. (It’s free!)

        @@ -257,7 +260,7 @@ s.parentNode.insertBefore(ga, s);

        © Copyright 2012 Michael DeHaan.
        - Last updated on Aug 01, 2012.
        + Last updated on Aug 02, 2012.

        From f732aa3d1c4df5aaf00fc95f4220d58b080df8de Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 3 Aug 2012 00:01:23 -0400 Subject: [PATCH 292/416] Add start of a glossary --- YAMLSyntax.html | 3 +- api.html | 3 +- bestpractices.html | 3 +- examples.html | 3 +- faq.html | 5 +- genindex.html | 3 +- gettingstarted.html | 3 +- glossary.html | 269 ++++++++++++++++++++++++++++++++++++++++++ index.html | 4 +- moduledev.html | 3 +- modules.html | 3 +- patterns.html | 3 +- playbooks.html | 3 +- playbooks2.html | 3 +- rst/index.rst | 2 + search.html | 3 +- searchindex.js | 2 +- who_uses_ansible.html | 5 +- 18 files changed, 305 insertions(+), 18 deletions(-) create mode 100644 glossary.html diff --git a/YAMLSyntax.html b/YAMLSyntax.html index 315ca49320c..314481444de 100644 --- a/YAMLSyntax.html +++ b/YAMLSyntax.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
      • API & Integrations
      • Module Development
      • FAQ
      • +
      • Glossary
      • Who Uses Ansible
      @@ -289,7 +290,7 @@ languages:

      © Copyright 2012 Michael DeHaan.
      - Last updated on Aug 02, 2012.
      + Last updated on Aug 03, 2012.

      diff --git a/api.html b/api.html index 328777529fb..84876d66b79 100644 --- a/api.html +++ b/api.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
    • API & Integrations
    • Module Development
    • FAQ
    • +
    • Glossary
    • Who Uses Ansible
    @@ -465,7 +466,7 @@ e.g.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/bestpractices.html b/bestpractices.html index 4cb5d5bc693..1edff4b6041 100644 --- a/bestpractices.html +++ b/bestpractices.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -318,7 +319,7 @@ This way you have an audit trail describing when and why you changed the rules a

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/examples.html b/examples.html index bbe51a3b0c3..0ecb469288a 100644 --- a/examples.html +++ b/examples.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -396,7 +397,7 @@ a simplified syntax for this.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/faq.html b/faq.html index e3891e11249..148a61dcb69 100644 --- a/faq.html +++ b/faq.html @@ -27,7 +27,7 @@ - + + + + + + + + + + + + + + + + + + + + + +Fork me on GitHub + + +
    + Ansible
    +
    + +
    +

    Glossary

    +

    After reading through the rest of the documentation, it may be helpful to review some terms.

    +

    ansible – from science fiction, a device for communicating instanteously over large distances.

    +

    ansible – When speaking of /usr/bin/ansible, a tool for ad-hoc task execution on a group of hosts. This constrasts with /usr/bin/ansible-playbook, which is a full on configuration management and orchestration tool built on top of these fundamentals. Both come with ‘ansible’, the application.

    +

    action – the part of a task that specifies what module to run and what arguments to send it

    +

    async – the act of running a ansible task in the background, potentially polling it for completion. This is useful for kicking off tasks where the result is not important, or in executing tasks that would exceed the SSH timeout.

    +

    cobbler – a kickstart, mirroring, power management, and miscellaneous datacenter management tool that Michael wrote before Ansible, and is frequently used with it. See Cobbler

    +

    common module code – a facility in which Ansible modules written in Python can minimize boilerplate code for argument validation and returning values. This is not available to non-Python modules but modules can still be written in languages other than Python.

    +

    connection – how Ansible connects to and manages remote hosts. Paramiko and native ssh are the main options, though +there is also a local connection mode.

    +

    cowsay – a special utility program that, if installed, greatly enhances the clarity of ansible-playbook output.

    +

    daisy chaining – comes up in development discussions. It’s how in Ansible one module (like copy or template) can +use parameters supported by the file module by requesting the file module be run after the copy module. For example, if specifying a file be templated, we can also specify the mode and owner because the file module is automatically daisy-chained +after the file module.

    +

    DSL – domain specific language. The idea of making a special “programming” language or a subset of a language to build a tool out of. Ansible doesn’t believe in these, and instead treats it’s playbook language as a data format.

    +

    env-setup – a very useful script in the “hacking” directory of an ansible checkout. Sourcing this script makes it very easy to run ansible from source without doing any installation.

    +

    external inventory script – the act of using an executable script in place of an ansible inventory file, so that ansible will invoke the script when needed to ask about what hosts it is managing and variables related to those hosts.

    +

    fact – a variable discovered about a remote host, rather than configured in a config file. Facts can include +the system architecture, the hostname, the operating system version, and so on. facts can be used in configuration +files.

    +

    forks – the level of parallelism used with a /usr/bin/ansible or /usr/bin/ansible-playbook command. Ansible executes multiple remote management commands in parallel to get things done faster.

    +

    func – an earlier ad-hoc execution tool that is the basis of some of the ideas in Ansible. Michael wrote Func with some colleagues from Red Hat, and a later tool called taboot built on Func helped inspire the playbooks language. Func didn’t have a configuration management language on top of it, nor did it use SSH, but it helped pave the way for several other tools.

    +

    handler – a special class of a task that is not run unless a given task registers a change event. Handlers are most +frequently used for restarting services when the contents of configuration files change.

    +

    idempotent – when applied to configuration management, this means that running a given task twice does not produce +an unexpected effect on the system. Mathematically, F(x) = F(F(x)). Ansible’s core modules all support this concept +but Ansible does not force this upon you.

    +

    include – a playbook, handler, or variable data loaded from another file

    +

    infrastructure as code – the practice of treating configuration, management, and deployment of systems as a software project. Ansible doesn’t really believe in this and tries to simplify things by making a simpler language that is easier to write and audit, and is therefore easier to understand by all parties involved. More advanced takes on I.A.C. use actual programming languages to describe configurations.

    +

    inventory – ansible keeps track of what hosts you are managing, and allows them to be put in groups for easier selection. This file is by default in a simple INI format, but can be replaced with an ‘external inventory script’

    +

    Jinja2 – Ansible uses this as a templating language for the ‘template’ module.

    +

    JSON – the format Ansible modules use to return data over the wire. “Java Script Object Notation”

    +

    module – a reusable unit of logic that tells Ansible how to do things on remote machines. Ansible ships with many modules written in Python, but modules can be written in any language. Modules return structured data in JSON.

    +

    notify – what a task does when it detects that something has changed on the remote system. A task notifying a handler +means it is sending a message to the handler that it needs to run at the end of a playbook execution.

    +

    paramiko – the default connection type for ansible uses a pure-Python SSH library called paramiko. It is generally +easier to set up than native SSH but does not offer as many configuration options and does not support Kerberized SSH.

    +

    pattern – a selector that can match host or group names using wildcards. Patterns are used in plays or in ad-hoc executions of /usr/bin/ansible to target groups of hosts to manage.

    +

    play – a group of ansible tasks that are to be executed on the same set of hosts. A play is always run by the same user account and may optionally sudo to a particular user after connecting. In addition to a list of tasks, a play may also choose to define variables or include them from other files, all of which are shared with each task in the play.

    +

    playbook – a list of ansible plays grouped together in a single file, which are run top to bottom. Each play may select different hosts and have different tasks. A playbook is analogous to a Chef recipe, a Puppet manifest, a CFEngine “promise”. Playbooks can be broken up into more than one file using includes, in which case it’s still ok to call it a playbook.

    +

    pull – the act of a managed system phoning home to ask how it is configured. This is useful in large scale out scenarios or for periodic automatic system remediation.

    +

    push – the act of reaching out to systems you want to manage rather than them phoning home. This is Ansible’s default +mode, but pull is also supported via the ‘ansible-pull’ script.

    +

    runner – comes up in development discussions. a core component of the ansible code that runs a single module/task against a given set of hosts. /usr/bin/ansible makes use of runner directly. Playbooks instantiate multiple instances of runner, +one for each task in a playbook.

    +

    setup cache – comes up in development discussions. The setup cache is a mechanism of storing fact results from various +systems and makes them available as variables in action lines and templates

    +

    SSH – secure shell. Ansible by default uses SSH to talk to remote hosts because it is already there and very secure. It does not require any additional daemons.

    +

    task – one of many ansible modules to execute on a given set of hosts, and the parameters to use when calling it. +A task has a name, an ‘action’, and other optional variables. Making sure a package is installed, or a file +is templated and transferred, is the example of a task.

    +

    template – the act of taking a file with variable placeholders in it and substituting variables to make a final file. Templating is frequently used to place configuration files.

    +

    test-module – a useful script in the “hacking” directory of an ansible checkout for running a module locally, without ansible’s core code in the way. Used when developing or debugging modules.

    +

    Van Halen – the great American Rock Band, known for great instrumental guitar work and also songs about Alien Abductions. All Ansible releases are code named after Van Halen songs. C’mon Dave, gimme a break.

    +

    YAML – the core language format for ansible playbooks and include files. Stands for “YAML Ain’t Markup Language”. YAML can be taken to extremes where it is difficult to write and read, but Ansible uses a relatively simple dialect and minimal levels of nesting.

    +
    + + +
    +
    +
    + +
    +
    +

    +

    + + + + + + + + + +
    +

    +

    + + + +

    +

    +

    + © Copyright 2012 Michael DeHaan.
    + Last updated on Aug 03, 2012.
    +

    +
    +
    + + \ No newline at end of file diff --git a/index.html b/index.html index 10bcf8d787c..a5a52e561e2 100644 --- a/index.html +++ b/index.html @@ -139,6 +139,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -377,6 +378,7 @@ Puppet Labs, and is now with API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -410,7 +412,7 @@ Puppet Labs, and is now with API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -509,7 +510,7 @@ the program. Stop by the mailing list to inquire about requirements.

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/modules.html b/modules.html index 6c04a0a15a1..f28e061b685 100644 --- a/modules.html +++ b/modules.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -1568,7 +1569,7 @@ yum name=httpd state=installed

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/patterns.html b/patterns.html index 4ee7a217a69..0818e1046fa 100644 --- a/patterns.html +++ b/patterns.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -380,7 +381,7 @@ a API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -535,7 +536,7 @@ package is installed. Try it!

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/playbooks2.html b/playbooks2.html index 25493591bfa..fa8cc181b36 100644 --- a/playbooks2.html +++ b/playbooks2.html @@ -140,6 +140,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -614,7 +615,7 @@ logs from ansible-pull runs would be an excellent way to gather and analyze remo

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/rst/index.rst b/rst/index.rst index 9d6472470f9..b75ed930882 100644 --- a/rst/index.rst +++ b/rst/index.rst @@ -158,6 +158,8 @@ Documentation api moduledev faq + glossary who_uses_ansible + diff --git a/search.html b/search.html index 6583526f9a4..4609d515cb2 100644 --- a/search.html +++ b/search.html @@ -144,6 +144,7 @@ s.parentNode.insertBefore(ga, s);
  • API & Integrations
  • Module Development
  • FAQ
  • +
  • Glossary
  • Who Uses Ansible
  • @@ -221,7 +222,7 @@ s.parentNode.insertBefore(ga, s);

    © Copyright 2012 Michael DeHaan.
    - Last updated on Aug 02, 2012.
    + Last updated on Aug 03, 2012.

    diff --git a/searchindex.js b/searchindex.js index 78c9b782c55..8154c5aa7c1 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{},terms:{facter_operatingsystem:10,kickstart:10,comprimis:3,poorli:[],four:[8,12],prefix:[10,9,6,7,11],sleep:10,consider:9,whose:10,tweet:12,ebuild:0,aur:0,under:[10,7],spec:7,everi:[0,1,2,7,10,11],risk:10,vastli:7,ansible_virtualization_rol:6,redact:6,upstream:0,affect:[4,6],macaddress:6,showcas:4,reg:[],ansible_librari:[],shlex:4,vars_prompt:[10,1],saltstack:[],x86_64:[9,6],awwxvv:6,seper:[1,5,6,7,8,10],direct:[5,6,7],chef:[3,5],second:[9,10,11],tag_key_valu:9,even:[0,5,7,8,9,10,11],hide:10,thunder:5,scp:11,"new":[10,5,6],net:[0,2,6,5,4,8,9,11,12],ever:[3,9,4,7,8],told:7,manipul:[6,11],abov:[6,4,7,9,10,11],controlmast:[0,5],eckersberg:[5,2],hera:[],never:[9,4,5,6],here:[0,1,3,6,4,7,9,10,11,12],herd:5,"malm\u00f6":12,path:[1,6,4,7,8,9,10,11],interpret:8,datetim:4,permit:[],aka:10,ansible_ssh_arg:0,somethingels:10,brought:[],unix:[3,5],cobblerd:9,ec2_:9,total:7,unit:4,highli:4,describ:[1,7],would:[0,1,6,5,4,7,8,9,10,11],h3d850bdf:[],ansible_memtotal_mb:6,noarch:0,dehaan:[3,12],overhead:3,typo:4,recommend:[4,6,1],type:[9,4,10,5,6],tell:[0,8,6,11,3],notif:5,notic:5,warn:4,ec2_architectur:9,relai:7,ansible_transport:0,must:[4,10,9,6,7],join:3,restor:6,setup:[0,1,3,6,4,7,9,10,11],work:[0,1,3,5,6,7,8,9,10,11],erb:5,virttyp:6,ansible_ssh_host_key_rsa_publ:6,root:[0,1,3,5,7,10,11],overrid:[0,9],os_default:10,give:2,rpath:3,indic:[6,7],app_serv:10,somefil:7,want:[0,1,2,6,5,4,7,9,10,11],end:[4,5,6,7],hoc:[3,5,6,7,11],quot:[10,11],how:[1,2,6,5,4,7,8,9,10,11],hop:5,yum:[0,1,6,4,7,10,11],perspect:9,updat:[10,6,11],recogn:[7,11],passwordless:11,after:[1,6,5,4,7,8,9,11],lab:[3,5],diagram:[],befor:[3,6,5,4,7,10,11],ohai_:[6,7],ec2_image_id:9,arch:0,parallel:[3,5,10,7,11],attempt:7,interpol:10,ansible_product_seri:6,bootstrap:[3,5,6],credenti:11,exclud:8,greek:[],unpaus:6,maintain:[0,9,4],environ:[0,10,9,6],enter:10,exclus:10,idontknow:[],order:[3,5,6,1,7],oper:[10,6,7,11],frontend:10,over:[0,3,5,8,9,10,11,12],fall:10,orang:2,becaus:[1,2,5,4,9,10,11],ec2_previous_st:9,rpmbuild:0,ansible_interfac:6,zeu:[],gather_fact:10,vari:10,myfil:6,streamlin:10,shorter:4,cli:[9,11],img:[],fix:0,better:[6,11],offic:3,easier:[5,4,1,2,11],them:[0,1,2,3,4,5,6,7,8,10,11],thei:[3,6,5,4,7,8,9,10,11,12],fragment:6,etc_acme_conf_acm:1,safe:[0,7],ec2_ten:9,"break":7,glorifi:[],jinja2:[0,5,6,7,10,11],ec2_ip_address:9,mgmt:9,httpd_sys_content_t:6,ec2_region:9,choic:[0,4],vidal:5,bonu:9,timeout:10,each:[1,2,6,5,4,7,8,9,10],debug:2,side:3,mean:[2,6,5,4,7,9,10],exactli:[4,10,6],playbooks2:[],logo:[],some_password:10,contend:5,network:[3,5,10],dss:6,content:[10,4,7],adapt:[9,6],got:5,forth:7,a1b1c1d1:9,site_fact:[10,4],ntp:[8,11],nightmar:3,free:[0,5,6,9,10,12],standard:[8,4],dotnet:2,fixm:[],md5:4,reconfigur:[5,10,1],openssh:[0,5,3],traceback:4,isv:12,ansible_form_factor:6,isn:[3,5],suppos:[8,10,4,7],rang:[3,6],render:6,wast:[],restrict:4,hook:[],unlik:[5,7],alreadi:[0,3,6,5,4,7,9],van_halen_port:7,massiv:3,primari:[9,6],rewritten:[],top:[10,5,4,1,7],sometim:[10,6],destination_vari:9,master:9,too:[3,2,5,4,9,11],similarli:[9,10],john:[5,2],iptabl:[],ansible_memfree_mb:6,tool:[0,3,5,9,10,11],took:5,"80ghz":6,somewhat:9,technic:[0,9,6],freemem:6,silli:[],target:[8,1,7],keyword:[5,10],provid:[1,2,6,5,4,7,9,10,11],tree:[4,9,6],project:[0,1,2,3,5,4,7,10,12],ansible_distribution_releas:6,minut:[5,11],uses_cv:2,recheck:4,provis:5,fashion:5,"_authorized_kei":[],runner:9,ram:5,mind:[5,4],raw:[0,6],aforement:8,seem:[5,10,7],seek:6,someapp:6,sudo_us:7,contact:[0,9,6],blue:10,though:[0,1,3,6,5,4,7,9,10],bruce:0,limitless:10,deleg:[],regular:7,bsd:[0,5],boxsubscrib:[],simplic:3,don:[0,1,3,6,5,4,7,8,10,11],doc:6,doe:[0,6,5,4,7,8,9,10,11],declar:7,wildcard:8,libpq:6,came:9,cobbler_external_inventori:9,random:7,syntax:[3,1,2,5,7,10,11],kerber:[0,3],pkg:[10,6,7,11],radic:3,identifi:5,pki:5,ec2_private_ip_address:9,priv:6,involv:4,absolut:[6,11],northeast:8,acquir:3,explain:[9,4],configur:[0,1,2,3,5,6,7,8,9,10,11],apach:[5,10,7,11],ec2_instance_typ:9,version:[0,1,6,7,8,10,11],ldap:9,stop:[0,1,2,6,5,4,7,8,9,10,11],amazon:9,saturn:[],cellspac:[],bar:[8,9,6,7],host_var:8,excel:[3,5,10,8],"public":[10,9,6],reload:6,bad:4,respond:7,daemonless:[],resist:1,result:[3,5,4,7,9,10],fail:[9,10,5,4,7],themselv:[],hammer:[],best:[3,1,6,5,4,7,9,10],subject:[5,10],heterogen:1,databas:[3,10,9,6,7],discoveri:6,figur:5,simplest:[9,4],awai:[5,10],irc:[0,2,6,5,4,8,9,11,12],approach:[9,3,5,10],attribut:[10,6],login_us:6,manpag:[],extens:5,add:[0,1,6,5,4,9,10,11],kitchen:12,easi:[0,1,3,6,5,4,8,10,11],howev:[0,5,4,11,8],against:[3,5,10,7,8],logic:[],somelist:10,login:7,com:[0,6,4,8,9,12],compromis:5,assur:[10,7],height:[],written:[0,3,4,7,9,10,11],guid:[],assum:[8,9,6],speak:6,multiplay:3,ansible_library_path:4,three:[3,6,8],been:[9,3,5,6,11],much:[3,2,5,6,7,10,11],interest:[0,9],basic:[0,1,2,5,4,7,8,9,10,11],tini:10,quickli:[3,11],life:3,recomend:4,ani:[0,1,3,6,5,4,7,9,10,11],mysql_us:6,enterprisei:9,child:3,emploi:2,ugli:10,exception:5,east:9,servic:[1,6,4,7,8,9,10,11],ec2_security_group_id:9,vars_fil:[10,1,7],aim:5,visit:3,tabl:[],conf:[1,6,7,9,10,11],module_nam:[8,9],somekei:4,sever:[9,12,5,7,2],inventori:[0,1,3,6,7,8,9,10,11],perform:[0,5,10,7,3],suggest:6,make:[0,1,6,5,4,7,8,9,10,11],transpar:0,complex:[3,5,10,7],split:[8,4],complet:[1,2,5,7,9,10],wheel:[10,6],ansible_arch2:[],fragil:[],selevel:6,rail:5,hand:10,rais:[10,4],ownership:11,refin:[],tune:10,speakerdeck:3,kept:[5,7],scenario:9,ansible_:10,hypothet:[],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11],endif:10,programm:[9,5],everyth:[0,10],left:[],protocol:6,just:[0,1,2,3,4,5,6,7,9,10,11],photo:12,laptop:9,human:[7,2],braces_syntax:[],yet:[0,9,6,11,3],languag:[0,2,3,6,5,4,7,8,9,10],expos:1,spread:3,els:[0,4,7],ffffff:4,save:[4,10,6,7],hat:[3,5],opt:6,applic:[3,5,6,7,9,10,12],quirk:2,fusion:6,background:11,daemon:5,specif:[1,5,4,7,8,9,10,11],arbitrari:[5,10],manual:[5,7,11],remind:[10,4,1],el6:6,unnecessari:[],groups_logo_sm:[],right:[],deal:[4,6],maxim:5,dead:3,born:5,intern:[9,4],heritag:[],successfulli:[3,9],txt:[6,11],forcibl:[],bottom:7,tracker:[0,3],condit:[10,7],foo:[6,7,8,9,10,11],localhost:6,core:[3,4,5,6,11],plu:[],sensibl:0,web2:9,web1:9,promot:[],repositori:1,peer:5,"super":3,chapter:7,sshd:3,postgresql:6,surround:11,simul:10,"2ydx8":6,commit:1,produc:[4,6,12],basenam:6,contriv:[],halon_system_timeout:8,wrap:1,install_recommend:6,storag:8,eth0:6,ec2_vpc_id:9,git:[0,1,6,5,4,8,10,11],fabric:5,suffici:10,support:[0,1,3,6,5,4,7,9,10,11],happi:3,avail:[0,1,2,6,5,4,7,8,9,10,11],width:[],reli:[3,5,10],gid:6,wordpress:7,call:[1,2,6,5,4,7,8,9,10],war:3,fork:[9,5,10,11],head:[6,11],python26:0,form:[4,10,6,7,2],offer:[],altogeth:3,batman:0,forg:6,groupfil:8,"true":[0,10,4,7,2],freenod:[0,2,3,6,5,4,8,9,11,12],absent:[4,6,1,11],inquir:4,maximum:10,until:[10,1],ansible_fqdn:6,rerun:7,featur:[0,1,3,5,6,7,8,10],"abstract":5,fedoraproject:[],cobbler:[9,3,5],desir:[4,1,7],ship:[4,5,6],check:[4,10,6,11],assembl:6,pipe:11,encrypt:5,tip:[8,10,1,7],role:[10,6,1,7],test:[9,0,4,5,6],tie:9,unlimit:[],maxrequestsperchild:8,node:[0,3,5,6,7,9,10,11],intend:4,phoenix:8,devop:3,intent:[],consid:[4,1,7],longer:4,anywher:[],ignor:[10,4,7],time:[0,1,2,5,4,7,8,9,10,11],push:[3,5,10,7],concept:[9,10,1,11],vpc:9,"5rxgmiicbrh":6,skip:[10,7],consum:5,invent:[],skim:3,operatingsystem:10,decid:[5,4,7,11],middl:[],depend:[0,6,5,4,10,11],zone:9,graph:[5,12],readabl:[1,7],decis:10,southwest:8,sourc:[0,1,2,3,4,5,6,7,9,10,11,12],string:[4,6,7],somelog:6,word:[3,9],brows:4,jdk:6,administr:[],level:[6,7,2],did:[10,9,4],passno:6,item:[10,9,6,2],team:5,quick:0,ansible_product_nam:6,prevent:4,slower:0,trend:6,ec2_platform:9,anaconda:10,port:[8,5,11],favcolor:[10,9,4,11],ansible_distribution_vers:6,current:[0,10,5,4,11],suspect:[],ceec4eif7ya:6,gener:[0,5,4,7,9,10,11],address:[1,6,5,4,8,9,10],along:[4,7],wait:10,box:[3,6,11],precursor:3,extrem:[0,10,5,4],bob:[6,7],commonli:[11,2],ourselv:7,scpnmy8rks7fyk8ulx0pei:6,regardless:[5,7,2],extra:[5,10,1],tweak:1,modul:[0,1,3,6,5,4,7,9,10,11],userdel:6,prefer:[8,10,4,11],mzdywqlw:6,leav:[10,4,1],instal:[0,3,6,5,4,7,10,11],mobil:6,httpd:[8,10,6,7,11],hyperspac:5,prove:10,is_cento:10,univers:12,fail_json:4,perl:[3,11],live:[0,10],handler:[11,6,1,7],criteria:10,msg:[9,4],scope:6,checkout:[0,4,10,6,3],ntpserver:9,idempot:[3,6,5,4,7,11],share:[0,10,9,4,3],claus:10,accept:[4,6],easiest:[0,9,10,3],get_xml:6,ibm:3,module_arg:9,prepar:[],uniqu:9,cat:[],whatev:[3,10,4],purpos:[3,8,6,1,7],boilerpl:4,claim:1,hostvar:10,argument_spec:4,facter_hostnam:[7,11],chip:3,agent:[0,5,11,3],critic:3,occur:7,alwai:[4,5,6,1,7],multipl:[3,1,5,6,7,8,9,10,11],ping:[0,9,6],uptim:9,write:[3,1,2,6,5,4,7,10,11],purg:6,somevalu:[10,4],parameter:7,map:[9,7],product:10,mar:[],book:5,max:11,clone:[0,4],usabl:7,membership:[10,11],pattern:[0,1,3,7,8,9,10,11],mai:[0,1,2,3,6,4,7,9,10,11],underscor:9,data:[3,2,6,5,4,7,8,9,10,12],man:[],poseidon:[],practic:[3,1,2,5,6,7,10],seuser:6,explicit:[],predic:6,inform:[9,5,10,7,11],"switch":5,mango:2,combin:2,talk:[0,7,8],ender:5,ec2_statu:9,nbsp:[],ec2_id:9,still:[0,5,4,7,9,10],pointer:4,ec2_virtualization_typ:9,facter_:[6,7],jid:11,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11],monitor:[3,9],polici:[3,6],yaml:[3,1,2,5,7,8,10],curli:11,pythonpath:[],mail:[0,1,2,3,4,5,6,7,8,9,10,11,12],job_statu:[],main:[3,1,4,7,9,10],xyz:[],security_group_pete_s_fancy_group:9,non:[3,4,6,7,8],hassl:3,env:0,encod:6,initi:6,l6pmiam1a8ywep:6,half:5,now:[0,3,6,5,4,7,9,10,11],discuss:5,setyp:6,shoudl:6,down:[9,6,7],term:[4,11],name:[1,2,6,4,7,8,9,10,11],config:[3,9,7],didn:[5,11],crypto:3,separ:[9,7],arg1:6,laserllama:3,yeah:[],ensur:[0,5,6,7,10,11],contrib:4,backport:[0,6],facter:[10,5,6,7,11],happen:[9,5,4],subnet:9,shown:4,space:[3,5,6],infrar:[],profil:9,intermix:[],skylin:12,internet:3,correct:[9,5,10,7,2],ksmeta:9,lag:6,migrat:3,argv:4,args_fil:4,theori:7,org:[0,6,11,8],grab:6,card:5,care:[6,7],reusabl:4,wai:[0,1,6,5,4,7,8,9,10,11],frequenc:10,synchron:[10,7],thing:[0,1,2,5,4,7,8,10,11],place:[3,4],raleigh:[3,11,8],router:6,think:[10,5,4,1],frequent:[9,10],first:[0,3,6,5,4,8,10,11],origin:6,directli:[6,4,7,8,9,11],onc:[1,5,4,7,8,10],arrai:10,yourself:7,"long":[0,3,5,9,10,11],oppos:11,open:[10,5,4,7],tomorrow:12,somegroup:6,given:[10,5,6,1,11],unlink:6,convent:[9,4],gif:[],fierc:[],white:4,friend:12,especi:[3,5,10,1],copi:[0,10,9,6,11],specifi:[0,2,6,5,4,7,9,10,11],retyp:0,netmask:6,github:[0,1,2,3,6,4,7,9,10,12],mostli:1,than:[0,1,2,6,5,4,7,9,10,11],cmdb:9,wide:5,ec2_private_dns_nam:9,were:[5,10,7,11],pre:[],sai:[0,3,5,6,7,10,11],nicer:[],id_webservergroup:9,argument:[6,4,7,8,9,11],dash:[9,2],loki:[],collat:6,sat:5,engin:12,squar:[],alias:4,destroi:6,note:[0,6,4,7,9,10,11],forc:[0,6],ideal:5,denomin:1,take:[4,5,6,7,11],noth:[6,7,2],channel:[0,2,3,6,5,4,8,9,11,12],begin:[11,2],sure:[9,10,7,11],normal:[9,11],track:[0,10,11,8],beta:[],pair:[9,4,2],adopt:5,meanwhil:5,runtim:10,mysql_db:6,show:[10,4,7,11],cheat:5,aggregr:4,geographi:1,permiss:[0,11],hack:[0,4],rotat:7,xml:2,onli:[0,3,6,5,4,7,9,10,11],explicitli:[6,7],transact:10,activ:[6,12],behind:[5,6],dict:4,analyz:10,analyt:12,nearli:[6,2],variou:[10,5,6,7],get:[0,2,3,6,5,4,7,9,10,11,12],soon:[],repo:[4,6,11,8],ssl:[3,5],cannot:[10,6,7],ssh:[0,3,5,6,8,9,10,11],requir:[0,1,3,6,5,4,9,10,11],some_file_path_foo:1,scott:5,where:[0,1,6,5,4,9,10],summari:7,wiki:[],hierachi:[],testserv:6,ansible_product_vers:6,fff:[],ansible_distribut:[10,6],concern:7,detect:6,ansible_ssh_host_key_dsa_publ:6,innov:[],review:[10,5,6,1,7],enumer:10,enough:[8,5,11],ansible_system_vendor:6,between:[0,1,3,5,7,10],"import":[10,9,4,7,11],across:[9,5],cycl:0,come:[3,4,1,7],timmi:7,region:9,contract:9,tutori:4,abc123:9,mani:[6,4,7,9,10,11],setenforc:7,among:[5,10],color:[10,4],overview:2,inspir:5,period:10,colon:[8,7],inventory_hostnam:10,webapp:[5,11],poll:[10,11],other_vari:10,coupl:5,west:9,rebuild:[],rubi:[3,2,6,5,4,10,11],those:[9,10,7,11],"case":[3,6,5,4,7,9,10,11],mount:6,md5sum:[],straighten:5,trick:7,cast:4,exist:[3,5,6,7,8,9,10,11],default_releas:6,newhost:6,advantag:10,ec2_stat:9,worri:[5,10],destin:[9,6],myapp:[10,11],rktgjk2httvs6gigvsuwwfod7:6,chkconfig:[],trival:4,http_port:[8,7],develop:[0,1,2,3,4,5,6,7,10],ansible_architectur:6,author:[3,6,1],media:12,same:[0,1,2,6,7,8,9,10,11],binari:[0,5],html:5,pad:[],pai:11,document:[3,1,2,5,4,7,9,10,11],week:[3,12],webserv:[3,1,6,7,8,9,10,11],closest:12,ec2_subnet_id:9,nest:[4,10,6],driven:[3,9],capabl:1,fruit:2,interventori:[],improv:[4,12],extern:[3,9,10,1],appropri:[9,10,5,6,11],choos:[0,5,6,7,3],without:[0,5,4],model:[3,5],dereferenc:[],execut:[0,1,3,6,5,4,7,9,10,11],when:[0,1,6,5,4,7,9,10,11],rest:4,kill:7,speed:0,aws_access_key_id:9,versu:[0,5,1],europ:12,miscellan:1,except:[9,4],littl:[9,3,5],otherus:11,blob:9,notori:5,vulner:5,real:[0,10,7],ignore_error:10,around:[0,5],ohai:[10,5,6,7,11],read:[0,2,3,5,4,9,11],dark:9,world:[0,5,10,7,12],intel:6,whitespac:1,realtim:12,ak123:9,integ:[],server:[3,5,6,7,8,9,10,11],rycsbf1d8e5ptxesxhqs4iq:6,output:[9,4,5,6,7],manag:[0,1,2,3,5,6,7,8,9,10,11],ec2_kernel:9,assmebl:6,sneaker:[],jquery_directori:6,titan:[],ansible_processor:6,noon:3,definit:[],legal:[4,1],moon:[],exit:[9,4,7],complic:[3,5],refer:[10,9,6,7,11],ansible_swaptotal_mb:6,power:[0,1,3,5,4,7,9,10],broken:1,found:[10,9,4],"throw":[5,4],earlier:7,src:[10,9,6,7,11],stone:4,central:[3,5,10],get_url:6,acm:[8,6,1,11],wolf:9,industri:[3,5,12],mytempl:6,effici:[5,10],terminolog:9,somescript:6,multinod:5,puppetmast:3,your:[0,1,3,6,5,4,7,8,9,10,11,12],charli:6,stare:4,log:[4,10,5,6,7],area:[],aren:5,privileged_us:[],start:[0,1,2,3,5,6,7,9,11],interfac:[9,5],low:6,lot:[3,1,4,10,11,12],ipv6:6,bundl:1,vpc_destination_vari:9,congratul:0,faster:[10,4],strawberri:2,dirti:[0,6],possibl:[1,4,7,8,9,10,11],"default":[0,3,6,5,4,8,9,10,11],ansible_fact:4,stacktrac:4,connect:[0,5,10,3],tasti:2,uid:6,creat:[0,3,5,6,7,9,10,11],certain:[10,5,6,7],deep:7,strongli:[5,1],deferenc:[],file:[0,1,2,3,6,4,7,8,9,10,11],my_custom_fact_can_be_used_now:10,again:[9,5,4,7],googl:[0,1,2,3,4,5,6,7,8,9,10,11,12],compel:[],event:[4,5,6,7],valid:4,you:[0,1,2,3,4,5,6,7,8,9,10,11,12],external_var:10,poor:4,sequenc:3,symbol:6,signficantli:0,briefli:7,"60k":[3,5],postgresql_us:6,directori:[1,2,6,4,7,10,11],invest:5,descript:[6,1,7],chown:6,potenti:10,appl:2,cpu:6,all:[0,1,2,3,4,5,6,7,8,9,10,11,12],forget:[10,11],selinux:[6,7],lack:[],mnt:6,month:0,scalar:4,abil:[5,7],follow:[0,5,6,8,9,10,11],alt:[],children:8,nors:[],articl:3,program:[3,2,6,5,4,7,11],mcollect:[],arbitari:2,introduc:3,liter:6,tag_name_redi:9,"1pm":3,fals:[10,4,2],faq:[3,5],failur:[9,10,5,4,7],veri:[0,1,3,6,5,4,7,9,10,11],condition:7,database_serv:8,list:[0,1,2,3,4,5,6,7,8,9,10,11,12],pbx:12,sane:5,stderr:4,small:[9,3,5,10,2],testuser2:10,testuser1:10,enterpris:[0,12],zero:[4,7],design:[3,5,11,8],pass:[0,6,4,7,9,10,11],further:[5,10,2],ec2_spot_instance_request_id:9,what:[0,1,2,3,4,5,6,7,9,10,12],sub:[],section:[0,1,5,7,8,10,11],abl:[3,10,1],delet:[6,7,11],abbrevi:2,ec2_state_reason:9,method:[9,5],movement:3,hasn:5,full:[10,6,7],hash:[8,10,9,4,2],shouldn:[5,10],first_available_fil:10,strong:3,modifi:[9,4],valu:[2,6,4,7,9,10,11,12],search:12,ahead:[0,7],likin:5,memcach:[10,7],prior:10,amount:9,pick:[5,11],action:[10,9,6,7],via:[0,9,10,3],shorthand:[10,4],factnam:10,ec2_state_cod:9,managememnt:[],href:[],select:[1,6,4,7,8,10],distinct:[],stdout:9,two:[3,9,6,7,8],rhel:0,demo:11,taken:[5,7],kick:[3,10,11],more:[0,1,3,5,6,7,8,9,10,11],flat:7,door:5,hundr:12,flag:[0,7],particular:[6,7,8,9,10,11],known:6,compani:[5,4,12],cach:[9,6],none:[0,9,6],pkgbuild:0,hous:[],dev:[5,6],remain:[],learn:[0,1,2,3,5,4,7,8,10],instantan:5,prompt:[10,7,11],yamllint:2,moduledev:[],templat:[1,6,5,4,7,9,10,11],minimum:[10,4,7],explor:[0,9],pong:6,cygat:12,cours:[5,10,1],newlin:[],secur:[9,3,10,5,6],rather:[10,5,4],anoth:[3,1,2,5,6,7,10,11],simpl:[3,1,2,5,4,7,9,10,11],css:6,distro:9,resourc:[4,10,5,6,7],referenc:[8,7],variant:0,fstype:6,ff0000:4,neccesssari:[],args_data:4,associ:[9,2],"short":[0,5,10],django:6,caus:0,help:[0,1,2,3,4,5,6,7,8,9,10,11],xmpp:5,mission:3,uvh:0,through:[0,6,11,3],hierarchi:[],hell:3,suffer:5,paramet:[4,10,6,1,7],style:[4,10,6],psycopg2:6,cowsai:[10,7],pend:[],rapidli:[9,10],might:[8,10,9,4,7],wouldn:[9,5],good:[0,3,5,4,7,9,10],"return":[6,5,4,7,9,10],food:2,framework:[9,3,5],botnet:[3,5],odin:[],neccessari:[10,6],instruct:[0,5],authent:6,mysteri:10,easili:[0,3,5,9,10,11],achiev:4,fulli:[0,6],only_if:[10,7],ansible_kernel:6,subsystem:[3,5,6],harm:[],mental:5,hard:[5,4],idea:[0,1,2,3,4,5,6,7,8,9,10,11],crontab:10,realli:[3,2,6,5,4,7],expect:[9,10,7],variablenam:[],beyond:[10,12],orient:7,hostnam:[8,10,9,6,7],ftp:6,safeti:[],bubbl:[10,6,7],print:[9,4],yaml_to_ini:8,qualifi:6,postgr:[6,7],proxi:[8,10],advanc:[0,1,3,5,7,9,10],pub:11,reason:[3,5,4,7,9,10],base:[3,10,5,6,1],believ:5,ask:[0,7,11],bash:[0,5,4,11,3],basi:7,pyyaml:0,sytem:5,launch:[10,7],drupal:12,omit:1,ansible_system:6,assign:[8,9,10,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:6,notifi:[1,6,5,4,7,11],obviou:[],feel:[9,10,2],exchang:10,number:[3,10,5,6,8],placehold:[10,7],done:[0,1,5,6,8,10],least:1,blank:6,stabl:0,differ:[0,1,3,5,6,7,8,9,10,11],list_vm:6,guest:6,script:[3,1,5,4,8,9,10,11],interact:[9,11],construct:[9,5,10,1,7],camelot:10,make_databas:6,statement:[4,7],banana:[],store:[8,9,6,12],option:[0,1,6,5,4,7,8,9,10,11],part:[3,4,5,6,10],ec2_key_nam:9,consult:12,reinstal:[],jump:[0,3],kind:[5,4],grep:[],whenev:4,remot:[0,10,6,7,11],remov:[8,10,6,11],jqueri:6,reus:[5,10,7],architect:3,str:4,jvmdhw:6,toward:10,cleaner:10,comput:[9,5],well:[0,1,3,6,5,4,7,8,9,10,11],group_var:8,packag:[0,1,6,5,4,7,10,11],imagin:[],createhom:6,equival:[10,6],self:[5,4],also:[0,1,2,3,4,5,6,7,8,9,10,11,12],build:[9,0,4,5,6],brace:11,distribut:[0,5,1,12,3],passwd:6,previou:10,reach:[3,1],most:[0,1,2,3,5,7,9,11],plai:[3,10,7],plan:5,alpha:6,bug:[0,3],clear:1,cover:[9,5,10,11],roughli:0,clojur:4,clean:5,pars:[5,4],usual:[7,11],awesom:[3,6,7,12],commerc:12,ansible_processor_count:6,alphanumer:9,devolv:[],mpd_ring:[],particularli:[9,10,7],fine:[0,4,1],find:[9,4,7],impact:[5,12],firewal:[3,10],nosql:12,pretti:[9,5,10],solut:[5,12],security_group_default:9,olympu:[],yml:[10,1,7],remedi:10,long_running_oper:11,financ:3,nativ:[0,10],basho:12,him:12,restart:[1,5,6,7,8,11],mdehaan:[6,11],dollar_sign_syntax:[],common:[10,9,4,1,2],wrote:4,set:[0,1,3,6,5,4,7,8,9,10,11],dump:[4,6],creator:12,security_group_webserv:9,see:[0,1,2,6,5,4,7,8,9,10,11,12],sec:10,arg:4,disadvantag:3,setsebool:7,expert:[5,12],someth:[1,5,4,7,9,10],restructur:7,hold:10,experi:5,altern:[10,11],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:9,foo_port:[],popul:9,both:[0,5,4,9,10,11],last:[0,3],delimit:6,boto:9,thor:[],uncrypt:7,context:6,whole:5,load:[],simpli:[9,6,1,7],point:[10,9,6,1],instanti:4,etc_other_conf_oth:1,header:8,shutdown:[10,6],suppli:6,asdf:[],backend:[],unsuccess:7,devic:6,due:[0,5,4],empti:9,ran:3,host4:9,escape_pod:8,strategi:5,wish:[0,1,2,7,9,10],fire:[3,5,10],imag:[],convert:[9,4],append:6,gap:5,understand:[3,7],func:[3,5],educ:4,look:[3,6,4,7,8,9,10,11],straight:11,batch:5,"while":[3,5,10,1,7],unifi:[],match:[4,7],behavior:[10,6,12],error:[4,10,5,6],loop:[10,7],pack:9,pragmat:[],motd:[9,7,11],max_client:7,readm:[],jpg:[],itself:[9,5],cento:[0,10,6],unmount:6,fedora:[0,12],grant:6,belong:9,exit_json:4,higher:10,optim:1,painless:3,moment:9,temporari:[],user:[0,1,3,6,5,4,7,9,10,11,12],yesterdai:3,recent:5,lower:[3,5],task:[3,1,5,6,7,10,11],lib:4,older:6,entri:3,spent:5,expens:9,endfor:10,spend:5,explan:4,ec2_monitor:9,mysql:6,love:[],centos6:9,shortcut:4,async_wrapp:4,appli:[8,10,6,7],input:[10,4],bin:[0,6,4,7,8,9,10,11],march:4,format:[3,2,5,6,7,8,9,11],judgement:6,nginx:6,game:[3,5],quest:10,bobdata:6,bit:[10,5,6,7],ec2_ownerid:9,xaby9ud5brbfvkedu:6,name_of_fact:[],knock:5,capital_of_assyria:[],signal:5,"98dbcgqw5hme89cjgzro5ktkc5yu":6,manifest:5,"boolean":[4,2],popular:[3,12],postgresql_db:6,often:[9,10,5,6,1],simplifi:11,creation:11,some:[0,1,3,6,5,4,7,8,9,10,11,12],back:[0,5,10,7,11],scale:[5,10],ec2_tag_kei:9,per:[9,10],pem:0,larg:[5,10],either:[9,10,5,6],machin:[0,1,3,6,5,4,7,11],object:4,run:[0,2,3,6,5,4,7,8,9,10,11,12],step:[3,10,5,6,7],squeez:6,meantim:5,major:9,impor:[],ec2_launch_tim:9,othervar:[],ansible_eth0:[10,6],block:10,fulfil:7,steelhous:12,primarili:[],unreach:7,intl:[],within:[9,8,5,10,7],contributor:12,chang:[0,1,3,6,4,7,8,10,11],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:6,ansible_python_vers:6,group_nam:10,question:[0,1,2,3,4,5,6,7,8,9,10,11],fast:[0,5,3],custom:[3,5,10],includ:[1,6,4,7,8,9,10,11,12],suit:[5,7],forward:3,datastructur:9,foosbal:[8,6],lint:2,link:[4,6],newer:0,line:[0,2,3,6,5,4,7,8,9,10,11],info:[9,6,11],concaten:6,consist:4,caller:6,planet:3,schmooz:12,ec2_dns_nam:9,highlight:[],similar:[10,9,6,11],curv:[3,5],module_common:4,constant:1,parser:4,doesn:[3,9,10,11,2],repres:[9,7,2],chat:[0,2,3,6,5,4,8,9,11,12],bracket:8,coder:5,crypt:[6,11],chgrp:[],likes_emac:2,transport:[0,5,3],peopl:[3,10,12],nice:[3,7],draw:3,asciidoc:[],meaning:[],far:[11,2],hello:0,jupit:[],pluggabl:[3,5],code:[0,1,3,6,5,4,7,9,10,11,12],async_statu:11,privat:[0,9,10],sensit:10,elsewher:11,friendli:3,send:10,autostart:6,sens:[0,9,6,7],fatal:[4,7],blindingli:[],sent:4,sensic:3,logtre:6,signfic:4,asdf1234l:6,implicitli:5,ec2_root_device_typ:9,relev:[10,5,4],recip:0,magic:[10,5,4,7],id_rsa:[0,11],michael:[3,12],fewer:10,"try":[0,3,5,4,7,9,10],p2xkxaczh6fc:6,pleas:[9,0,5],malici:5,impli:6,natur:[],focu:12,cron:[5,10],gmbh:12,download:[0,6],ansible_python_interpret:8,folk:[0,12],index:9,turn:[3,10,5,4],compar:5,access:[0,3,6,9,10,11],experiment:10,can:[0,1,2,3,4,5,6,7,8,9,10,11],chose:[],let:[0,2,3,6,4,7,9,11],ubuntu:[9,6],becom:10,sinc:[9,6,1,11],great:[3,1,5,4,7,10,12],convers:8,hypervisor:6,technolog:[3,12],"_some_str":7,later:[0,1,6,4,7,8,10,11],typic:[5,7,11],maker:12,control:[3,1,6,5,4,7,8,9,10,11],fstab:6,heart:9,win:[],app:[5,10],apt:[10,6,1,11],api:[9,3,4,5,6],cloud:5,fed:[6,7],from:[0,1,2,3,4,5,6,7,8,9,10,11,12],usa:8,commun:[9,3,5,7],"8b3satjxmpgbfbueebwubk5ejl":6,doubl:11,upgrad:[6,7,11],next:[0,7,8],few:9,usr:[0,6,4,7,8,9,11],sort:[5,6,12],dbserver:[8,10,1],impress:10,sbin:[10,6,7,11],trail:1,train:5,login_password:6,ansible_nocolor:10,starter:[4,7],account:[0,6,7,11],chdir:6,retriev:10,tunnel:3,alia:[8,4],openjdk:6,alic:7,ec2_ramdisk:9,fetch:[10,6],proof:4,employe:[5,2],tar:0,process:[3,5,6,7,11],lock:[5,10],sudo:[0,3,5,6,7,11],high:[4,11],knows_oop:2,tag:[0,10,9,6],tab:7,tarbal:[],onlin:2,surfac:[3,5],orson:5,lame:2,mysql_root_password:6,"_assembl":[],lepton:4,subdirectori:6,srv:[10,9,6,7,11],panic:10,stock:[],express:[3,2,4,7,9,10],gentoo:0,watch:3,attent:11,tier:3,philosophi:3,ansible_host:0,drop:4,orchestr:[3,5,7],correspond:6,element:[10,9,4],issu:[0,5,1,3],allow:[0,1,5,4,9,10,11],aws_secret_access_kei:9,move:[6,7],elit:2,comma:[9,6],loginpass:6,release_vers:10,bunch:6,somecommand:7,taboot:5,infrastructur:[0,1,3,5,7,8],anyon:5,ansible_product_uuid:6,dag:12,greater:8,python:[0,2,3,6,5,4,8,9,10,11],auto:[9,4],dai:[3,5],devel:[],mention:[4,1,7],rubygem:11,instead:[0,1,5,6,10,11],strive:4,multiprocess:5,anyth:[9,4,5,6],edit:[0,9,6],slide:3,mode:[0,5,6,7,10,11],grok:3,bump:0,usernam:[],ec2:[3,9],our:[3,12,11,2],patch:5,pitfal:4,special:9,out:[3,1,6,5,4,7,8,9,10,11],variabl:[0,1,3,6,5,4,7,8,9,10,11],reboot:[6,7,11],security_group_:9,rel:[8,6,1],"_default":6,leverag:0,ref:[],login_host:6,red:[9,3,5,4,11],clarifi:[],insid:[10,9,4],unpars:4,ansible_machin:6,dictionari:[10,9,4,2],releas:[0,1,5,6,7,10],include_ansible_module_common:4,indent:2,could:[9,10,5,4,7],put:[0,1,6,7,8,10,11],fqdn:10,keep:[0,1,4,8,9,10],outsid:[9,4],adrian:5,retain:5,stuck:7,localdomain:6,softwar:[3,1,5,6,9,10,11],qualiti:4,scene:6,echo:[0,9,10,11],date:[0,4],puppet:[9,3,5,6],submit:[5,4],owner:[6,11],prioriti:6,ansible_lo:6,perfectli:0,mkdir:11,system:[0,1,3,6,5,4,7,8,9,10,11],messag:[9,4,5,6],attack:[3,5],pattern_goes_her:8,termin:11,"final":6,ipv4:[10,6],shell:[3,1,6,4,7,9,11],ec2_descript:9,"var":[8,10,6,1,7],rst:[],nobodi:4,priveledg:6,dive:7,richer:5,intervert:10,charact:[9,2],sweden:12,favorit:[5,10],deprec:8,sysadmin:5,ansible_processor_cor:6,have:[0,1,2,3,4,5,6,7,8,9,10,11,12],close:[3,4],need:[0,1,2,3,4,5,6,7,8,9,10,11],cfengin:5,border:[],paramiko:[0,5],min:6,mix:[8,10,7],baisc:[],tag_name_web:9,which:[0,1,2,3,4,5,6,7,8,9,10],datacent:[8,1],with_item:[10,6],divers:3,singl:[1,5,6,7,9,10,11],ec2_security_group_nam:9,unless:[10,5,6,7],deploy:[11,0,5,7,3],who:[3,9,6,7,12],salli:6,discov:[3,10,7],deploi:[3,5,6,7,10,11],comparison:[3,5],why:[5,1],serol:6,urg:1,inventory_hostname_short:10,url:6,gather:[10,5,6,7],request:6,self_destruct_countdown:8,snapshot:6,built:[9,0,5,10,11],fact:[3,6,5,4,7,10,11],text:[],verbos:[4,6,7],bring:[5,7],playbook:[0,1,2,3,4,5,6,7,8,9,10,11],trivial:[0,4,9,6,3],anywai:8,varnam:7,redirect:11,locat:[8,10,6,7],tire:5,should:[0,1,2,3,4,5,6,7,9,12],ansible_swapfree_mb:6,won:[7,11],ec2_root_device_nam:9,"5px":[],local:[10,5,6],something_els:4,contribut:[0,11,12,3],pull:[9,5,10],familiar:9,autom:[5,1,11],somevar:10,increas:10,ansible_ssh_port:[],enabl:[4,6],organ:[6,1,12],bounc:[6,7],sha:6,stuff:[3,6,11],integr:[3,9,6],contain:[3,1,5,4,7,10],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:6,view:3,legaci:6,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:6,nodeinfo:6,skynet:6,gmail:[],statu:[4,10,6,11],extend:[3,5,10,1,7],mainli:[5,10],state:[1,6,5,4,7,8,10,11],viper:10,progress:[],email:[3,1,12],kei:[0,2,3,6,5,4,7,9,10,11,12],homedir:6,tempfil:7,job:[11,2],entir:[3,1,5,4,7,8,9,10],homebrew:0,"2pm":3,addit:[1,6,4,7,8,9,10],southeast:8,admin:[3,9],goal:[7,11],equal:[5,4,11],ohai_foo:11,etc:[0,3,5,6,7,8,9,10,11],instanc:[8,10,9,6,7],comment:[4,6,1],english:6,guidelin:4,chmod:[4,9,6,7],distil:5,rpm:[0,4],mailto:[],quit:[0,4,1],evalu:[10,11],platform:[10,5,6,12],addition:[10,7],decent:[],compos:7,compon:[],json:[2,6,5,4,9,10,11],besid:4,treat:[5,4,1],ungroup:[],immedi:[10,6,7],"2677m":6,yournam:[7,11],capistrano:5,global_var:1,vmware:6,togeth:[6,1],minim:[0,4],ador:3,atlanta:[8,9,11],present:[3,4,10,6,1],authorized_kei:[0,6],multi:[3,5,7],plain:3,align:[],ansible_virtualization_typ:6,defin:[10,9,6,7],ultra:3,layer:[9,5],almost:[5,6],virt:6,site:[5,10,1,12],lightweight:9,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,9],cross:5,member:[6,2],handl:[3,4,10,6],inc:6,ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12],difficult:5,http:[4,9,6],structur:[10,6],denot:8,effect:[],libvirt:6,php:11,distutil:0,audit:[3,10,1],off:[3,5,10,1],center:[],seth:5,exampl:[0,1,2,6,5,4,7,8,9,10,11],command:[0,3,6,5,4,7,8,9,10,11],filesystem:10,undefin:6,latest:[0,6,7,11],lest:3,tunabl:1,distanc:5,paus:6,less:[0,5,3],additon:0,starbuck:10,heavili:5,skill:2,simultan:11,web:[9,5,11,12],host5:9,cleanup:10,host3:[8,9],host2:[8,9],host1:[8,9],smart:11,knob:1,branch:[0,6],xmlrpc:9,dest:[10,9,6,7,11],piec:9,know:[2,6,5,4,8,9,10],nor:[],password:[0,5,6,7,10,11],recurs:[6,11],python3:0,python2:0,loss:5,motorola:3,like:[0,1,2,3,4,5,6,7,8,9,10,11],success:[4,6,7],amazonaw:9,necessari:11,lose:11,async:10,architectur:[3,5,10],page:[0,5,11,2,3],ansible_hostnam:[10,6,11],shed:5,revers:[3,6],captur:4,twitter:[],linux:[0,5,6,12,3],"export":[0,9],home:6,librari:[6,1,2],tmp:[9,6,7,11],lead:[5,12],avoid:[11,0,6,7,3],thank:5,overlap:[],update_cach:6,encourag:[10,5,4,1,7],slight:9,importerror:[],usag:[1,6,5,4,8,10,11],symlink:[0,6],vhost:7,host:[0,1,3,6,5,4,7,8,9,10,11,12],although:4,simpler:[5,11],about:[0,1,2,3,4,5,6,7,9,10,11],actual:[4,10,5,6],disabl:7,ntp_server:[8,11],own:[1,6,5,4,7,9,10],automat:[4,9,6,1,11],ec2_public_dns_nam:9,some_serv:8,hang:7,merg:[5,4],transfer:[4,6,7,11],intention:[],trigger:[5,6,7],"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":6,replac:[],biggest:12,individu:[8,1],"function":4,simplejson:[0,6],subscrib:[],nnwugi:[],continu:[10,4],ec2_plac:9,eas:5,eat:11,count:[10,7],succe:4,made:[3,6,5,4,7,8,10],whether:[9,4,5,6,1],arg2:6,writeabl:7,asynchron:[10,7],record:2,below:[0,9,6,7],limit:[10,11],otherwis:[10,4],problem:[3,5,2],epel:0,pin:6,is_favcolor_blu:10,filenam:[10,6],ec2_tag_nam:9,implement:[9,5,4],ini:[8,9],mountpoint:6,ing:6,probabl:[0,5,4,1,7],boot:6,detail:[9,4,7,11],virtual:[6,7],capabilit:[],other:[0,1,2,3,4,5,6,7,8,9,10,11,12],futur:[10,4,1],rememb:[7,11],varieti:[9,5,4],riak:12,ec2_external_inventori:9,repeat:[10,1],"class":[9,4,7],ansiblemodul:4,debian:[0,10,6],stai:10,sphinx:[],amp:[8,9],scientif:0,reliabl:5,rule:[10,1,11],portion:[8,6],emerg:3,name_of_host:[],"8btwaryr":6},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file +Search.setIndex({objects:{},terms:{facter_operatingsystem:11,kickstart:[4,11],comprimis:3,poorli:[],four:[9,13],prefix:[11,10,7,8,12],sleep:11,forget:[11,12],whose:11,tweet:13,ebuild:0,aur:0,under:[11,8],spec:8,everi:[0,1,2,8,11,12],risk:11,vastli:8,ansible_virtualization_rol:7,redact:7,upstream:0,affect:[5,7],macaddress:7,showcas:5,ansible_librari:[],shlex:5,vars_prompt:[11,1],saltstack:[],x86_64:[10,7],awwxvv:7,seper:[1,6,7,8,9,11],direct:[6,7,8],chef:[4,3,6],second:[10,11,12],tag_key_valu:10,blue:11,hide:11,thunder:6,children:9,constrast:4,"new":[11,6,7],net:[0,2,7,6,5,9,10,12,13],ever:[3,10,5,8,9],told:8,unpars:5,abov:[7,5,8,10,11,12],controlmast:[0,6],eckersberg:[6,2],hera:[],never:[10,5,6,7],here:[0,1,3,7,5,8,10,11,12,13],herd:6,"malm\u00f6":13,path:[1,7,5,8,9,10,11,12],interpret:9,datetim:5,permit:[],aka:11,ansible_ssh_arg:0,somethingels:11,brought:[],unix:[3,6],cobblerd:10,ec2_:10,total:8,unit:[4,5],highli:5,describ:[4,1,8],would:[0,1,4,7,6,5,8,9,10,11,12],h3d850bdf:[],ansible_memtotal_mb:7,noarch:0,program:[3,2,4,7,6,5,8,12],overhead:3,typo:5,recommend:[5,7,1],type:[4,7,6,5,10,11],tell:[0,3,4,7,9,12],notif:6,notic:6,warn:5,phone:4,exce:4,ec2_architectur:10,relai:8,ansible_transport:0,must:[5,11,10,7,8],join:3,restor:7,setup:[0,1,3,4,7,5,8,10,11,12],work:[0,1,3,4,6,7,8,9,10,11,12],erb:6,virttyp:7,ansible_ssh_host_key_rsa_publ:7,root:[0,1,3,6,8,11,12],scpnmy8rks7fyk8ulx0pei:7,os_default:11,give:2,rpath:3,indic:[7,8],app_serv:11,somefil:8,want:[0,1,2,4,5,6,7,8,10,11,12],end:[4,5,6,7,8],hoc:[3,4,6,7,8,12],quot:[11,12],song:4,how:[1,2,4,7,6,5,8,9,10,11,12],hop:6,yum:[0,1,7,5,8,11,12],perspect:10,updat:[11,7,12],dialect:4,recogn:[8,12],passwordless:12,after:[1,4,7,6,5,8,9,10,12],lab:[3,6],diagram:[],befor:[3,4,7,6,5,8,11,12],ohai_:[7,8],ec2_image_id:10,arch:0,parallel:[3,4,6,8,11,12],attempt:8,interpol:11,ansible_product_seri:7,bootstrap:[3,6,7],credenti:12,exclud:9,greek:[],unpaus:7,maintain:[0,10,5],environ:[0,11,10,7],enter:11,exclus:11,idontknow:[],order:[3,6,7,1,8],oper:[4,11,7,8,12],frontend:11,over:[0,3,4,6,9,10,11,12,13],failur:[10,11,6,5,8],orang:2,becaus:[1,2,4,6,5,10,11,12],ec2_previous_st:10,rpmbuild:0,ansible_interfac:7,zeu:[],gather_fact:11,vari:11,myfil:7,streamlin:11,exit_json:5,cli:[10,12],img:[],fix:0,better:[7,12],offic:3,easier:[1,2,4,6,5,12],them:[0,1,2,3,4,5,6,7,8,9,11,12],thei:[3,7,6,5,8,9,10,11,12,13],fragment:7,etc_acme_conf_acm:1,safe:[0,8],ec2_ten:10,"break":[4,8],band:4,glorifi:[],jinja2:[0,4,6,7,8,11,12],ec2_ip_address:10,mgmt:10,httpd_sys_content_t:7,ec2_region:10,choic:[0,5],vidal:6,bonu:10,timeout:[4,11],each:[1,2,4,7,6,5,8,9,10,11],debug:[4,2],side:3,mean:[2,4,7,6,5,8,10,11],list:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],playbooks2:[],logo:[],some_password:11,contend:6,network:[3,6,11],dss:7,content:[4,11,5,8],dsl:4,adapt:[10,7],got:6,forth:8,a1b1c1d1:10,site_fact:[11,5],ntp:[9,12],nightmar:3,free:[0,6,7,10,11,13],standard:[9,5],dotnet:2,fixm:[],md5:5,reconfigur:[6,11,1],openssh:[0,6,3],traceback:5,isv:13,isn:[3,6],rang:[3,7],render:7,clariti:4,wast:[],restrict:5,hook:[],instruct:[0,6],alreadi:[0,3,4,7,6,5,8,10],van_halen_port:8,massiv:3,primari:[10,7],rewritten:[],top:[1,4,6,5,8,11],sometim:[11,7],destination_vari:10,master:10,too:[3,2,6,5,10,12],similarli:[10,11],john:[6,2],iptabl:[],ansible_memfree_mb:7,tool:[0,3,4,6,10,11,12],took:6,"80ghz":7,somewhat:10,technic:[0,10,7],freemem:7,silli:[],target:[4,9,1,8],keyword:[6,11],provid:[1,2,7,6,5,8,10,11,12],tree:[5,10,7],project:[0,1,2,3,4,6,5,8,11,13],ansible_distribution_releas:7,minut:[6,12],uses_cv:2,recheck:5,provis:6,fashion:6,behavior:[11,7,13],"_authorized_kei":[],runner:[4,10],ram:6,mind:[6,5],raw:[0,7],aforement:9,seem:[6,11,8],seek:7,someapp:7,ec2_spot_instance_request_id:10,contact:[0,10,7],even:[0,6,8,9,10,11,12],though:[0,1,3,4,5,6,7,8,10,11],bruce:0,limitless:11,what:[0,1,2,3,4,5,6,7,8,10,11,13],regular:8,bsd:[0,6],boxsubscrib:[],simplic:3,don:[0,1,3,7,6,5,8,9,11,12],doc:7,doe:[0,4,7,6,5,8,9,10,11,12],declar:8,wildcard:[4,9],libpq:7,came:10,cobbler_external_inventori:10,random:8,syntax:[3,1,2,6,8,11,12],kerber:[4,0,3],pkg:[11,7,8,12],radic:3,identifi:6,pki:6,ec2_private_ip_address:10,priv:7,involv:[4,5],absolut:[7,12],northeast:9,acquir:3,explain:[10,5],configur:[0,1,2,3,4,6,7,8,9,10,11,12],apach:[6,11,8,12],ec2_instance_typ:10,ec2_state_reason:10,ldap:10,stop:[0,1,2,7,6,5,8,9,10,11,12],amazon:10,saturn:[],cellspac:[],bar:[9,10,7,8],host_var:9,excel:[3,6,11,9],method:[10,6],reload:7,bad:5,respond:8,richer:6,resist:1,result:[3,4,6,5,8,10,11],fail:[10,11,6,5,8],hash:[9,11,10,5,2],hammer:[],best:[3,1,7,6,5,8,10,11],subject:[6,11],heterogen:1,databas:[3,11,10,7,8],discoveri:7,figur:6,simplest:[10,5],awai:[6,11],irc:[0,2,7,6,5,9,10,12,13],approach:[10,3,6,11],attribut:[11,7],login_us:7,manpag:[],extens:6,kitchen:13,easi:[0,1,3,4,5,6,7,9,11,12],howev:[0,6,5,12,9],against:[3,4,6,8,9,11],logic:4,somelist:11,login:8,com:[0,7,5,9,10,13],compromis:6,assur:[11,8],height:[],guid:[],assum:[9,10,7],speak:[4,7],multiplay:3,ansible_library_path:5,three:[3,7,9],been:[10,3,6,7,12],much:[3,2,6,7,8,11,12],interest:[0,10],basic:[0,1,2,6,5,8,9,10,11,12],tini:11,quickli:[3,12],life:3,recomend:5,nobodi:5,ani:[0,1,3,4,5,6,7,8,10,11,12],mysql_us:7,dave:4,enterprisei:10,child:3,emploi:2,ugli:11,exception:6,east:10,servic:[1,4,7,5,8,9,10,11,12],ec2_security_group_id:10,vars_fil:[11,1,8],aim:6,ain:4,tabl:[],contributor:13,conf:[1,7,8,10,11,12],module_nam:[9,10],somekei:5,sever:[2,4,6,8,10,13],cfengin:[4,6],inventori:[0,1,3,4,7,8,9,10,11,12],perform:[0,6,11,8,3],suggest:7,make:[0,1,4,7,6,5,8,9,10,11,12],format:[3,2,4,6,7,8,9,10,12],complex:[3,6,11,8],split:[9,5],complet:[1,2,4,6,8,10,11],wheel:[11,7],ansible_arch2:[],fragil:[],selevel:7,rail:6,hand:11,rais:[11,5],ownership:12,refin:[],tune:11,speakerdeck:3,kept:[6,8],scenario:[4,10],ansible_:11,hypothet:[],deal:[5,7],tho:[],client:[],"_concatenated_valu":[],thi:[0,1,2,3,4,5,6,7,8,9,10,11,12],endif:11,programm:[10,6],everyth:[0,11],left:[],protocol:7,just:[0,1,2,3,5,6,7,8,10,11,12],photo:13,laptop:10,human:[8,2],braces_syntax:[],yet:[0,10,7,12,3],languag:[0,2,3,4,5,6,7,8,9,10,11],expos:1,spread:3,els:[0,5,8],ffffff:5,save:[5,11,7,8],hat:[4,3,6],opt:7,applic:[3,4,6,7,8,10,11,13],quirk:2,fusion:7,background:[4,12],daemon:[4,6],specif:[1,4,6,5,8,9,10,11,12],arbitrari:[6,11],manual:[6,8,12],remind:[11,5,1],el6:7,unnecessari:[],groups_logo_sm:[],right:[],ansible_form_factor:7,maxim:6,dead:3,born:6,intern:[10,5],heritag:[],successfulli:[3,10],txt:[7,12],forcibl:[],bottom:[4,8],tracker:[0,3],somelog:7,foo:[7,8,9,10,11,12],localhost:7,core:[3,4,7,6,5,12],plu:[],sensibl:0,web2:10,web1:10,promot:[],repositori:1,peer:6,"super":3,chapter:8,sshd:3,postgresql:7,eat:12,surround:12,simul:11,"2ydx8":7,commit:1,produc:[4,5,7,13],xyz:[],encod:7,down:[10,7,8],contrib:5,install_recommend:7,storag:9,eth0:7,ec2_vpc_id:10,git:[0,1,7,6,5,9,11,12],fabric:6,wai:[0,1,4,7,6,5,8,9,10,11,12],support:[0,1,3,4,5,6,7,8,10,11,12],happi:3,avail:[0,1,2,4,5,6,7,8,9,10,11,12],gif:[],reli:[3,6,11],gid:7,wordpress:8,call:[1,2,4,7,6,5,8,9,10,11],war:3,fork:[4,6,11,12,10],head:[7,12],python26:0,form:[5,11,7,8,2],offer:4,forc:[4,0,7],batman:0,forg:7,groupfil:9,"true":[0,11,5,8,2],freenod:[0,2,3,7,6,5,9,10,12,13],absent:[5,7,1,12],inquir:5,maximum:11,until:[11,1],ansible_fqdn:7,rerun:8,featur:[0,1,3,6,7,8,9,11],"abstract":6,fedoraproject:[],exist:[3,6,7,8,9,10,11,12],door:6,ship:[4,5,6,7],check:[5,11,7,12],assembl:7,self_destruct_countdown:9,encrypt:6,tip:[9,11,1,8],role:[11,7,1,8],test:[0,4,7,6,5,10],tie:10,unlimit:[],maxrequestsperchild:9,assmebl:7,relat:4,intend:5,phoenix:9,devop:3,intent:[],consid:[5,1,8],faster:[4,11,5],anywher:[],ignor:[11,5,8],time:[0,1,2,6,5,8,9,10,11,12],push:[4,3,6,11,8],concept:[4,10,11,1,12],ansible_hostnam:[11,7,12],vpc:10,chain:4,"5rxgmiicbrh":7,skip:[11,8],consum:6,invent:[],skim:3,fail_json:5,operatingsystem:11,decid:[6,5,8,12],middl:[],depend:[0,7,6,5,11,12],zone:10,graph:[6,13],readabl:[1,8],decis:11,southwest:9,sourc:[0,1,2,3,4,5,6,7,8,10,11,12,13],string:[5,7,8],condit:[11,8],word:[3,10],brows:5,jdk:7,administr:[],level:[4,7,8,2],did:[4,11,10,5],passno:7,item:[11,10,7,2],team:6,quick:0,ansible_product_nam:7,prevent:5,slower:0,trend:7,ec2_platform:10,anaconda:11,port:[9,6,12],favcolor:[11,10,5,12],ansible_distribution_vers:7,current:[0,11,6,5,12],suspect:[],ceec4eif7ya:7,gener:[0,4,6,5,8,10,11,12],address:[1,7,6,5,9,10,11],along:[5,8],wait:11,box:[3,7,12],precursor:3,extrem:[4,0,11,6,5],bob:[7,8],commonli:[12,2],ourselv:8,overrid:[0,10],regardless:[6,8,2],extra:[6,11,1],tweak:1,modul:[0,1,3,4,5,6,7,8,10,11,12],userdel:7,prefer:[9,11,5,12],mzdywqlw:7,instal:[0,3,4,7,6,5,8,11,12],mobil:7,httpd:[9,11,7,8,12],hyperspac:6,prove:11,is_cento:11,univers:13,visit:3,perl:[3,12],live:[0,11],handler:[4,7,1,12,8],criteria:11,msg:[10,5],scope:7,checkout:[0,3,4,7,5,11],ntpserver:10,idempot:[3,4,7,6,5,8,12],share:[0,3,4,5,10,11],claus:11,enhanc:4,templat:[1,4,7,6,5,8,10,11,12],easiest:[0,10,11,3],get_xml:7,ibm:3,module_arg:10,prepar:[],uniqu:10,cat:[],whatev:[3,11,5],purpos:[3,9,7,1,8],boilerpl:[4,5],claim:1,hostvar:11,argument_spec:5,chip:3,agent:[0,6,12,3],critic:3,occur:8,alwai:[1,4,7,6,5,8],multipl:[3,1,4,6,7,8,9,10,11,12],ping:[0,10,7],uptim:10,write:[3,1,2,4,5,6,7,8,11,12],purg:7,pure:4,somevalu:[11,5],parameter:8,map:[10,8],product:11,mar:[],max:12,clone:[0,5],usabl:8,membership:[11,12],mai:[0,1,2,3,4,5,7,8,10,11,12],underscor:10,data:[3,2,4,7,6,5,8,9,10,11,13],man:[],poseidon:[],practic:[3,1,2,4,6,7,8,11],seuser:7,explicit:[],predic:7,inform:[10,6,11,8,12],"switch":6,mango:2,combin:2,talk:[4,0,8,9],ender:6,ec2_statu:10,nbsp:[],ec2_id:10,still:[0,4,6,5,8,10,11],pointer:5,ec2_virtualization_typ:10,facter_:[7,8],jid:12,overlord:[],group:[0,1,2,3,4,5,6,7,8,9,10,11,12],monitor:[3,10],polici:[3,7],yaml:[3,1,2,4,6,8,9,11],curli:12,intl:[],mail:[0,1,2,3,5,6,7,8,9,10,11,12,13],job_statu:[],main:[3,1,4,5,8,10,11],basenam:7,security_group_pete_s_fancy_group:10,non:[3,4,7,5,8,9],env:[4,0],contriv:[],initi:7,l6pmiam1a8ywep:7,half:6,now:[0,3,7,6,5,8,10,11,12],discuss:[4,6],setyp:7,shoudl:7,halon_system_timeout:9,term:[4,5,12],name:[1,2,4,7,5,8,9,10,11,12],config:[4,3,10,8],didn:[4,6,12],crypto:3,separ:[10,8],rock:4,domain:4,arg1:7,laserllama:3,yeah:[],wrap:1,backport:[0,7],facter:[11,6,7,8,12],happen:[10,6,5],likes_emac:2,subnet:10,shown:5,space:[3,6,7],infrar:[],profil:10,intermix:[],skylin:13,internet:3,correct:[10,6,11,8,2],ksmeta:10,lag:7,state:[1,7,6,5,8,9,11,12],migrat:3,argv:5,args_fil:5,theori:8,org:[0,7,12,9],ymwaaaebalnasqn10tngsrde5arbsw8ctojqlyybciqgpytzw8zenerfxt7ij3fw3jh:7,card:6,care:[7,8],reusabl:[4,5],suffici:11,frequenc:11,synchron:[11,8],thing:[0,1,2,4,6,5,8,9,11,12],place:[4,3,5],raleigh:[3,12,9],router:7,think:[11,6,5,1],frequent:[4,10,11],first:[0,3,7,6,5,9,11,12],origin:7,directli:[4,7,5,8,9,10,12],onc:[1,6,5,8,9,11],arrai:11,yourself:8,fast:[0,6,3],oppos:12,open:[11,6,5,8],tomorrow:13,somegroup:7,given:[1,4,6,7,11,12],args_data:5,convent:[10,5],width:[],fierc:[],white:5,friend:13,especi:[3,6,11,1],copi:[0,4,7,10,11,12],specifi:[0,2,4,7,6,5,8,10,11,12],retyp:0,netmask:7,github:[0,1,2,3,7,5,8,10,11,13],mostli:1,than:[0,1,2,4,5,6,7,8,10,11,12],cmdb:10,wide:6,ec2_private_dns_nam:10,were:[6,11,8,12],pre:[],sai:[0,3,6,7,8,11,12],nicer:[],id_webservergroup:10,argument:[4,7,5,8,9,10,12],dash:[10,2],loki:[],sat:6,engin:13,squar:[],alias:5,destroi:7,note:[0,7,5,8,10,11,12],altogeth:3,ideal:6,denomin:1,take:[4,7,6,5,8,12],noth:[7,8,2],channel:[0,2,3,7,6,5,9,10,12,13],begin:[12,2],sure:[4,10,11,8,12],normal:[10,12],track:[4,0,11,12,9],beta:[],pair:[10,5,2],adopt:6,meanwhil:6,runtim:11,mysql_db:7,show:[11,5,8,12],cheat:6,aggregr:5,geographi:1,permiss:[0,12],hack:[4,0,5],help:[0,1,2,3,4,5,6,7,8,9,10,11,12],xml:2,onli:[0,3,7,6,5,8,10,11,12],explicitli:[7,8],transact:11,activ:[7,13],behind:[6,7],dict:5,analyz:11,analyt:13,nearli:[7,2],variou:[4,11,6,7,8],get:[0,2,3,4,5,6,7,8,10,11,12,13],soon:[],repo:[5,7,12,9],ssl:[3,6],cannot:[11,7,8],ssh:[0,3,4,6,7,9,10,11,12],requir:[0,1,3,4,5,6,7,10,11,12],some_file_path_foo:1,through:[4,0,7,12,3],where:[0,1,4,7,6,5,10,11],summari:8,wiki:[],hierachi:[],testserv:7,ansible_product_vers:7,fff:[],ansible_distribut:[11,7],concern:8,detect:[4,7],kei:[0,2,3,7,6,5,8,10,11,12,13],innov:[],review:[1,4,6,7,8,11],enumer:11,enough:[9,6,12],ansible_system_vendor:7,between:[0,1,3,6,8,11],"import":[4,5,8,10,11,12],across:[10,6],fundament:4,guitar:4,cycl:0,come:[4,3,5,1,8],timmi:8,region:10,contract:10,tutori:5,abc123:10,mani:[4,7,5,8,10,11,12],setenforc:8,among:[6,11],color:[11,5],overview:2,inspir:[4,6],period:[4,11],colon:[9,8],inventory_hostnam:11,homebrew:0,typic:[6,8,12],poll:[4,11,12],other_vari:11,coupl:6,west:10,rebuild:[],rubi:[3,2,7,6,5,11,12],those:[4,10,11,8,12],"case":[3,4,7,6,5,8,10,11,12],mount:7,md5sum:[],straighten:6,trick:8,cast:5,invok:4,cobbler:[4,3,6,10],default_releas:7,newhost:7,advantag:11,stdout:10,worri:[6,11],destin:[10,7],myapp:[11,12],rktgjk2httvs6gigvsuwwfod7:7,chkconfig:[],trival:5,http_port:[9,8],develop:[0,1,2,3,4,5,6,7,8,11],ansible_architectur:7,author:[3,7,1],media:13,same:[0,1,2,4,7,8,9,10,11,12],binari:[0,6],html:6,pad:[],pai:12,document:[3,1,2,4,6,5,8,10,11,12],week:[3,13],webserv:[3,1,7,8,9,10,11,12],closest:13,ec2_subnet_id:10,nest:[4,5,11,7],driven:[3,10],capabl:1,fruit:2,interventori:[],improv:[5,13],extern:[4,3,10,11,1],appropri:[10,11,6,7,12],markup:4,without:[4,0,6,5],promis:4,model:[3,6],roughli:0,execut:[0,1,3,4,5,6,7,8,10,11,12],when:[0,1,4,7,6,5,8,10,11,12],rest:[4,5],kill:8,speed:0,aws_access_key_id:10,versu:[0,6,1],europ:13,miscellan:[4,1],trigger:[6,7,8],except:[10,5],littl:[10,3,6],otherus:12,blob:10,notori:6,vulner:6,real:[0,11,8],ignore_error:11,around:[0,6],ohai:[11,6,7,8,12],read:[0,2,3,4,6,5,10,12],dark:10,mon:4,world:[0,6,11,8,13],intel:7,whitespac:1,realtim:13,ak123:10,integ:[],server:[3,6,7,8,9,10,11,12],rycsbf1d8e5ptxesxhqs4iq:7,output:[4,7,6,5,8,10],manag:[0,1,2,3,4,6,7,8,9,10,11,12],ec2_kernel:10,node:[0,3,6,7,8,10,11,12],sneaker:[],jquery_directori:7,titan:[],ansible_processor:7,noon:3,definit:[],legal:[5,1],moon:[],exit:[10,5,8],complic:[3,6],refer:[11,10,7,8,12],ansible_swaptotal_mb:7,power:[0,1,3,4,6,5,8,10,11],broken:[4,1],fulli:[0,7],"throw":[6,5],earlier:[4,8],src:[11,10,7,8,12],stone:5,central:[3,6,11],greatli:4,get_url:7,acm:[9,7,1,12],wolf:10,stand:4,act:4,industri:[3,6,13],mytempl:7,other:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],effici:[6,11],terminolog:10,somescript:7,multinod:6,puppetmast:3,your:[0,1,3,7,6,5,8,9,10,11,12,13],charli:7,stare:5,log:[5,11,6,7,8],area:[],aren:6,privileged_us:[],start:[0,1,2,3,6,7,8,10,12],interfac:[10,6],low:7,lot:[3,1,5,11,12,13],ipv6:7,bundl:1,vpc_destination_vari:10,congratul:0,longer:5,strawberri:2,dirti:[0,7],possibl:[1,5,8,9,10,11,12],"default":[0,3,4,7,6,5,9,10,11,12],ansible_fact:5,stacktrac:5,connect:[4,0,6,11,3],tasti:2,uid:7,creat:[0,3,6,7,8,10,11,12],certain:[11,6,7,8],deep:8,strongli:[6,1],mainli:[6,11],deferenc:[],file:[0,1,2,3,4,5,7,8,9,10,11,12],my_custom_fact_can_be_used_now:11,again:[10,6,5,8],halen:4,googl:[0,1,2,3,5,6,7,8,9,10,11,12,13],compel:[],orient:8,valid:[4,5],you:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],external_var:11,poor:5,sequenc:3,symbol:7,signficantli:0,briefli:8,"60k":[3,6],postgresql_us:7,directori:[1,2,4,7,5,8,11,12],invest:6,descript:[7,1,8],chown:7,potenti:[4,11],cpu:7,all:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],consider:10,selinux:[7,8],lack:[],mnt:7,month:0,scalar:5,abil:[6,8],follow:[0,6,7,9,10,11,12],alt:[],scp:12,nors:[],articl:3,dehaan:[3,13],mcollect:[],arbitari:2,introduc:3,liter:7,tag_name_redi:10,"1pm":3,fals:[11,5,2],faq:[3,6],util:4,mechan:4,fall:11,veri:[0,1,3,4,5,6,7,8,10,11,12],condition:8,database_serv:9,colleagu:4,pbx:13,sane:6,stderr:5,small:[10,3,6,11,2],testuser2:11,testuser1:11,enterpris:[0,13],zero:[5,8],design:[3,6,12,9],pass:[0,7,5,8,10,11,12],further:[6,11,2],sudo_us:8,deleg:[],sub:[],section:[0,1,6,8,9,11,12],abl:[3,11,1],delet:[7,8,12],abbrevi:2,version:[0,1,4,7,8,9,11,12],"public":[11,10,7],php:12,movement:3,hasn:6,full:[4,11,7,8],themselv:[],shouldn:[6,11],first_available_fil:11,strong:3,modifi:[10,5],valu:[2,4,7,5,8,10,11,12,13],search:13,ahead:[0,8],likin:6,memcach:[11,8],prior:11,amount:10,pick:[6,12],action:[4,11,10,7,8],via:[4,0,10,11,3],shorthand:[11,5],factnam:11,ec2_state_cod:10,managememnt:[],href:[],select:[1,4,7,5,8,9,11],distinct:[],ec2_stat:10,regist:4,two:[3,10,7,8,9],rhel:0,virt:7,taken:[4,6,8],kick:[4,3,11,12],more:[0,1,3,4,6,7,8,9,10,11,12],flat:8,desir:[5,1,8],hundr:13,flag:[0,8],particular:[4,7,8,9,10,11,12],known:[4,7],compani:[6,5,13],cach:[4,10,7],none:[0,10,7],pkgbuild:0,hous:[],launch:[11,8],dev:[6,7],remain:[],learn:[0,1,2,3,6,5,8,9,11],instantan:6,prompt:[11,8,12],yamllint:2,moduledev:[],accept:[5,7],minimum:[11,5,8],explor:[0,10],pong:7,cygat:13,cours:[6,11,1],newlin:[],secur:[3,4,6,7,10,11],rather:[4,11,6,5],anoth:[3,1,2,4,6,7,8,11,12],scienc:4,simpl:[3,1,2,4,6,5,8,10,11,12],css:7,distro:10,resourc:[5,11,6,7,8],referenc:[9,8],variant:0,fstype:7,ff0000:5,neccesssari:[],unlink:7,associ:[10,2],"short":[0,6,11],django:7,caus:0,rotat:8,xmpp:6,mission:3,uvh:0,scott:6,hierarchi:[],hell:3,suffer:6,paramet:[1,4,7,5,8,11],style:[5,11,7],psycopg2:7,cowsai:[4,11,8],pend:[],rapidli:[10,11],might:[9,11,10,5,8],wouldn:[10,6],good:[0,3,6,5,8,10,11],"return":[4,7,6,5,8,10,11],food:2,framework:[10,3,6],botnet:[3,6],odin:[],neccessari:[11,7],unlik:[6,8],authent:7,mysteri:11,easili:[0,3,6,10,11,12],achiev:5,found:[11,10,5],only_if:[11,8],id_rsa:[0,12],subsystem:[3,6,7],harm:[],mental:6,hard:[6,5],idea:[0,1,2,3,4,5,6,7,8,9,10,11,12],crontab:11,realli:[3,2,4,7,6,5,8],expect:[10,11,8],variablenam:[],beyond:[11,13],event:[4,5,6,7,8],ftp:7,safeti:[],bubbl:[11,7,8],print:[10,5],yaml_to_ini:9,qualifi:7,postgr:[7,8],proxi:[9,11],advanc:[0,1,3,4,6,8,10,11],pub:12,reason:[3,6,5,8,10,11],base:[3,11,6,7,1],believ:[4,6],ask:[4,0,8,12],bash:[0,6,5,12,3],basi:[4,8],pyyaml:0,sytem:6,daisi:4,drupal:13,omit:1,american:4,ansible_system:7,assign:[9,10,11,1],feed:[],sdwippefq74nppvuelhpkkaiojjnn1zuhfol:7,notifi:[1,4,7,6,5,8,12],obviou:[],feel:[10,11,2],exchang:11,number:[3,11,6,7,9],placehold:[4,11,8],done:[0,1,4,6,7,9,11],least:1,blank:7,stabl:0,fiction:4,differ:[0,1,3,4,6,7,8,9,10,11,12],list_vm:7,guest:7,script:[3,1,4,6,5,9,10,11,12],interact:[10,12],construct:[10,6,11,1,8],camelot:11,make_databas:7,statement:[5,8],banana:[],store:[4,9,10,7,13],option:[0,1,4,7,6,5,8,9,10,11,12],selector:4,part:[3,4,7,6,5,11],ec2_key_nam:10,consult:13,reinstal:[],cron:[6,11],kind:[6,5],grep:[],whenev:5,remot:[0,4,7,8,11,12],remov:[9,11,7,12],jqueri:7,reus:[6,11,8],architect:3,str:5,jvmdhw:7,toward:11,cleaner:11,comput:[10,6],seth:6,group_var:9,biggest:13,packag:[0,1,4,7,6,5,8,11,12],imagin:[],createhom:7,equival:[11,7],self:[6,5],also:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],build:[0,4,7,6,5,10],brace:12,distribut:[0,6,1,13,3],passwd:7,previou:11,reach:[4,3,1],most:[0,1,2,3,4,6,8,10,12],plai:[4,3,11,8],plan:6,alpha:7,filesystem:11,clear:1,cover:[10,6,11,12],dereferenc:[],clojur:5,clean:6,pars:[6,5],latest:[0,7,8,12],awesom:[3,7,8,13],commerc:13,ansible_processor_count:7,tri:4,alphanumer:10,devolv:[],mpd_ring:[],particularli:[10,11,8],fine:[0,5,1],find:[10,5,8],impact:[6,13],firewal:[3,11],nosql:13,pretti:[10,6,11],solut:[6,13],security_group_default:10,olympu:[],yml:[11,1,8],remedi:[4,11],long_running_oper:12,financ:3,nativ:[4,0,11],basho:13,him:13,restart:[1,4,6,7,8,9,12],mdehaan:[7,12],dollar_sign_syntax:[],common:[1,2,4,5,10,11],wrote:[4,5],set:[0,1,3,4,5,6,7,8,9,10,11,12],dump:[5,7],creator:13,security_group_webserv:10,see:[0,1,2,4,5,6,7,8,9,10,11,12,13],sec:11,arg:5,disadvantag:3,setsebool:8,analog:4,expert:[6,13],someth:[1,4,6,5,8,10,11],restructur:8,hold:11,experi:6,altern:[11,12],solo:[],numer:[],aserv:0,solv:[],tag_aws_cloudformation_log:10,foo_port:[],popul:10,both:[0,4,6,5,10,11,12],last:[0,3],delimit:7,boto:10,thor:[],uncrypt:8,context:7,whole:6,ec2_root_device_nam:10,load:4,simpli:[10,7,1,8],point:[11,10,7,1],instanti:[4,5],etc_other_conf_oth:1,header:9,shutdown:[11,7],suppli:7,asdf:[],backend:[],unsuccess:8,java:4,instrument:4,devic:[4,7],due:[0,6,5],empti:10,ran:3,escape_pod:9,strategi:6,wish:[0,1,2,8,10,11],fire:[3,6,11],imag:[],great:[3,1,4,6,5,8,11,13],gap:6,understand:[4,3,8],func:[4,3,6],educ:5,look:[3,7,5,8,9,10,11,12],straight:12,batch:6,"while":[3,6,11,1,8],unifi:[],smart:12,facter_hostnam:[8,12],error:[5,11,6,7],cleanup:11,loop:[11,8],pack:10,gimm:4,pragmat:[],motd:[10,8,12],max_client:8,readm:[],jpg:[],itself:[10,6],cento:[0,11,7],unmount:7,fedora:[0,13],grant:7,belong:10,shorter:5,higher:11,optim:1,painless:3,moment:10,temporari:[],user:[0,1,3,4,5,6,7,8,10,11,12,13],yesterdai:3,recent:6,lower:[3,6],task:[3,1,4,6,7,8,11,12],lib:5,older:7,entri:3,spent:6,expens:10,endfor:11,spend:6,explan:5,ec2_monitor:10,mysql:7,love:[],centos6:10,shortcut:5,async_wrapp:5,win:[],input:[11,5],bin:[0,4,7,5,8,9,10,11,12],march:5,transpar:0,folk:[0,13],judgement:7,nginx:7,game:[3,6],quest:11,bobdata:7,bit:[11,6,7,8],abduct:4,ec2_ownerid:10,like:[0,1,2,3,4,5,6,7,8,9,10,11,12],name_of_fact:[],knock:6,capital_of_assyria:[],signal:6,"98dbcgqw5hme89cjgzro5ktkc5yu":7,manifest:[4,6],api:[10,3,5,6,7],popular:[3,13],postgresql_db:7,often:[10,11,6,7,1],simplifi:[4,12],creation:12,some:[0,1,3,4,5,6,7,8,9,10,11,12,13],back:[0,6,11,8,12],mirror:4,scale:[4,6,11],ec2_tag_kei:10,per:[10,11],pem:0,substitut:4,mathemat:4,larg:[4,6,11],either:[10,11,6,7],machin:[0,1,3,4,5,6,7,8,12],object:[4,5],run:[0,2,3,4,5,6,7,8,9,10,11,12,13],step:[3,11,6,7,8],squeez:7,meantim:6,major:10,impor:[],ec2_launch_tim:10,othervar:[],ansible_eth0:[11,7],block:11,fulfil:8,doubl:12,primarili:[],pythonpath:[],within:[10,9,6,11,8],ensur:[0,6,7,8,11,12],bserver:0,rxp33wfphjwjwvhatfci1nrbaudqi:7,few:10,group_nam:11,question:[0,1,2,3,5,6,7,8,9,10,11,12],"long":[0,3,6,10,11,12],custom:[3,6,11],includ:[1,4,7,5,8,9,10,11,12,13],suit:[6,8],forward:3,datastructur:10,host5:10,foosbal:[9,7],lint:2,link:[5,7],newer:0,line:[0,2,3,4,5,6,7,8,9,10,11,12],info:[10,7,12],concaten:7,consist:5,caller:7,planet:3,schmooz:13,ec2_dns_nam:10,highlight:[],similar:[11,10,7,12],curv:[3,6],module_common:5,constant:1,parser:5,doesn:[3,2,4,10,11,12],repres:[10,8,2],chat:[0,2,3,7,6,5,9,10,12,13],coder:6,crypt:[7,12],chgrp:[],bracket:9,librari:[4,7,1,2],peopl:[3,11,13],nice:[3,8],draw:3,asciidoc:[],meaning:[],far:[12,2],hello:0,jupit:[],login_host:7,pluggabl:[3,6],code:[0,1,3,4,5,6,7,8,10,11,12,13],alien:4,update_cach:7,async_statu:12,privat:[0,10,11],sensit:11,elsewher:12,friendli:3,send:[4,11],autostart:7,sens:[0,10,7,8],fatal:[5,8],blindingli:[],sent:5,sensic:3,logtre:7,signfic:5,implicitli:6,ec2_root_device_typ:10,relev:[11,6,5],recip:[4,0],magic:[11,6,5,8],ansible_kernel:7,michael:[4,3,13],fewer:11,"try":[0,3,6,5,8,10,11],p2xkxaczh6fc:7,pleas:[10,0,6],malici:6,impli:7,natur:[],focu:13,jump:[0,3],gmbh:13,download:[0,7],ansible_python_interpret:9,append:7,index:10,turn:[3,11,6,5],compar:6,access:[0,3,7,10,11,12],experiment:11,can:[0,1,2,3,4,5,6,7,8,9,10,11,12],chose:[],let:[0,2,3,7,5,8,10,12],ubuntu:[10,7],becom:11,sinc:[10,7,1,12],convert:[10,5],convers:9,hypervisor:7,technolog:[3,13],"_some_str":8,later:[0,1,4,7,5,8,9,11,12],chang:[0,1,3,4,7,5,8,9,11,12],maker:13,employe:[6,2],fstab:7,heart:10,appli:[4,9,11,7,8],app:[6,11],apt:[11,7,1,12],"boolean":[5,2],cloud:6,fed:[7,8],from:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],usa:9,commun:[4,3,6,8,10],"8b3satjxmpgbfbueebwubk5ejl":7,steelhous:13,upgrad:[7,8,12],next:[0,8,9],ansible_python_vers:7,usr:[0,4,7,5,8,9,10,12],sort:[6,7,13],dbserver:[9,11,1],impress:11,about:[0,1,2,3,4,5,6,7,8,10,11,12],trail:1,train:6,login_password:7,ansible_nocolor:11,starter:[5,8],account:[4,0,7,8,12],chdir:7,retriev:11,tunnel:3,alia:[9,5],openjdk:7,alic:8,ec2_ramdisk:10,fetch:[11,7],proof:5,control:[3,1,7,6,5,8,9,10,11,12],tar:0,process:[3,6,7,8,12],lock:[6,11],sudo:[0,3,4,6,7,8,12],high:[5,12],knows_oop:2,tag:[0,11,10,7],tab:8,tarbal:[],onlin:2,surfac:[3,6],orson:6,lame:2,mysql_root_password:7,"_assembl":[],lepton:5,subdirectori:7,srv:[11,10,7,8,12],panic:11,stock:[],express:[3,2,5,8,10,11],gentoo:0,watch:3,attent:12,tier:3,philosophi:3,ansible_host:0,orchestr:[4,3,6,8],correspond:7,element:[11,10,5],issu:[0,6,1,3],allow:[0,1,4,6,5,10,11,12],aws_secret_access_kei:10,move:[7,8],elit:2,comma:[10,7],loginpass:7,release_vers:11,bunch:7,somecommand:8,taboot:[4,6],infrastructur:[0,1,3,4,6,8,9],anyon:6,therefor:4,ansible_product_uuid:7,dag:13,greater:9,python:[0,2,3,4,5,6,7,9,10,11,12],auto:[10,5],dai:[3,6],devel:[],mention:[5,1,8],rubygem:12,instead:[0,1,4,6,7,11,12],strive:5,multiprocess:6,anyth:[10,5,6,7],edit:[0,10,7],slide:3,mode:[0,4,6,7,8,11,12],subset:4,grok:3,bump:0,usernam:[],ec2:[3,10],our:[3,13,12,2],patch:6,some_serv:9,special:[4,10],out:[3,1,4,7,6,5,8,9,10,11,12],variabl:[0,1,3,4,5,6,7,8,9,10,11,12],twice:4,reboot:[7,8,12],security_group_:10,rel:[4,9,7,1],"_default":7,merg:[6,5],ref:[],reg:[],red:[3,4,6,5,10,12],clarifi:[],insid:[11,10,5],manipul:[7,12],ansible_machin:7,dictionari:[11,10,5,2],releas:[0,1,4,6,7,8,11],include_ansible_module_common:5,indent:2,could:[10,11,6,5,8],put:[0,1,4,7,8,9,11,12],fqdn:11,keep:[0,1,4,5,9,10,11],outsid:[10,5],adrian:6,retain:6,stuck:8,localdomain:7,softwar:[3,1,4,6,7,10,11,12],qualiti:5,scene:7,echo:[0,10,11,12],date:[0,5],puppet:[4,3,6,7,10],submit:[6,5],owner:[4,7,12],facil:4,prioriti:7,ansible_lo:7,perfectli:0,mkdir:12,system:[0,1,3,4,5,6,7,8,9,10,11,12],messag:[4,5,6,7,10],attack:[3,6],pattern_goes_her:9,termin:12,"final":[4,7],ipv4:[11,7],shell:[3,1,4,7,5,8,10,12],ec2_descript:10,"var":[9,11,7,1,8],rst:[],exactli:[5,11,7],priveledg:7,dive:8,daemonless:[],intervert:11,charact:[10,2],sweden:13,favorit:[6,11],deprec:9,sysadmin:6,ansible_processor_cor:7,have:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],close:[3,5],need:[0,1,2,3,4,5,6,7,8,9,10,11,12],asdf1234l:7,border:[],paramiko:[4,0,6],simplejson:[0,7],min:7,mix:[9,11,8],baisc:[],tag_name_web:10,which:[0,1,2,3,4,5,6,7,8,9,10,11],datacent:[4,9,1],with_item:[11,7],divers:3,singl:[1,4,6,7,8,10,11,12],ec2_security_group_nam:10,unless:[4,11,6,7,8],deploy:[0,3,4,6,8,12],who:[3,10,7,8,13],salli:7,discov:[4,3,11,8],deploi:[3,6,7,8,11,12],comparison:[3,6],why:[6,1],serol:7,urg:1,inventory_hostname_short:11,url:7,gather:[11,6,7,8],request:[4,7],pipe:12,snapshot:7,built:[0,4,6,10,11,12],fact:[3,4,7,6,5,8,11,12],text:[],verbos:[5,7,8],bring:[6,8],playbook:[0,1,2,3,4,5,6,7,8,9,10,11,12],trivial:[0,5,10,7,3],anywai:9,varnam:8,redirect:12,locat:[9,11,7,8],tire:6,should:[0,1,2,3,5,6,7,8,10,13],ansible_swapfree_mb:7,won:[8,12],suppos:[9,11,5,8],"5px":[],local:[4,11,6,7],something_els:5,contribut:[0,12,13,3],notat:4,familiar:10,pave:4,autom:[6,1,12],somevar:11,increas:11,ansible_ssh_port:[],enabl:[5,7],organ:[7,1,13],bounc:[7,8],sha:7,stuff:[3,7,12],integr:[3,10,7],contain:[3,1,6,5,8,11],grab:7,view:3,legaci:7,cthy5bws9kmyjmeo0kfumh8hy4maxdokhq7dhbpircjs5jptogxirezjba67r6:7,nodeinfo:7,skynet:7,gmail:[],statu:[5,11,7,12],wire:4,extend:[3,6,11,1,8],pattern:[0,1,3,4,8,9,10,11,12],written:[0,3,4,5,8,10,11,12],viper:11,progress:[],email:[3,1,13],ansible_ssh_host_key_dsa_publ:7,homedir:7,tempfil:8,job:[12,2],entir:[3,1,6,5,8,9,10,11],webapp:[6,12],"2pm":3,addit:[1,4,7,5,8,9,10,11],revers:[3,7],instant:4,southeast:9,admin:[3,10],goal:[8,12],equal:[6,5,12],ohai_foo:12,etc:[0,3,6,7,8,9,10,11,12],instanc:[4,7,8,9,10,11],comment:[5,7,1],english:7,guidelin:5,chmod:[5,10,7,8],structur:[4,11,7],distil:6,rpm:[0,5],mailto:[],quit:[0,5,1],pin:7,platform:[11,6,7,13],addition:[11,8],decent:[],compos:8,compon:4,json:[2,4,7,6,5,10,11,12],besid:5,treat:[4,6,5,1],ungroup:[],immedi:[11,7,8],"2677m":7,yournam:[8,12],capistrano:6,global_var:1,vmware:7,togeth:[4,7,1],minim:[4,0,5],ador:3,atlanta:[9,10,12],present:[3,5,11,7,1],authorized_kei:[0,7],multi:[3,6,8],plain:3,align:[],ansible_virtualization_typ:7,defin:[4,11,10,7,8],glossari:[4,3],ultra:3,layer:[10,6],almost:[6,7],demo:12,site:[6,11,1,13],lightweight:10,revis:0,michaeldehaan:[],surprisingli:[],halt:1,welcom:[3,10],parti:4,cross:6,member:[7,2],handl:[3,5,11,7],probabl:[0,6,5,1,8],ansibl:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],difficult:[4,6],http:[5,10,7],hostnam:[4,7,8,9,10,11],denot:9,upon:4,effect:4,libvirt:7,collat:7,distutil:0,pull:[4,6,11,10],audit:[4,3,11,1],off:[4,3,6,11,1],center:[],well:[0,1,3,7,6,5,8,9,10,11,12],exampl:[0,1,2,4,5,6,7,8,9,10,11,12],command:[0,3,4,7,6,5,8,9,10,11,12],choos:[0,3,4,6,7,8],undefin:7,usual:[8,12],lest:3,tunabl:1,distanc:[4,6],paus:7,less:[0,6,3],additon:0,detail:[10,5,8,12],heavili:6,skill:2,simultan:12,web:[10,6,12,13],add:[0,1,7,6,5,10,11,12],host4:10,host3:[9,10],host2:[9,10],host1:[9,10],match:[4,5,8],knob:1,rememb:[8,12],xmlrpc:10,dest:[11,10,7,8,12],piec:10,know:[2,7,6,5,9,10,11],nor:4,password:[0,6,7,8,11,12],recurs:[7,12],python3:0,python2:0,loss:6,motorola:3,xaby9ud5brbfvkedu:7,success:[5,7,8],amazonaw:10,necessari:12,lose:12,async:[4,11],architectur:[4,3,6,11],page:[0,6,12,2,3],unreach:8,shed:6,drop:5,captur:5,twitter:[],linux:[0,6,7,13,3],"export":[0,10],home:[4,7],transport:[0,6,3],tmp:[10,7,8,12],lead:[6,13],avoid:[12,0,7,8,3],thank:6,overlap:[],leav:[11,5,1],encourag:[11,6,5,1,8],slight:10,importerror:[],usag:[1,7,6,5,9,11,12],symlink:[0,7],vhost:8,host:[0,1,3,4,5,6,7,8,9,10,11,12,13],although:5,simpler:[4,6,12],sbin:[11,7,8,12],actual:[4,5,11,6,7],disabl:8,ntp_server:[9,12],own:[1,7,6,5,8,10,11],automat:[1,4,7,5,10,12],ec2_public_dns_nam:10,pitfal:5,hang:8,leverag:0,van:4,transfer:[4,5,7,8,12],intention:[],appl:2,"8agepocvjdhyzr7pahfxzgudgktgrl2qzryukcmwo1czbmbhci5fzimvths9":7,replac:4,hassl:3,individu:[9,1],"function":5,unexpect:4,subscrib:[],nnwugi:[],continu:[11,5],ec2_plac:10,eas:6,bug:[0,3],count:[11,8],succe:5,made:[3,7,6,5,8,9,11],whether:[10,5,6,7,1],arg2:7,writeabl:8,asynchron:[11,8],record:2,below:[0,10,7,8],limit:[11,12],otherwis:[11,5],problem:[3,6,2],epel:0,evalu:[11,12],is_favcolor_blu:11,filenam:[11,7],ec2_tag_nam:10,implement:[10,6,5],ini:[4,9,10],mountpoint:7,ing:7,inc:7,boot:7,starbuck:11,virtual:[7,8],capabilit:[],book:6,futur:[11,5,1],branch:[0,7],varieti:[10,6,5],riak:13,ec2_external_inventori:10,repeat:[11,1],"class":[4,10,5,8],ansiblemodul:5,debian:[0,11,7],stai:11,sphinx:[],amp:[9,10],scientif:0,reliabl:6,rule:[11,1,12],portion:[9,7],emerg:3,name_of_host:[],"8btwaryr":7},objtypes:{},titles:["Getting Started","Best Practices","YAML Syntax","Introducing Ansible","Glossary","Module Development","FAQ","Ansible Modules","Playbooks","Inventory & Patterns","API & Integrations","Advanced Playbooks","Command Line","Who Uses Ansible"],objnames:{},filenames:["gettingstarted","bestpractices","YAMLSyntax","index","glossary","moduledev","faq","modules","playbooks","patterns","api","playbooks2","examples","who_uses_ansible"]}) \ No newline at end of file diff --git a/who_uses_ansible.html b/who_uses_ansible.html index 0291a31a947..62b0a049873 100644 --- a/who_uses_ansible.html +++ b/who_uses_ansible.html @@ -27,7 +27,7 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - -Fork me on GitHub - - -
    - Ansible
    -
    - -
    -

    FAQ

    - -
    -

    Why Is It Called Ansible?

    -

    One of my favorite books is Orson Scott Card’s “Ender’s Game”. In the book, the Ansible is a method of instantaneous -long distance “hyperspace” communication with a large number of space ships. You should read it!

    -
    -
    -

    What inspired Ansible?

    -

    Back when I worked for Red Hat and working on Cobbler, several of us identified a gap between -provisioning (Cobbler) and configuration management solutions (cfengine, Puppet, etc). -There was a need for a way to do ad-hoc tasks efficiently, and various parallel -SSH scripts were not API based enough for us. So we (Adrian Likins, Seth Vidal, and I) -created Func – a secure distributed command framework.

    -

    I always wanted to have a configuration management system built on Func, but never -built it due to needing to spend time on Cobbler and other projects. -In the meantime, a John Eckersberg developed Taboot, -a deployment framework of sorts that sat on top of Func, using a YAML syntax very -much like what Ansible now has in Playbooks.

    -

    After trying to get Func running again recently at a new company, I got tired -of some SSL and DNS issues and decided to create something a bit simpler, taking -all of the good ideas from Func, and merging them with experience I learned from -working at Puppet Labs. I wanted something that was easy to pick up and was installable -without any bootstrapping, and didn’t suffer from the “I don’t want to learn X” mentality -that often impacted adoption of tools like Puppet and Chef among certain ops teams.

    -

    I also spent some time working with a couple of sites that needed to do large webapp deployments, -and noticed how complex various configuration management and deployment tools were to these -companies, compared with what they actually needed. Release processes were too complex -and needed something simple to straighten them out – but I really didn’t want to train -all the dev(ops) on Puppet or Chef, and they really didn’t want to learn them either.

    -

    I kept thinking, is there a reason for these programs to be so large and complicated? -Well, systems management is a little complicated, but no. Not really.

    -

    Can I build something that a sysadmin can -figure out in 15 minutes and get going, and then extend in any language he knows? -That’s how Ansible was born. It sheds ‘best practices’ for ‘you know your infrastructure -best’, and distills all of the ideas behind all of these other tools to the core.

    -

    Not only is Ansible very simple and easy to learn/extend, it’s configuration management, deployment, and ad-hoc tasks all in one app. And I think that makes it pretty powerful. It hasn’t really been done before.

    -

    I’d like to know what you think of it. Hop by the mailing list and say hi.

    -
    -
    -

    Comparisons

    -
    -

    vs Func?

    -

    Ansible uses SSH by default instead of SSL and custom daemons, and requires -no extra software to run on managed machines. You can also write modules -in any language as long as they return JSON. Ansible’s API, of course, is -heavily inspired by Func. Ansible also adds -a configuration management and multinode orchestration layer (Playbooks) -that Func didn’t have.

    -
    -
    -

    vs Puppet?

    -

    First off, Ansible wouldn’t have happened without Puppet. Puppet took configuration -management ideas from cfengine and made them sane. However, I still think they can -be much simpler.

    -

    Ansible playbooks ARE a complete configuration management system. Unlike Puppet, playbooks -are implicitly ordered (more like Chef), but still retain the ability to signal -notification events (like Puppet). This is kind of a ‘best of both worlds’ thing.

    -

    There is no central server subject to thundering herd problems, and Ansible is -also designed with multi-node deployment in mind from day-one – something that is difficult -for Puppet because of the pull architecture. Ansible is push based, -so you can do things in an ordered fashion, addressing batches of servers -at one time, and you do not have to contend with the dependency graph. It’s also extensible in any language -and the source is designed so that you don’t have to be an expert programmer to submit a patch.

    -

    Ansible’s resources are heavily inspired by Puppet, with the “state” keyword being a more or less -direct port of “ensure” from Puppet. Unlike Puppet, Ansible can be extended in any language, -even bash ... just return some output in JSON format. You don’t need to know Ruby.

    -

    Unlike Puppet, hosts are taken out of playbooks when they have a failure. It encourages -‘fail first’, so you can correct the error, instead of configuring as much of the system -as it can. A system shouldn’t be half correct, especially if we’re planning on configuring -other systems that depend on that system.

    -

    Ansible also has a VERY short learning curve – but it also has less language constructs and -does not create its own programming language. What constructs Ansible does have should be enough to cover 80% or so of the cases of most Puppet users, and it should scale equally well (not having a server is -almost like cheating).

    -

    Ansible does support gathering variables from ‘facter’, if installed, and Ansible templates -in jinja2 in a way just like Puppet does with erb. Ansible also has it’s own facts though, -so usage of facter is not required to get variables about the system.

    -
    -
    -

    vs Chef?

    -

    Much in the ways Ansible is different from Puppet. Chef is notoriously hard -to set up on the server, and requires that you know how to program in Ruby to -use the language. As such, it seems to have a pretty good following mainly -among Rails coders.

    -

    Like Chef (and unlike Puppet), Ansible executes configuration tasks in the order -given, rather than having to manually specify a dependency graph. Ansible extends -this though, by allowing triggered notifiers, so Apache can, be restarted if needed, -only once, at the end of a configuration run.

    -

    Unlike Chef, Ansible’s playbooks are not a programming language. This means -that you can parse Ansible’s playbooks and treat the instructions as data. It also -means working on your infrastructure is not a development task and testing is easier.

    -

    Ansible can be used regardless of your programming language experience. Both -Chef and Puppet are around 60k+ lines of code, while Ansible is a much simpler -program. I believe this strongly leads to more reliable software and a richer -open source community – the code is kept simple so it is easy for anyone to -submit a patch or module.

    -

    Ansible does support gathering variables from ‘ohai’, if installed. Ansible also -has it’s own facts so you do not need to use ohai unless you want to.

    -
    -
    -

    vs Capistrano/Fabric?

    -

    These tools aren’t really well suited to doing idempotent configuration and are -typically about pushing software out for web deployment and automating steps.

    -

    Meanwhile Ansible is designed for other types of configuration management, and contains some -advanced scaling features.

    -

    The ansible playbook syntax is documented within one HTML page and also has a MUCH lower learning curve. -And because Ansible is designed for more than pushing webapps, it’s more generally -useful for sysadmins (not just web developers), and can also be used for firing off ad-hoc tasks.

    -
    -
    -
    -

    Other Questions

    -
    -

    What is Ansible’s approach to security?

    -

    Ansible aims to not develop custom daemon or PKI code but rely heavily on OpenSSH, which is extremely well -peer reviewed and the most widely used security subsystem in the industry. As a result, Ansible -has a lower attack surface than any configuration management tool featuring daemons that run -as root, and you do not have to worry about network security vulnerabilities in the tool itself.

    -

    If your central server is taken over (or even logged into by a malicious employee), -provided you were using SSH-agent and encrypted keys (and/or sudo with a password), -your keys are still locked and no one can take control of your nodes.

    -

    Compared with something like Chef/Puppet/other, compromised manifests would lead -to a loss of the whole network, with your network turning into an easily controllable -botnet. Further by not running daemon infrastructure, you have more -free RAM and compute resources, which should be relevant to users wanting to maximize their -computing investments.

    -
    -
    -

    How does Ansible scale?

    -

    Whether in single-execution mode or using ansible playbooks, ansible can -run multiple commands in seperate parallel forks, thanks to the magic behind -Python’s multiprocessing module.

    -

    You can decide if you want to try to manage 5 hosts at a time, or 50 at a time. -It’s up to you and how much power you can throw at it and how fast you want -to go.

    -

    There are no daemons so it’s entirely up to you. When you are aren’t using -Ansible, it is not consuming any resources, and you don’t have to contend -with a herd of machines all knocking at the door of your management server -all at once.

    -

    The SSH connection type (paramiko is the default, binary openssh is an option) -can also make use of “ControlMaster” features in SSH, which reuses network -connections.

    -

    If you have 10,000 systems, running a single ansible playbook against all of -them probably isn’t appropriate, which is why ansible-pull exists. This tool -is designed for running out of git and cron, and can scale to any -number of hosts. Ansible-pull uses local connections versus SSH, but can be -easily bootstrapped or reconfigured just using SSH. There is more information -available about this in the Advanced Playbooks section. The self-bootstrapping -and ease of use are ansible are still retained, even when switching to the pull -model.

    -

    If you’d like to discuss scaling strategies further, please hop on the mailing list.

    -
    -
    -

    Are transports other than SSH supported?

    -

    Currently SSH (you can choose between paramiko or the openssh binaries) -and local connections are supported. The interface is actually pluggable so a -small patch could bring transport over message bus or XMPP as an option.

    -

    Stop by the mailing list if you have ideas. The connection-specific parts of Ansible -are all abstracted away from the core implementation so it is very easy to extend.

    -
    -
    -

    What are some ideal uses for Ansible?

    -

    One of the best use cases? Complex multi-node cloud deployments using playbooks. Another good -example is for configuration management where you -are starting from a clean OS with no extra software installed, adopting systems -that are already deployed.

    -

    Ansible is also great for running ad-hoc tasks across a wide variety of Linux, Unix, and BSDs. -Because it just uses the basic tools available on the system, it is exceptionally cross platform -without needing to install management packages on each node.

    -

    It also excels for writing distributed -scripts and ad-hoc applications that need to gather data or perform arbitrary -tasks – whether for a QA sytem, build system, or anything you can think of.

    -
    -

    See also

    -
    -
    Command Line Examples And Next Steps
    -
    Examples of basic commands
    -
    Playbooks
    -
    Learning ansible’s configuration management language
    -
    Mailing List
    -
    Questions? Help? Ideas? Stop by the list on Google Groups
    -
    irc.freenode.net
    -
    #ansible IRC chat channel
    -
    -
    -
    -
    -
    - - -
    -
    -
    - -
    -
    -

    -

    - - - - - - - - - -
    -

    -

    - - - -

    -

    -

    - © Copyright 2012 Michael DeHaan.
    - Last updated on Sep 11, 2012.
    -

    -
    -
    - - \ No newline at end of file diff --git a/genindex.html b/genindex.html index 3b852851326..de24ec20b3f 100644 --- a/genindex.html +++ b/genindex.html @@ -128,7 +128,8 @@ s.parentNode.insertBefore(ga, s);