Ansible: рд╡рд┐рдВрдбреЛрдЬ 10 / рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓: рдПрдирдЯреАрдПрдлрдПрд╕ рдорд╛рдЙрдВрдЯреНрд╕ рд╕реЗ Ansible ansible.cfg рдХреЛ рдирд╣реАрдВ рдкрдврд╝ рд╕рдХрддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 6 рдЬреБрд▓ре░ 2018  ┬╖  37рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: ansible/ansible

рд╕рд╛рд░рд╛рдВрд╢

Ansible 2.6.1 рдиреЗ https://github.com/ansible/ansible/pull/42070 рдХреЛ рдЬреЛрдбрд╝рд╛, рдЬреЛ 777 рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ ansible.cfg рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬ 10 рдкрд░ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдореЗрдВ рд╕рднреА рдПрдирдЯреАрдПрдлрдПрд╕ рдЖрд░реЛрд╣ ( /mnt/c рддрд╣рдд рдХреБрдЫ рднреА) 777 рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреА рдЕрдиреБрдорддрд┐рдпрд╛рдВ рд╡рд┐рдВрдбреЛрдЬ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред

рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рдореИрдВ рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП ansible_kernel.find('Microsoft') != -1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЖрд░реНрдХ, рдЙрдмрдВрдЯреВ рдФрд░ рдХрд╛рд▓реА рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдкреНрд░рдХрд╛рд░
  • рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ
рдШрдЯрдХ рдХрд╛ рдирд╛рдо

lib / ansible / config / manager.py

