??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
σ
ΰUdac @` sΌ d d l m Z m Z m Z e Z d Z d Z d d l Z d d l Z d d l
m Z d d l m
Z
d d l m Z m Z d d l m Z m Z d d l m Z d
e
f d YZ d S( i ( t absolute_importt divisiont print_functions"
inventory: ini
version_added: "2.4"
short_description: Uses an Ansible INI file as inventory source.
description:
- INI file based inventory, sections are groups or group related with special `:modifiers`.
- Entries in sections C([group_1]) are hosts, members of the group.
- Hosts can have variables defined inline as key/value pairs separated by C(=).
- The C(children) modifier indicates that the section contains groups.
- The C(vars) modifier indicates that the section contains variables assigned to members of the group.
- Anything found outside a section is considered an 'ungrouped' host.
- Values passed in the INI format using the ``key=value`` syntax are interpreted differently depending on where they are declared within your inventory.
- When declared inline with the host, INI values are processed by Python's ast.literal_eval function
(U(https://docs.python.org/2/library/ast.html#ast.literal_eval)) and interpreted as Python literal structures
(strings, numbers, tuples, lists, dicts, booleans, None). Host lines accept multiple C(key=value) parameters per line.
Therefore they need a way to indicate that a space is part of a value rather than a separator.
- When declared in a C(:vars) section, INI values are interpreted as strings. For example C(var=FALSE) would create a string equal to C(FALSE).
Unlike host lines, C(:vars) sections accept only a single entry per line, so everything after the C(=) must be the value for the entry.
- Do not rely on types set during definition, always make sure you specify type with a filter when needed when consuming the variable.
- See the Examples for proper quoting to prevent changes to variable type.
notes:
- Whitelisted in configuration by default.
- Consider switching to YAML format for inventory sources to avoid confusion on the actual type of a variable.
The YAML inventory plugin processes variable values consistently and correctly.
s
example1: |
# example cfg file
[web]
host1
host2 ansible_port=222 # defined inline, interpreted as an integer
[web:vars]
http_port=8080 # all members of 'web' will inherit these
myvar=23 # defined in a :vars section, interpreted as a string
[web:children] # child groups will automatically add their hosts to parent group
apache
nginx
[apache]
tomcat1
tomcat2 myvar=34 # host specific vars override group vars
tomcat3 mysecret="'03#pa33w0rd'" # proper quoting to prevent value changes
[nginx]
jenkins1
[nginx:vars]
has_java = True # vars in child groups override same in parent
[all:vars]
has_java = False # 'all' is 'top' parent
example2: |
# other example config
host1 # this is 'ungrouped'
# both hosts have same IP but diff ports, also 'ungrouped'
host2 ansible_host=127.0.0.1 ansible_port=44
host3 ansible_host=127.0.0.1 ansible_port=45
[g1]
host4
[g2]
host4 # same host as above, but member of 2 groups, will inherit vars from both
# inventory hostnames are unique
N( t to_safe_group_name( t BaseFileInventoryPlugin( t AnsibleErrort AnsibleParserError( t to_bytest to_text( t shlex_splitt InventoryModulec B` s e Z d Z d Z e d Z e d Z d Z e d Z d Z
d Z d
Z d Z
d Z d
Z d Z e d Z d Z RS( s
Takes an INI-format inventory file and builds a list of groups and subgroups
with their associated hosts and variable settings.
t iniu ;u #t ;t #c C` s) t t | j i | _ d | _ d S( N( t superR
t __init__t patternst Nonet _filename( t self( ( sA /usr/lib/python2.7/site-packages/ansible/plugins/inventory/ini.pyR a s c C` sH t t | j | | | | | _ yύ | j rL | j j | \ } } n6 t | d d } t | d } | j } Wd QXy t | d d j
} Wnp t k
rg } xZ | j
D]H }
|
rπ |
d | j k rπ | j
d qΑ | j
t |
d d qΑ Wn X| j | | Wn t k
rC} t | n Xd S( Nt errorst surrogate_or_strictt rbi u ( R R
t parseR t loadert _get_file_contentsR t opent readR t
splitlinest UnicodeErrort b_COMMENT_MARKERSt appendt _parset ExceptionR ( R t inventoryR t patht cachet b_datat privatet b_patht fht datat linet e( ( sA /usr/lib/python2.7/site-packages/ansible/plugins/inventory/ini.pyR h s&