共计 1787 个字符,预计需要花费 5 分钟才能阅读完成。
anisble 加载 ansible.cfg 配置文件的顺序
- 环境变量 os.getenv(“ANSIBLE_CONFIG”, SENTINEL)
- 当前工作目录 cwd_cfg = os.path.join(cwd, “ansible.cfg”)
- 用户 home 目录 ~/.ansible.cfg
- /etc/ansible/ansible.cfg
魔术变量
MAGIC_VARIABLE_MAPPING = dict(
# base
connection=('ansible_connection',),
module_compression=('ansible_module_compression',),
shell=('ansible_shell_type',),
executable=('ansible_shell_executable',),
# connection common
remote_addr=('ansible_ssh_host', 'ansible_host'),
remote_user=('ansible_ssh_user', 'ansible_user'),
password=('ansible_ssh_pass', 'ansible_password'),
port=('ansible_ssh_port', 'ansible_port'),
pipelining=('ansible_ssh_pipelining', 'ansible_pipelining'),
timeout=('ansible_ssh_timeout', 'ansible_timeout'),
private_key_file=('ansible_ssh_private_key_file', 'ansible_private_key_file'),
# networking modules
network_os=('ansible_network_os',),
connection_user=('ansible_connection_user',),
# ssh TODO: remove
ssh_executable=('ansible_ssh_executable',),
ssh_common_args=('ansible_ssh_common_args',),
sftp_extra_args=('ansible_sftp_extra_args',),
scp_extra_args=('ansible_scp_extra_args',),
ssh_extra_args=('ansible_ssh_extra_args',),
ssh_transfer_method=('ansible_ssh_transfer_method',),
# docker TODO: remove
docker_extra_args=('ansible_docker_extra_args',),
# become
become=('ansible_become',),
become_method=('ansible_become_method',),
become_user=('ansible_become_user',),
become_pass=('ansible_become_password', 'ansible_become_pass'),
become_exe=('ansible_become_exe',),
become_flags=('ansible_become_flags',),
# deprecated
sudo=('ansible_sudo',),
sudo_user=('ansible_sudo_user',),
sudo_pass=('ansible_sudo_password', 'ansible_sudo_pass'),
sudo_exe=('ansible_sudo_exe',),
sudo_flags=('ansible_sudo_flags',),
su=('ansible_su',),
su_user=('ansible_su_user',),
su_pass=('ansible_su_password', 'ansible_su_pass'),
su_exe=('ansible_su_exe',),
su_flags=('ansible_su_flags',),
)
正文完