рдЙрддреНрддрд░ рд╕рдВрд╕реНрдХрд░рдг
ansible 2.6.1
  config file = None
  configured module search path = [u'/home/cbailey/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python2.7/dist-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 2.7.15 (default, May  1 2018, 05:55:50) [GCC 7.3.0]
рд╡рд┐рдиреНрдпрд╛рд╕

рдПрди / рдП

рдУрдПрд╕ / рдкрд░реНрдпрд╛рд╡рд░рдг

рд╡рд┐рдВрдбреЛрдЬ 10 + рдХреЛрдИ рднреА рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдбрд┐рд╕реНрдЯреНрд░реЛ

рдкреНрд░рдЬрдирди рдХрд░рдиреЗ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛
  1. рдПрдХ WSL рдбрд┐рд╕реНрдЯреНрд░реЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
  2. sudo pip install ansible==2.6.1
  3. рдПрдХ ansible.cfg рдХреБрдЫ рдЕрдкрдиреЗ C:\ рдбреНрд░рд╛рдЗрд╡ рдкрд░ рд░рдЦреЗрдВ
  4. рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ cd
  5. рдХрд┐рд╕реА рднреА Ansible рдХрдорд╛рдВрдб рдХреЛ рдЪрд▓рд╛рдПрдВ
рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо

рдбрдмреНрд▓реВрдПрд╕рдПрд▓ рдореЗрдВ рд╡рд┐рдВрдбреЛрдЬ рдорд╛рдЙрдВрдЯ рдкрд░ ansible.cfg рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдгрд╛рдо

ansible.cfg рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рдореНрди рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╕рд╛рде рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

[WARNING] Ansible is in a world writable directory (/mnt/c/**), ignoring it as an ansible.cfg source.
affects_2.6 bug core windows

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ 2.6.1 рдФрд░ рдЗрддрдиреЗ рдкрд░ рдПрдХ рд╕рдорд╛рдзрд╛рди рдкрд╛рдпрд╛ ...

рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рдЕрдкрдиреЗ wsl: /etc/wsl.conf рдореЗрдВ рдмрдирд╛рдПрдБ

рд╕рд╛рдордЧреНрд░реА:

[automount]
enabled = true
mountFsTab = false
root = /mnt/
options = "metadata,umask=22,fmask=11"

[network]
generateHosts = true
generateResolvConf = true

рдЙрд╕рдХреЗ рдмрд╛рдж рд╕рднреА / mnt / c / foo рдХреЗ рдкрд╛рд╕ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░ рдЕрдиреБрдорддрд┐рдпрд╛рдВ (777 рдирд╣реАрдВ рдФрд░ рдЕрдзрд┐рдХ) рд╣реЛрдВрдЧреА рдФрд░ рдЖрдк chodod рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред
рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
wsl.conf рдбреЙрдХреНрд╕

рд╕рднреА 37 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╡рд┐рд╡рд░рдг рдореЗрдВ рдкрд╣рдЪрд╛рдиреА рдЧрдИ рдлрд╛рдЗрд▓реЗрдВ:

рдпрджрд┐ рдпреЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЧрд▓рдд рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ component name рд╡рд┐рд╡рд░рдг рдХреЗ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ рдпрд╛ !component рдмреЙрдЯ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдмреЙрдЯ рдорджрдж рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ

рд╡рд┐рд╡рд░рдг рдореЗрдВ рдкрд╣рдЪрд╛рдиреА рдЧрдИ рдлрд╛рдЗрд▓реЗрдВ:

рдпрджрд┐ рдпреЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЧрд▓рдд рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ component name рд╡рд┐рд╡рд░рдг рдХреЗ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ рдпрд╛ !component рдмреЙрдЯ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдмреЙрдЯ рдорджрдж рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ

рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдХрд┐ рдкреНрд░рдгрд╛рд▓реА рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдЕрднреА рднреА рдПрдХ рднреЗрджреНрдпрддрд╛ рд╣реИред рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рд╡рд┐рд╢реНрд╡-рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИ рдпрд╛ рдЕрдиреБрдорддрд┐ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐рд╕реА рд╡рд┐рд╢реНрд╡-рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реИред

рд╣рдо рд╡рд┐рдВрдбреЛрдЬ рдореЗрдЬрдмрд╛рдиреЛрдВ рдкрд░ рднреА рдРрдиреНрд╕рд┐рдмрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рд╣рдо рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд┐рдХреНрд╕ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдПред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд╣реИ рдХрд┐ рдореЗрдВ рд╣реЛрдирд╛ /etc/ansible/ansible.cfg рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╛ рдХреБрдЫ рдЗрд╕реА рддрд░рд╣ рдпрд╣ рдореБрд╢реНрдХрд┐рд▓ рдкрд░ рдлреНрд▓рд┐рдк рдХрд░рдиреЗ рдмрдирд╛рддрд╛ рд╣реИред

рдРрд╕реЗ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╡рд┐рдВрдбреЛрдЬ 10 рдПрдирдЯреАрдПрдлрдПрд╕ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЬреЛ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХреЛ рдорд╛рдЙрдВрдЯ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ NTFS рдорд╛рдЙрдВрдЯ рдпрд╛ рдПрдХ рдПрдЬрд╝реНрдпреЛрд░ рдлрд╝рд╛рдЗрд▓ рд╢реЗрдпрд░ рдорд╛рдЙрдВрдЯ рд▓реЙрдХ рдбрд╛рдЙрди рд▓рд┐рдирдХреНрд╕ рдмрд┐рд▓реНрдб рдмреЙрдХреНрд╕ рдкрд░ рдорд╛рдЙрдВрдЯ рд╣реИ, рддреЛ рдорд╛рдЙрдВрдЯ 777 рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрд╕ рд╕реНрдерд╛рди рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдирд╛ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред

OpenSSH рдЖрдкрдХреЛ root рдкрд╛рд╕рд╡рд░реНрдб рд▓реЙрдЧрд┐рди рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕реБрд░рдХреНрд╖рд╛ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ рдЙрджреНрджреЗрд╢реНрдп рдФрд░ рдЙрд╕рдХреЗ рдЖрд╕-рдкрд╛рд╕ рдХреЗ рд╕рдВрджрд░реНрдн рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИрдВред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕ рдЪреЗрдХ рд╕реЗ рд╢реНрд╡реЗрддрд╕реВрдЪреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд╕рдХреЗрдВ? ANSIBLE_TRUSTED_CONFIGPATHS рдпрд╛ рдХреБрдЫ рдФрд░ рдЬреИрд╕рд╛ рдХреБрдЫ? рдпрджрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЙрд╕ рдЪрд░ рдореЗрдВ рдПрдХ рдкрде рдХреЗ рдЕрдВрджрд░ рд╣реИ, рддреЛ рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВ?

рдореИрдВ рдЕрдЬрдЧрд░ рдкрд░ рдЙрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдРрд╕рд╛ рдХреБрдЫ рд╣реЛ?

diff --git a/lib/ansible/config/manager.py b/lib/ansible/config/manager.py
index 48cf2cba3a..b356c84b9e 100644
--- a/lib/ansible/config/manager.py
+++ b/lib/ansible/config/manager.py
@@ -146,6 +146,10 @@ def find_ini_config_file(warnings=None):
    ''' Load INI Config File order(first found is used): ENV, CWD, HOME, /etc/ansible '''
    # FIXME: eventually deprecate ini configs

+    trusted_paths = os.getenv("ANSIBLE_TRUSTED_CONFIGPATHS",None)
+    if isinstance(trusted_paths, string_types):
+        trusted_paths=list(filter(None,trusted_paths.split(':')))
+
    path0 = os.getenv("ANSIBLE_CONFIG", None)
    if path0 is not None:
        path0 = unfrackpath(path0, follow=False)
@@ -154,7 +158,9 @@ def find_ini_config_file(warnings=None):
    try:
        path1 = os.getcwd()
        perms1 = os.stat(path1)
-        if perms1.st_mode & stat.S_IWOTH:
+        if trusted_paths and [i for i in trusted_paths if path1.startswith(i)]:
+            path1 += "/ansible.cfg"
+        elif perms1.st_mode & stat.S_IWOTH:
            if warnings is not None:
                warnings.add("Ansible is in a world writable directory (%s), ignoring it as an ansible.cfg source." % to_text(path1))
            path1 = None

рддрдм рдореИрдВ рдЕрдкрдиреЗ рд╢реЗрд▓ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдореЗрдВ рд╕рд┐рд░реНрдл export ANSIBLE_TRUSTED_CONFIGPATHS=/mnt/c/Users/ рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рдЖрдк рдЕрдкрдиреА рджреБрдирд┐рдпрд╛ рдХреЛ рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп ansible.cfg рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ANSIBLE_CONFIG рдЪрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╣рд╛рдВ, рдпрд╣ рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИ, рдЬрд┐рд╕ рдкрд░ рд╣рдо рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдпрд╣ рдЖрдкрдХреЗ рдлрд╝рд╛рдЗрд▓ рдЯреНрд░реА рдХреА рдЦреЛрдЬ рдФрд░ рдлрд┐рд░ рд░рдирд┐рдВрдЧ рдЬреИрд╕реЗ рдЖрд╢реНрдЪрд░реНрдп рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ
ansible in / tmp рдФрд░ рдПрдХ рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг ansible.cfg рдЙрдард╛

Thu, Jul 5, 2018, 11:23 PM RрдореАрди рдмрд╛рд░рд╛рджрд░реА рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдкрд░
рд▓рд┐рдЦрд╛ рдерд╛:

рдЖрдк рдЕрдкрдиреА рд╡рд┐рд╢реНрд╡ рдХреА рдпреЛрдЧреНрдпрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ANSIBLE_CONFIG рдЪрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
ansible.cfg рдФрд░ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/ansible/ansible/issues/42388#issuecomment-402938591 ,
рдпрд╛ рдзрд╛рдЧрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAMxWr8Z2LerEPWWmwZu1BR5RT9qgdnTks5uDwJ5gaJpZM4VEmwB
ред

рдореИрдВ ansible playbooks рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рдпреЛрдирд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред

Ansible_config рдорд╛рди рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдЗрд╕рдХреА рд╡рд┐рдлрд▓рддрд╛ред

[ рд░реВрдЯ @ рдХрдВрдЯреНрд░реЛрд▓рд░ ] # рдЗрдХреЛ тАЛтАЛ$ ANSIBLE_CONFIG
/ рдШрд░ / рдЖрд╡рд╛рд░рд╛ / рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ / DevOps-рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ /

[ рд░реВрдЯ @ рдХрдВрдЯреНрд░реЛрд▓рд░ рдордкреНрд░-рдЕрдиреНрд╕рд┐рдмрд▓-рдкреЗрд╕реЗрдлрд╝реЗ] # ls -lh ansible.cfg
-rwxrwxrwxред 1 рдпреЛрдирд┐ рдпреЛрдирд┐ 73 рдЬреБрд▓рд╛рдИ 9 07:43 ansible.cfg

[ рд░реВрдЯ @ рдХрдВрдЯреНрд░реЛрд▓рд░ ] # ansible -m рдкрд┐рдВрдЧ рдСрд▓-рдЖрдИ рдПрдирд╡рд╛рдпрд░рдирдореЗрдВрдЯ / XXXX / рдХреНрд▓рд╕реНрдЯрд░.рдЗрди -рд╡реА
[рдЪреЗрддрд╛рд╡рдиреА] Ansible рдПрдХ рд╡рд┐рд╢реНрд╡ рд▓реЗрдЦрди рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (/ рдШрд░ / рдЖрд╡рд╛рд░рд╛ / рдкрд░рд┐рдпреЛрдЬрдирд╛ / DevOps-Projects) рдореЗрдВ рд╣реИ, рдЬреЛ рдЗрд╕реЗ ansible.cfg рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ ред
рдХреЛрдИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдорд┐рд▓реА; рдЪреВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди
Install Only ansible 2.6.0

ANSIBLE_CONFIG env var рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рдХрд┐рд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛред

рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдкрд░ рдареЛрдХрд░ рдЦрд╛рдИ рд╣реИ, рдФрд░ рдореИрдВ рдЕрдкрдиреЗ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ cfg рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛, рдореБрдЭреЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛-рд╕рд╛рдкреЗрдХреНрд╖ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рддреЛ рдореИрдВ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдкрд░ рдареЛрдХрд░ рдЦрд╛рдИ рд╣реИ, рдФрд░ рдореИрдВ рдЕрдкрдиреЗ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ cfg рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛, рдореБрдЭреЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛-рд╕рд╛рдкреЗрдХреНрд╖ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рддреЛ рдореИрдВ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

pip install ansible==2.6.0 рдЬрдм рддрдХ рджреЗрд╡рддрд╛ рддрдп рдирд╣реАрдВ рдХрд░рддреЗ рдХрд┐ рд╡реЗ рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рд╡реИрдЧреНрд░рдВрдЯ рд╢реЗрдпрд░реНрдб рдлреЛрд▓реНрдбрд░ рдкрд░ рднреА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдпрд╣ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдлреЛрд▓реНрдбрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 0777 рдореЛрдб рд╣реИ рдФрд░ рдЗрд╕реЗ рдмрджрд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХреГрдкрдпрд╛, рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ CWD рдлрд╝реЛрд▓реНрдбрд░ == рдлрд╝реЛрд▓реНрдбрд░ рдЬрд┐рд╕рдореЗрдВ playbook рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдФрд░ рдлрд┐рд░ рд╡рд┐рд╢реНрд╡-рдпреЛрдЧреНрдп рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рди рдХрд░реЗрдВред рдпрд╛ рд╢рд╛рдпрдж playbook рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рдорд╛рди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ ansible.cfg рдЦреЛрдЬрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ? рд╡рд┐рдВрдбреЛрдЬ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдкрд░ рдпреЛрдирд┐ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рд╣реЛрдЧрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ 2.6.1 рдФрд░ рдЗрддрдиреЗ рдкрд░ рдПрдХ рд╕рдорд╛рдзрд╛рди рдкрд╛рдпрд╛ ...

рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рдЕрдкрдиреЗ wsl: /etc/wsl.conf рдореЗрдВ рдмрдирд╛рдПрдБ

рд╕рд╛рдордЧреНрд░реА:

[automount]
enabled = true
mountFsTab = false
root = /mnt/
options = "metadata,umask=22,fmask=11"

[network]
generateHosts = true
generateResolvConf = true

рдЙрд╕рдХреЗ рдмрд╛рдж рд╕рднреА / mnt / c / foo рдХреЗ рдкрд╛рд╕ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░ рдЕрдиреБрдорддрд┐рдпрд╛рдВ (777 рдирд╣реАрдВ рдФрд░ рдЕрдзрд┐рдХ) рд╣реЛрдВрдЧреА рдФрд░ рдЖрдк chodod рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред
рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
wsl.conf рдбреЙрдХреНрд╕

рдареАрдХ рд╣реИ, https://github.com/ansible/ansible/issues/42388#issuecomment -403926971 рдореЗрдВ рдЯрд┐рдкреНрдкрдгреА, рд╕рд▓рд╛рд╣ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдЬреЛ рд╣рдо рд▓реЛрдЧреЛрдВ рдХреЛ рдпреВрдЯреАрдПрдл рдХреЗ рддрд╣рдд рдПрдХ ntfs рдпрд╛ vfat рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдмрдврд╝рддреЗ рд╣реБрдП рдмрддрд╛рдПрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рд╣реИ рдпрд╣рд╛рдБред

ANSIBLE_CONFIG рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП (рд╕рд╣реА рдврдВрдЧ рд╕реЗ ... agaffney рдиреЛрдЯреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рдЗрд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рдУрд░ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рди рдХрд┐ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛), рдХреГрдкрдпрд╛ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЪреЗрддрд╛рд╡рдиреА рджреЗ рд░рд╣рд╛ рд╣реИред

рдХреЛрдб рдХреЛ рджреЗрдЦрдиреЗ рд╕реЗ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм ANSIBLE_CONFIG рдХрд╛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рднреА рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдереВрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ ANSIBLE_CONFIG рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИред рдпрджрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд▓рдХреНрд╖рдг рджреЗрдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрджрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдХрд╛рд░рдг рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣реИред

`` `рдЕрдВрддрд░ - / a / lib / ansible / config / manager.py b / lib / ansible / config / manager Oracle
рд╕реВрдЪрдХрд╛рдВрдХ c308c3810d..36641d9e01 100644
--- a / lib / ansible / config / manager.py
+++ b / lib / ansible / config / manager.py
@@ -150,6 +150,8 @@ def find_ini_config_file (рдЪреЗрддрд╛рд╡рдиреА = рдХреЛрдИ рдирд╣реАрдВ):
'' 'рд▓реЛрдб рдЖрдИрдПрдирдЖрдИ рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓ рдСрд░реНрдбрд░ (рдкрд╣рд▓реЗ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ): рдИрдПрдирд╡реА, рд╕реАрдбрдмреНрд▓реНрдпреВрдбреА, рд╣реЛрдо, / рдЖрджрд┐ / рдПрдПрдирдПрд╕рдЖрдИ' ''
# FIXME: рдЖрдЦрд┐рд░рдХрд╛рд░ рдЖрдИрдПрдирдЖрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ

  • warn_cwd_public = рдЧрд▓рдд
    +
    path0 = os.getenv ("ANSIBLE_CONFIG", рдХреЛрдИ рдирд╣реАрдВ)
    рдЕрдЧрд░ path0 рдХреЛрдИ рдирд╣реАрдВ рд╣реИ:
    path0 = unfrackpath (рдкрде 0, рдЕрдиреБрд╕рд░рдг = рдЧрд▓рдд)
    @@ -159,8 +161,7 @@ def find_ini_config_file (рдЪреЗрддрд╛рд╡рдиреА = рдХреЛрдИ рдирд╣реАрдВ):
    path1 = os.getcwd ()
    perms1 = os.stat (path1)
    рдЕрдЧрд░ рдкрд░рдо 1редst_mode рдФрд░ stat.S_IWOTH:
  • рдЕрдЧрд░ рдЪреЗрддрд╛рд╡рдиреА рдХреЛрдИ рдирд╣реАрдВ рд╣реИ:
  • warnings.add ("Ansible рдПрдХ рд╡рд┐рд╢реНрд╡ рд▓реЗрдЦрди рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (% s) рдореЗрдВ рд╣реИ, рдЬреЛ рдЗрд╕реЗ ansibleible рд╕реЛрд░реНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИред"% to_text (path1))
  • warn_cwd_public = True
    path1 = рдХреЛрдИ рдирд╣реАрдВ
    рдЕрдиреНрдп:
    path1 + = "/ansible.cfg"
    @@ -175,6 +176,8 @@ def find_ini_config_file (рдЪреЗрддрд╛рд╡рдиреА = рдХреЛрдИ рдирд╣реАрдВ):
    рдЕрдиреНрдп:
    рдкрде = рдХреЛрдИ рдирд╣реАрдВ

  • рдЕрдЧрд░ warn_cwd_public рдФрд░ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдВ рдХреЛрдИ рдирд╣реАрдВ рд╣реИ рдФрд░ рдкрде! = os.getcwd () + "/ansible.cfg":

  • warnings.add ("Ansible рдПрдХ рд╡рд┐рд╢реНрд╡ рд▓реЗрдЦрди рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (% s) рдореЗрдВ рд╣реИ, рд╕рдВрднрд╡ ansible.cfg рд╕реНрд░реЛрддреЛрдВ рдХреА рд╕реВрдЪреА рд╕реЗ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред"% to_text (path1))
    рд╡рд╛рдкрд╕реА рдкрде `` `
    рдРрд╕рд╛ рдХреБрдЫ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

рдореЗрд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдореЗрдЯрд╛рдбрд╛рдЯрд╛ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдПрдХ wsl рдШреБрдбрд╝рд╕рд╡рд╛рд░ nfs рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдЕрдиреБрдорддрд┐ рдХреЛ рдмрджрд▓рдирд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: https://blogs.msdn.microsoft.com/commandline/2018/01/12/chmod-chown-wsl-improvementsред

рдореВрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ ntfs рдорд╛рдЙрдВрдЯ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░реЗрдВ "chmod" рд╕рдХреНрд╖рдо рдХрд░реЗрдВ:

sudo umount /mnt/c
sudo mount -t drvfs C:/mnt/c -o metadata

рдФрд░ рдлрд┐рд░ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ chmod рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛ рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╡рд╣ рд╡рд╣реАрдВ рд░рд╣рддрд╛ рд╣реИред рдореЗрд░реА рд╡рд┐рдирдореНрд░ рд░рд╛рдп рдХреЗ рд▓рд┐рдП wsl рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╡реИрдЧреНрд░рдВрдЯ рдХрд╛ рд╕рдорд╛рдзрд╛рди, рд╡реИрдЧреНрд░рд╛рдВрдЯрдлрд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ рдФрд░ mount_options :

config.vm.synced_folder "../my-folder", "/home/vagrant/my-folder",  mount_options: ["dmode=775"]

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдХрд┐ рдХреНрдпреЛрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ansible рдПрдХ рдЙрдЪреНрдЪ рд░рдЦрд░рдЦрд╛рд╡ рдореЙрдбреНрдпреВрд▓ рд╣реИред

рдореИрдВрдиреЗ 3 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдПрдХ vagant + virtualbox + ansible рдкреНрд░реЛрдЬреЗрдХреНрдЯ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рд╣реИред рддрдм рд╕реЗ рд╣рд░ 5 рдорд╣реАрдиреЗ рдореЗрдВ рд╡рд┐рд░рд╛рдо рд╣реЛрддрд╛ рд╣реИред рдореБрдЭреЗ KEP IT рдХрд╛рдо рдХреЛ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╕рд┐рд╕реНрдЯрдо рдХреЗ (рдХреБрдЫ) рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ "рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ", рдХреНрдпреЛрдВрдХрд┐ рд╣рд░ рдмрд╛рд░ рдРрд╕рд╛ рд╣реЛрдиреЗ рдкрд░ рдмрд╕ рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ 3 рд╕рдкреНрддрд╛рд╣ рдкрд╣рд▓реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛, рдФрд░ рдпрд╣ рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдФрд░ рдпрд╣ рдПрдХ рдорд╣рд╛рдкреМрд░ рд╕рдВрд╕реНрдХрд░рдг рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдПрдХ рдорд╛рдореВрд▓реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рддреЛрдбрд╝рдирд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред

(рджреЗрдЦреЗрдВ "рд╕реНрдкрд░реНрд╢" рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрдкрдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдСрдЯреЛрд░реЗрдореЛрд╡ рдирд╣реАрдВ рд╣реИ рд▓реЗрдХрд┐рди рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ "apt" рдХреЛ рдПрдХ рдХрдорд╛рдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдмреБрд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, stat.md5 рдХреЛ рдмрд┐рдирд╛ рдиреЛрдЯрд┐рд╕ рдХреЗ рд╣рдЯрд╛рдпрд╛ рдЧрдпрд╛, vault_password.txt рд╕реНрдерд╛рди рдХреЛ ansible рдореЗрдВ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рдереАред cfg (рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз рдмрдВрдж, рдлрд┐рд░ рд╡рд░реНрд╖реЛрдВ рдмрд╛рдж рд▓рд╛рдЧреВ) рдЖрджрд┐ ...)

рдкрд╣рд▓реЗ рдХреА рддрд░рд╣ рд╣реА рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд╣рд░ рдХреБрдЫ рд╣рдлреНрддреЛрдВ рдореЗрдВ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореИрдВ Redhat рдФрд░ ansible 2.0 рд╕реЗ рдЕрдзрд┐рдХ рдкрд░рд┐рдкрдХреНрд╡ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рдмрдВрдзрди рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдирдП рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рд╣реЛ, рдХрд┐ ansible рдХреЛ рдкреНрд░рд╢рд╛рд╕рди рдХреА рдЬрд░реВрд░рдд рд╣реИред

рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ STDOUT рдХреЗ рдмрдЬрд╛рдп STDERR рдХреЛ рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ?

[WARNING] Ansible is in a world writable directory...

рдЬрдм рдореИрдВ STDOUT рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдпрд╣ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рдкрдЯреНрдЯреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡рд┐рд╢реЗрд╖ рдХреЛрдб рдиреЛрдб рдХреЛ рд╣реИрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдУрд╣ рд╣рд╛, рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ

export ANSIBLE_CONFIG=./ansible.cfg

рдХрд┐рд╕реА рднреА рдЖрд╡рд╛рд░рд╛ / docker / wsl рд╕реЗрдЯрдЕрдк рдореЗрдВ рдлреЗрдВрдХ рджреЗрдВ

рдЗрди рд╕рднреА рд╡рд░реНрдХрдЕрд░рд╛рдЙрдбреНрд╕ рдХреЛ рдЬрд╛рдирдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рдзрд╛рд░рдгрд╛ рд╣реИ, рдФрд░ рдЗрдирд▓рд╛рдЗрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп-рдкреНрд▓реЗрдмреБрдХ рдЭрдВрдбреЗ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдВрднрд╡ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдЕрдм рдореИрдВ рдЕрдкрдиреЗ рджрд┐рди рдХреЛ рдЦрд░реНрдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ 40 рд╣реИрдХ рдЬреЙрдм рдХреЗ рд╕рд╛рде рдЬреЙрдм рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреИрдЪ рд╡рд░реНрдЬрди рдкрд░рд┐рд╡рд░реНрддрди рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП! рдФрд░ рдпреЗ рд╕рднреА рдмрд┐рд▓реНрдб рдХрдо рд╕рдордп рддрдХ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдореЗрдВ рдЪрд▓рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдПрдХрд▓ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкрд╣реБрдВрдЪ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЦрддрд░рдирд╛рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рдпреЛрдЧреНрдп рд╕реБрд░рдХреНрд╖рд╛ рдЫреЗрдж рдЬрд┐рд╕реЗ рдЖрдк рдореБрдЭрд╕реЗ рдмрдЪрд╛ рд░рд╣реЗ рд╣реИрдВ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╡реИрдз рдзрд╛рд░рдгрд╛ рд╣реИред

рддреНрд╡рд░рд┐рдд рдЕрдкрдбреЗрдЯ: рд╣рдо рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ- рд╣рдо рдПрдХ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд cwd рд╕реЗ рдХреЙрдиреНтАНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд╣реАрдВ рдкрдврд╝рдиреЗ рдХреЗ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдзрд╛рд░ рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрд▓рдЧ рд╡рд┐рдЪрд╛рд░ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред рдореЗрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░реЛ, рдЗрд╕ рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕реАрд╡реАрдИ рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рдЬреЛ рднреЗрдЬ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╡рд╣ рдбреНрд░реИрдХреБрдЕрди рдХреЗ рдХреБрдЫ рдЙрдкрд╛рдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╛рдкрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдерд╛ред

рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рд╣рдо рдЗрди "рд╡рд┐рд╢реНрд╡-рдпреЛрдЧреНрдп-рд▓реЗрдХрд┐рди-рдирд╣реАрдВ-рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ" рдорд╛рдорд▓реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рд╢реЛрдзрди рдпрд╛ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдЖ рд╕рдХрддреЗ рд╣реИрдВред

@thegreatjerboa рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рд╕реЗрдЯрдЕрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ? рдореИрдВ рдЙрддреНрд╕реБрдХ рд╣реВрдВ рдХрд┐ рдЖрдк рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрдерд╛рди рдХреЗ рдмрдЬрд╛рдп cwd рд╕реЗ ansible.cfg рдХреЛ рдХреНрдпреЛрдВ рдкрдврд╝ рд░рд╣реЗ рд╣реИрдВ (рдЬреЛ рд╡рд┐рд╢реНрд╡-рд▓реЗрдЦрди рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ)ред

@Jfflill рдореИрдВ рд╡рд╣рд╛рдВ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ (рдЬреЛ рдХрд┐ рд▓рдЧрднрдЧ рд╕рднреА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА) рд╕реНрдЯреЛрдбрд░ рдХреЗ рдмрдЬрд╛рдп рд╕реНрдЯрдбрдЖрдЙрдЯ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВ рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛рдУрдВ рдкрд░ рдЦреАрдВрдЪ рд░рд╣рд╛ рд╣реВрдБ ...

@nitzmahone рдпрд╣

playbook dir рдХреЛ ansible.cfg рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ

export ANSIBLE_CONFIG=./ansible.cfg

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЕрднреА рднреА рд╣реЛ рд░рд╣реА рд╣реИ

 [WARNING] Ansible is in a world writable directory (/mnt/c/Users/soar/projectdir), ignoring it as an ansible.cfg source.

ansible 2.6.2

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдкреВрдЫрд╛ рдерд╛ ... рдХреНрдпрд╛ рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдЙрдард╛рддрд╛ рд╣реИ
рдЙрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдЫрд╛рдкрдирд╛?

рддрд░реНрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рднрд▓реЗ рд╣реА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ
ANSIBLE_CONFIG.я┐╝

43583 рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдЬ (рдмрд╛рдж рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдХрд╛ рд╡рд┐рд▓рдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

рдЙрдиреНрдирдпрди рдХреЗ рдмрд╛рдж рдЖрдЬ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ред рд╣рдо рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рдЕрднреА рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХ рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рдпрд╣ рдЕрдм https://github.com/ansible/ansible/pull/43583 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ 2.6 рдФрд░ 2.5 рдХреЗ рд▓рд┐рдП рджреЛ рдкреАрдЖрд░рдПрд╕ https://github.com/ansible/ansible/pull/43648 рдФрд░ https рдореЗрдВ devel рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рддрдп рдореЗрдВ рдХреНрдпрд╛ рд╣реИ?

  • рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реБрд░рдХреНрд╖рд╛ рдЬреЛрдЦрд┐рдо рдХреЛ рд╕рдордЭрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд╕рд╣реА рддрд░реАрдХреЗ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ (рдлрд╛рдЗрд▓рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдмрдврд╝рддреЗ рд╣реБрдП рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рдореВрд╣ рдХреЛ ansible.cfg рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ, рдЬреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╡рд┐рд╢реНрд╡ рдХреА рдЙрдкрдпреБрдХреНрддрддрд╛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдРрд╕рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
  • рдмреНрд▓реЙрдЧрд░ рдФрд░ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдХреЗ рд╕рдВрдХреЗрдд (рд╡реИрдЧреНрд░рдВрдЯ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ рдФрд░ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рд╕реБрд╡рд┐рдзрд╛ рдореЗрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдФрд░ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рджреЛрдиреЛрдВ рд╣реИрдВ рдЬреЛ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдорд╛рдЙрдВрдЯ рдХрд░реЗрдВ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо)ред
  • рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ ANSIBLE_CONFIG рдХреЛ рдЖрдкрдХреА рдЬрд╝рд░реВрд░рдд рдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рд╡рд┐рд╢реНрд╡ рд▓реЗрдЦрди рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ @AngellusMortis рдФрд░ @zoredache рджреНрд╡рд╛рд░рд╛ рдкреВрдЫрд╛ рдЧрдпрд╛ рд╣реИ
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╕реНрдХрд┐рдк рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд┐рдХреНрд╕ рддрд╛рдХрд┐ рдпрд╣ рдкреНрд░рдХрдЯ рди рд╣реЛ рдХрд┐ рдпрд╣ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдХреЛ рд╕реНрдХрд┐рдк рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдЬрдм рдпрд╣ рд╡рд┐рд╢реНрд╡ рд▓реЗрдЦрди рдпреЛрдЧреНрдп рд╡рд░реНрддрдорд╛рди рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рджреЛрдиреЛрдВ рд╣реЛ рдФрд░ ANSIBLE_CONFIG рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛред

рдпрджрд┐ рдЖрдк рдЕрднреА рднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рджреЗрд╡рд▓ рд╢рд╛рдЦрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╕рдордп рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВ, рддрд╛рдХрд┐ рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓ рд╕рдХреЗ рдХрд┐ рд╕рдЯреАрдХ рд▓рдХреНрд╖рдг рдХреНрдпрд╛ рд╣реИрдВ рддрд╛рдХрд┐ рд╣рдо рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХреЗрдВред

рдпрджрд┐ рдпрд╣ рдЙрдкрдпреЛрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рд╕рд╛рдЭрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ vmware рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди ubuntu рдорд╢реАрди рдореЗрдВ ansible рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдПрдХ рд╕реНрдерд╛рдирд┐рдХ рд╕реНрдерд╛рди рдкрд░ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдпрд╣ рдорд╛рдЙрдВрдЯ рд╕реНрдерд╛рди 777 рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЧрд▓рддреА рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдордиреЗ рдЗрд╕реЗ рдШрдЯрд╛рдХрд░ 755 рдХрд░ рджрд┐рдпрд╛ред

рдореИрдВрдиреЗ ANSIBLE_CONFIG рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ asible.cfg рдлрд╝рд╛рдЗрд▓ рдирд╛рдо ( /path/to/ansible.cfg ) рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдкрде рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЕрднреА рднреА рд╕рдВрджреЗрд╢ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ: [WARNING] Ansible is in a world writable directory ...

$ ansible --version
 [WARNING] Ansible is in a world writable directory (/c/Users/my/path/to/ansible), ignoring it as an ansible.cfg source.
ansible 2.6.2
  config file = /path/to/ansible.cfg
  configured module search path = [u'/home/me/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.12 (default, Dec  4 2017, 14:50:18) [GCC 5.4.0 20160609]

рдпрджрд┐ рдЖрдк рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдбреАрд╡реЗрд▓ рд╢рд╛рдЦрд╛ рдпрд╛ рдкреАрдЖрд░рдПрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╕рд╛рде рдмреИрдХрдкреЛрд░реНрдЯ 2.6 рдпрд╛ 2.5 рдХреЗ рд╕рд╛рде рд╣реИ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдЕрдиреНрдпрдерд╛, рдЖрдк 2.6.3 рдХреЗ рдмрд╛рд╣рд░ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд╣рд╛рдВ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдкреИрдЪ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдерд╛ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рд▓рд┐рдП рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рд╣реИ
рдиреЙрди рд╡рд░реНрд▓реНрдб рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓рд╕рд┐рд╕реНрдЯрдо рдорд╛рдЙрдВрдЯ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рджреЛрдиреЛрдВ рдпреЛрдирд┐ рдФрд░ рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ
рд▓реЗрдЦрди рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛:
https://docs.ansible.com/ansible/devel/reference_appendices/config.html#avoiding -security-risk-with -sible-cfg-in-current-directory

рдХреНрдпрд╛ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╡реЗ рдЯреБрдХрдбрд╝реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ?

рд╢реБрдХреНрд░ рдкрд░, 17 рдЕрдЧрд╕реНрдд 2018, 3:23 рдкреВрд░реНрд╡рд╛рд╣реНрди рд╡реНрд╣рд╛рдЗрдбрдЧреНрд░реБрдк рд╕реВрдЪрдирд╛рдПрдБ @ithub.com рдиреЗ рд▓рд┐рдЦрд╛:

рдЬреИрд╕реЗ рд╣реА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 2.6.3 рд╕рдВрд╕реНрдХрд░рдг рд╣реИ - рдЕрдм рдЗрд╕реЗ рдмрдирд╛рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рд╡рд┐рдВрдбреЛрдЬ рдорд╢реАрди рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдХрд┐рд╕реА рдХреЛ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд▓рд╛рд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдпреЛрдирд┐ / ansible рдХреЙрдореНрдмреЛ .cfg рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рдареАрдХ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЦреБрд▓реА / рдмрдВрдж рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/ansible/ansible/issues/42388#issuecomment-413823645 ,
рдпрд╛ рдзрд╛рдЧрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAMxWhtxSRE6GQW6ZYJflqydXhrQW-FDks5uRpmLgaJpZM4VEmwB
ред

рдореИрдВ WSL рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ 10 рдкрд░ Ubuntu рд╕реНрдерд╛рдкрд┐рдд рд╣реИ

рдореИрдВрдиреЗ рдЕрдкрдиреЗ / рдЖрджрд┐ / рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝рд╛ рд╣реИ

ANSIBLE_CONFIG = "/ etc / ansible / ansible.cfg"

рдореБрдЭреЗ рдЕрднреА рднреА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ

ANSIBLE_CONFIG рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдЬреЛрдбрд╝рдиреЗ рд╡рд╛рд▓реЛрдВ рдиреЗ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛?

рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рд╕реЗрдЯрдЕрдк, рдЖрдЙрдЯрдкреБрдЯ рдФрд░ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рдЯрд┐рдХрдЯ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ? ANSIBLE_CONFIG рд╕реЗрдЯ рд╣реЛрдиреЗ рдкрд░ рдирд╡реАрдирддрдо 2.6 рдФрд░ 2.7 рд░рд┐рд▓реАрдЬрд╝ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП

рдирд┐рд░реНрдпрд╛рдд ANSIBLE_CONFIG = / ansible.cfg

рдпрджрд┐ рдпрд╣ рдЖрдкрдХреЗ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ ansible.cfg рд╣реИ, рддреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд╡рд╣рд╛рдВ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди ANSIBLE_CONFIG рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ! рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЕрдирджреЗрдЦреА рдХрд░рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред рдзрдиреНрдпрд╡рд╛рдж!!!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

rokka-n picture rokka-n  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

hryamzik picture hryamzik  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

aioue picture aioue  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

yatesr picture yatesr  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

renaudguerin picture renaudguerin  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