Ansible repository with playbooks to manage azure objects
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 

514 lignes
21 KiB

  1. # config file for ansible -- https://ansible.com/
  2. # ===============================================
  3. # nearly all parameters can be overridden in ansible-playbook
  4. # or with command line flags. ansible will read ANSIBLE_CONFIG,
  5. # ansible.cfg in the current working directory, .ansible.cfg in
  6. # the home directory or /etc/ansible/ansible.cfg, whichever it
  7. # finds first
  8. [defaults]
  9. # some basic default values...
  10. inventory = ./inventory
  11. #interpreter_python = /usr/bin/python3
  12. #library = /usr/share/my_modules/
  13. #module_utils = /usr/share/my_module_utils/
  14. remote_tmp = ~/.ansible/tmp
  15. local_tmp = ./.ansible/tmp
  16. #plugin_filters_cfg = /etc/ansible/plugin_filters.yml
  17. forks = 5
  18. # This is the default group of hosts to talk to in a playbook
  19. # if no “hosts:” stanza is supplied.
  20. # The default is to talk to all hosts.
  21. pattern = localhost
  22. #poll_interval = 15
  23. #sudo_user = root
  24. #ask_sudo_pass = True
  25. #ask_pass = True
  26. #transport = smart
  27. #remote_port = 22
  28. #module_lang = C
  29. #module_set_locale = False
  30. # plays will gather facts by default, which contain information about
  31. # the remote system.
  32. #
  33. # smart - gather by default, but don't regather if already gathered
  34. # implicit - gather by default, turn off with gather_facts: False
  35. # explicit - do not gather by default, must say gather_facts: True
  36. #gathering = implicit
  37. gathering = smart
  38. # This only affects the gathering done by a play's gather_facts directive,
  39. # by default gathering retrieves all facts subsets
  40. # all - gather all subsets
  41. # network - gather min and network facts
  42. # hardware - gather hardware facts (longest facts to retrieve)
  43. # virtual - gather min and virtual facts
  44. # facter - import facts from facter
  45. # ohai - import facts from ohai
  46. # You can combine them using comma (ex: network,virtual)
  47. # You can negate them using ! (ex: !hardware,!facter,!ohai)
  48. # A minimal set of facts is always gathered.
  49. #gather_subset = all
  50. gather_subset = network,virtual
  51. # some hardware related facts are collected
  52. # with a maximum timeout of 10 seconds. This
  53. # option lets you increase or decrease that
  54. # timeout to something more suitable for the
  55. # environment.
  56. # gather_timeout = 10
  57. # Ansible facts are available inside the ansible_facts.* dictionary
  58. # namespace. This setting maintains the behaviour which was the default prior
  59. # to 2.5, duplicating these variables into the main namespace, each with a
  60. # prefix of 'ansible_'.
  61. # This variable is set to True by default for backwards compatibility. It
  62. # will be changed to a default of 'False' in a future release.
  63. # ansible_facts.
  64. # inject_facts_as_vars = True
  65. inject_facts_as_vars = False
  66. # additional paths to search for roles in, colon separated
  67. roles_path = ./roles
  68. # uncomment this to disable SSH key host checking
  69. #host_key_checking = False
  70. # change the default callback, you can only have one 'stdout' type enabled at a time.
  71. #stdout_callback = skippy
  72. ## Ansible ships with some plugins that require whitelisting,
  73. ## this is done to avoid running all of a type by default.
  74. ## These setting lists those that you want enabled for your system.
  75. ## Custom plugins should not need this unless plugin author specifies it.
  76. # enable callback plugins, they can output to stdout but cannot be 'stdout' type.
  77. #callback_whitelist = timer, mail
  78. callback_whitelist = timer
  79. # Determine whether includes in tasks and handlers are "static" by
  80. # default. As of 2.0, includes are dynamic by default. Setting these
  81. # values to True will make includes behave more like they did in the
  82. # 1.x versions.
  83. #task_includes_static = False
  84. #handler_includes_static = False
  85. # Controls if a missing handler for a notification event is an error or a warning
  86. #error_on_missing_handler = True
  87. # change this for alternative sudo implementations
  88. #sudo_exe = sudo
  89. # What flags to pass to sudo
  90. # WARNING: leaving out the defaults might create unexpected behaviours
  91. #sudo_flags = -H -S -n
  92. # SSH timeout
  93. #timeout = 10
  94. # default user to use for playbooks if user is not specified
  95. # (/usr/bin/ansible will use current user as default)
  96. #remote_user = root
  97. # logging is off by default unless this path is defined
  98. # if so defined, consider logrotate
  99. #log_path = /var/log/ansible.log
  100. # default module name for /usr/bin/ansible
  101. #module_name = command
  102. # use this shell for commands executed under sudo
  103. # you may need to change this to bin/bash in rare instances
  104. # if sudo is constrained
  105. #executable = /bin/sh
  106. # if inventory variables overlap, does the higher precedence one win
  107. # or are hash values merged together? The default is 'replace' but
  108. # this can also be set to 'merge'.
  109. #hash_behaviour = replace
  110. # by default, variables from roles will be visible in the global variable
  111. # scope. To prevent this, the following option can be enabled, and only
  112. # tasks and handlers within the role will see the variables there
  113. #private_role_vars = yes
  114. # list any Jinja2 extensions to enable here:
  115. #jinja2_extensions = jinja2.ext.do,jinja2.ext.i18n
  116. # if set, always use this private key file for authentication, same as
  117. # if passing --private-key to ansible or ansible-playbook
  118. #private_key_file = /path/to/file
  119. # If set, configures the path to the Vault password file as an alternative to
  120. # specifying --vault-password-file on the command line.
  121. #vault_password_file = /path/to/vault_password_file
  122. # format of string {{ ansible_managed }} available within Jinja2
  123. # templates indicates to users editing templates files will be replaced.
  124. # replacing {file}, {host} and {uid} and strftime codes with proper values.
  125. #ansible_managed = Ansible managed: {file} modified on %Y-%m-%d %H:%M:%S by {uid} on {host}
  126. # {file}, {host}, {uid}, and the timestamp can all interfere with idempotence
  127. # in some situations so the default is a static string:
  128. #ansible_managed = Ansible managed
  129. # by default, ansible-playbook will display "Skipping [host]" if it determines a task
  130. # should not be run on a host. Set this to "False" if you don't want to see these "Skipping"
  131. # messages. NOTE: the task header will still be shown regardless of whether or not the
  132. # task is skipped.
  133. #display_skipped_hosts = True
  134. # by default, if a task in a playbook does not include a name: field then
  135. # ansible-playbook will construct a header that includes the task's action but
  136. # not the task's args. This is a security feature because ansible cannot know
  137. # if the *module* considers an argument to be no_log at the time that the
  138. # header is printed. If your environment doesn't have a problem securing
  139. # stdout from ansible-playbook (or you have manually specified no_log in your
  140. # playbook on all of the tasks where you have secret information) then you can
  141. # safely set this to True to get more informative messages.
  142. #display_args_to_stdout = False
  143. # by default (as of 1.3), Ansible will raise errors when attempting to dereference
  144. # Jinja2 variables that are not set in templates or action lines. Uncomment this line
  145. # to revert the behavior to pre-1.3.
  146. #error_on_undefined_vars = False
  147. # by default (as of 1.6), Ansible may display warnings based on the configuration of the
  148. # system running ansible itself. This may include warnings about 3rd party packages or
  149. # other conditions that should be resolved if possible.
  150. # to disable these warnings, set the following value to False:
  151. #system_warnings = True
  152. # by default (as of 1.4), Ansible may display deprecation warnings for language
  153. # features that should no longer be used and will be removed in future versions.
  154. # to disable these warnings, set the following value to False:
  155. #deprecation_warnings = True
  156. # (as of 1.8), Ansible can optionally warn when usage of the shell and
  157. # command module appear to be simplified by using a default Ansible module
  158. # instead. These warnings can be silenced by adjusting the following
  159. # setting or adding warn=yes or warn=no to the end of the command line
  160. # parameter string. This will for example suggest using the git module
  161. # instead of shelling out to the git command.
  162. # command_warnings = False
  163. # set plugin path directories here, separate with colons
  164. #action_plugins = /usr/share/ansible/plugins/action
  165. #become_plugins = /usr/share/ansible/plugins/become
  166. #cache_plugins = /usr/share/ansible/plugins/cache
  167. #callback_plugins = /usr/share/ansible/plugins/callback
  168. #connection_plugins = /usr/share/ansible/plugins/connection
  169. #lookup_plugins = /usr/share/ansible/plugins/lookup
  170. #inventory_plugins = /usr/share/ansible/plugins/inventory
  171. #vars_plugins = /usr/share/ansible/plugins/vars
  172. #filter_plugins = /usr/share/ansible/plugins/filter
  173. #test_plugins = /usr/share/ansible/plugins/test
  174. #terminal_plugins = /usr/share/ansible/plugins/terminal
  175. #strategy_plugins = /usr/share/ansible/plugins/strategy
  176. # by default, ansible will use the 'linear' strategy but you may want to try
  177. # another one
  178. #strategy = free
  179. # by default callbacks are not loaded for /bin/ansible, enable this if you
  180. # want, for example, a notification or logging callback to also apply to
  181. # /bin/ansible runs
  182. #bin_ansible_callbacks = False
  183. # don't like cows? that's unfortunate.
  184. # set to 1 if you don't want cowsay support or export ANSIBLE_NOCOWS=1
  185. #nocows = 1
  186. # set which cowsay stencil you'd like to use by default. When set to 'random',
  187. # a random stencil will be selected for each task. The selection will be filtered
  188. # against the `cow_whitelist` option below.
  189. #cow_selection = default
  190. #cow_selection = random
  191. # when using the 'random' option for cowsay, stencils will be restricted to this list.
  192. # it should be formatted as a comma-separated list with no spaces between names.
  193. # NOTE: line continuations here are for formatting purposes only, as the INI parser
  194. # in python does not support them.
  195. #cow_whitelist=bud-frogs,bunny,cheese,daemon,default,dragon,elephant-in-snake,elephant,eyes,\
  196. # hellokitty,kitty,luke-koala,meow,milk,moofasa,moose,ren,sheep,small,stegosaurus,\
  197. # stimpy,supermilker,three-eyes,turkey,turtle,tux,udder,vader-koala,vader,www
  198. # don't like colors either?
  199. # set to 1 if you don't want colors, or export ANSIBLE_NOCOLOR=1
  200. #nocolor = 1
  201. # if set to a persistent type (not 'memory', for example 'redis') fact values
  202. # from previous runs in Ansible will be stored. This may be useful when
  203. # wanting to use, for example, IP information from one group of servers
  204. # without having to talk to them in the same playbook run to get their
  205. # current IP information.
  206. #fact_caching = memory
  207. fact_caching = jsonfile
  208. #This option tells Ansible where to cache facts. The value is plugin dependent.
  209. #For the jsonfile plugin, it should be a path to a local directory.
  210. #For the redis plugin, the value is a host:port:database triplet: fact_caching_connection = localhost:6379:0
  211. fact_caching_connection=./.ansible/tmp
  212. # retry files
  213. # When a playbook fails a .retry file can be created that will be placed in ~/
  214. # You can enable this feature by setting retry_files_enabled to True
  215. # and you can change the location of the files by setting retry_files_save_path
  216. #retry_files_enabled = False
  217. #retry_files_save_path = ~/.ansible-retry
  218. # squash actions
  219. # Ansible can optimise actions that call modules with list parameters
  220. # when looping. Instead of calling the module once per with_ item, the
  221. # module is called once with all items at once. Currently this only works
  222. # under limited circumstances, and only with parameters named 'name'.
  223. #squash_actions = apk,apt,dnf,homebrew,pacman,pkgng,yum,zypper
  224. # prevents logging of task data, off by default
  225. #no_log = False
  226. # prevents logging of tasks, but only on the targets, data is still logged on the master/controller
  227. #no_target_syslog = False
  228. # controls whether Ansible will raise an error or warning if a task has no
  229. # choice but to create world readable temporary files to execute a module on
  230. # the remote machine. This option is False by default for security. Users may
  231. # turn this on to have behaviour more like Ansible prior to 2.1.x. See
  232. # https://docs.ansible.com/ansible/become.html#becoming-an-unprivileged-user
  233. # for more secure ways to fix this than enabling this option.
  234. #allow_world_readable_tmpfiles = False
  235. # controls the compression level of variables sent to
  236. # worker processes. At the default of 0, no compression
  237. # is used. This value must be an integer from 0 to 9.
  238. #var_compression_level = 9
  239. # controls what compression method is used for new-style ansible modules when
  240. # they are sent to the remote system. The compression types depend on having
  241. # support compiled into both the controller's python and the client's python.
  242. # The names should match with the python Zipfile compression types:
  243. # * ZIP_STORED (no compression. available everywhere)
  244. # * ZIP_DEFLATED (uses zlib, the default)
  245. # These values may be set per host via the ansible_module_compression inventory
  246. # variable
  247. #module_compression = 'ZIP_DEFLATED'
  248. # This controls the cutoff point (in bytes) on --diff for files
  249. # set to 0 for unlimited (RAM may suffer!).
  250. #max_diff_size = 1048576
  251. # This controls how ansible handles multiple --tags and --skip-tags arguments
  252. # on the CLI. If this is True then multiple arguments are merged together. If
  253. # it is False, then the last specified argument is used and the others are ignored.
  254. # This option will be removed in 2.8.
  255. #merge_multiple_cli_flags = True
  256. # Controls showing custom stats at the end, off by default
  257. #show_custom_stats = True
  258. # Controls which files to ignore when using a directory as inventory with
  259. # possibly multiple sources (both static and dynamic)
  260. inventory_ignore_extensions = ~, .orig, .bak, .ini, .cfg, .retry, .pyc, .pyo
  261. # This family of modules use an alternative execution path optimized for network appliances
  262. # only update this setting if you know how this works, otherwise it can break module execution
  263. #network_group_modules=eos, nxos, ios, iosxr, junos, vyos
  264. # When enabled, this option allows lookups (via variables like {{lookup('foo')}} or when used as
  265. # a loop with `with_foo`) to return data that is not marked "unsafe". This means the data may contain
  266. # jinja2 templating language which will be run through the templating engine.
  267. # ENABLING THIS COULD BE A SECURITY RISK
  268. #allow_unsafe_lookups = False
  269. # set default errors for all plays
  270. #any_errors_fatal = False
  271. [inventory]
  272. # enable inventory plugins, default: 'host_list', 'script', 'auto', 'yaml', 'ini', 'toml'
  273. #enable_plugins = host_list, virtualbox, yaml, constructed, aws_ec2
  274. enable_plugins = host_list, azure_rm, script
  275. # ignore these extensions when parsing a directory as inventory source
  276. ignore_extensions = .pyc, .pyo, .swp, .bak, ~, .rpm, .md, .txt, ~, .orig, .ini, .cfg, .retry
  277. # ignore files matching these patterns when parsing a directory as inventory source
  278. #ignore_patterns=
  279. # If 'true' unparsed inventory sources become fatal errors, they are warnings otherwise.
  280. #unparsed_is_failed=False
  281. [privilege_escalation]
  282. #become=True
  283. become_method=sudo
  284. become_user=root
  285. become_ask_pass=False
  286. [paramiko_connection]
  287. # uncomment this line to cause the paramiko connection plugin to not record new host
  288. # keys encountered. Increases performance on new host additions. Setting works independently of the
  289. # host key checking setting above.
  290. record_host_keys=False
  291. # by default, Ansible requests a pseudo-terminal for commands executed under sudo. Uncomment this
  292. # line to disable this behaviour.
  293. #pty=False
  294. # paramiko will default to looking for SSH keys initially when trying to
  295. # authenticate to remote devices. This is a problem for some network devices
  296. # that close the connection after a key failure. Uncomment this line to
  297. # disable the Paramiko look for keys function
  298. #look_for_keys = False
  299. # When using persistent connections with Paramiko, the connection runs in a
  300. # background process. If the host doesn't already have a valid SSH key, by
  301. # default Ansible will prompt to add the host key. This will cause connections
  302. # running in background processes to fail. Uncomment this line to have
  303. # Paramiko automatically add host keys.
  304. host_key_auto_add = True
  305. [ssh_connection]
  306. # ssh arguments to use
  307. # Leaving off ControlPersist will result in poor performance, so use
  308. # paramiko on older platforms rather than removing it, -C controls compression use
  309. #ssh_args = -C -o ControlMaster=auto -o ControlPersist=60s
  310. ssh_args = -C -o ControlMaster=auto -o ControlPersist=30m
  311. # The base directory for the ControlPath sockets.
  312. # This is the "%(directory)s" in the control_path option
  313. #
  314. # Example:
  315. # control_path_dir = /tmp/.ansible/cp
  316. control_path_dir = ./.ansible/cp
  317. # The path to use for the ControlPath sockets. This defaults to a hashed string of the hostname,
  318. # port and username (empty string in the config). The hash mitigates a common problem users
  319. # found with long hostnames and the conventional %(directory)s/ansible-ssh-%%h-%%p-%%r format.
  320. # In those cases, a "too long for Unix domain socket" ssh error would occur.
  321. #
  322. # Example:
  323. # control_path = %(directory)s/%%h-%%r
  324. #control_path =
  325. # Enabling pipelining reduces the number of SSH operations required to
  326. # execute a module on the remote server. This can result in a significant
  327. # performance improvement when enabled, however when using "sudo:" you must
  328. # first disable 'requiretty' in /etc/sudoers
  329. #
  330. # By default, this option is disabled to preserve compatibility with
  331. # sudoers configurations that have requiretty (the default on many distros).
  332. #
  333. pipelining = False
  334. #pipelining = True
  335. # Control the mechanism for transferring files (old)
  336. # * smart = try sftp and then try scp [default]
  337. # * True = use scp only
  338. # * False = use sftp only
  339. #scp_if_ssh = smart
  340. # Control the mechanism for transferring files (new)
  341. # If set, this will override the scp_if_ssh option
  342. # * sftp = use sftp to transfer files
  343. # * scp = use scp to transfer files
  344. # * piped = use 'dd' over SSH to transfer files
  345. # * smart = try sftp, scp, and piped, in that order [default]
  346. #transfer_method = smart
  347. transfer_method = piped
  348. # if False, sftp will not use batch mode to transfer files. This may cause some
  349. # types of file transfer failures impossible to catch however, and should
  350. # only be disabled if your sftp version has problems with batch mode
  351. #sftp_batch_mode = False
  352. # The -tt argument is passed to ssh when pipelining is not enabled because sudo
  353. # requires a tty by default.
  354. usetty = True
  355. # Number of times to retry an SSH connection to a host, in case of UNREACHABLE.
  356. # For each retry attempt, there is an exponential backoff,
  357. # so after the first attempt there is 1s wait, then 2s, 4s etc. up to 30s (max).
  358. #retries = 3
  359. [persistent_connection]
  360. # Configures the persistent connection timeout value in seconds. This value is
  361. # how long the persistent connection will remain idle before it is destroyed.
  362. # If the connection doesn't receive a request before the timeout value
  363. # expires, the connection is shutdown. The default value is 30 seconds.
  364. connect_timeout = 30
  365. # The command timeout value defines the amount of time to wait for a command
  366. # or RPC call before timing out. The value for the command timeout must
  367. # be less than the value of the persistent connection idle timeout (connect_timeout)
  368. # The default value is 30 second.
  369. command_timeout = 15
  370. # Configures the persistent connection retry timeout. This value configures the
  371. # the retry timeout that ansible-connection will wait to connect
  372. # to the local domain socket. This value must be larger than the
  373. # ssh timeout (timeout) and less than persistent connection idle timeout (connect_timeout).
  374. # The default value is 15 seconds.
  375. connect_retry_timeout = 15
  376. [accelerate]
  377. accelerate_port = 5099
  378. accelerate_timeout = 30
  379. accelerate_connect_timeout = 5.0
  380. # The daemon timeout is measured in minutes. This time is measured
  381. # from the last activity to the accelerate daemon.
  382. accelerate_daemon_timeout = 30
  383. # If set to yes, accelerate_multi_key will allow multiple
  384. # private keys to be uploaded to it, though each user must
  385. # have access to the system via SSH to add a new key. The default
  386. # is "no".
  387. accelerate_multi_key = yes
  388. [selinux]
  389. # file systems that require special treatment when dealing with security context
  390. # the default behaviour that copies the existing context or uses the user default
  391. # needs to be changed to use the file system dependent context.
  392. #special_context_filesystems=nfs,vboxsf,fuse,ramfs,9p
  393. # Set this to yes to allow libvirt_lxc connections to work without SELinux.
  394. #libvirt_lxc_noseclabel = yes
  395. [colors]
  396. #highlight = white
  397. #verbose = blue
  398. verbose = bright green
  399. #warn = bright purple
  400. warn = bright blue
  401. #error = red
  402. #debug = dark gray
  403. #deprecate = purple
  404. deprecate = blue
  405. #skip = cyan
  406. #unreachable = red
  407. #ok = green
  408. #changed = yellow
  409. #diff_add = green
  410. #diff_remove = red
  411. #diff_lines = cyan
  412. [diff]
  413. # Always print diff when running ( same as always running with -D/--diff )
  414. # always = no
  415. # Set how many context lines to show in diff
  416. # context = 3