From dde17404c6d86bfc487bbea92d014deb92218854 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Tue, 31 Jul 2012 23:08:04 -0400 Subject: [PATCH] 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 27bea1dea5..473bbd0474 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 57f3c3a5f2..71539f9bd9 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,18 +195,58 @@ 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 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']) + ) + ) + +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 ``````````````` -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" @@ -222,27 +265,32 @@ 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. + +* 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 f2376395e8..5f8397af3c 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