ansible-config: add simple tests (#34900)
* Revert "Fix ansible-config with python3 (#34673)"
This reverts commit 2a9daaa45b
.
* ansible-config: add simple tests
* Fix ansible-config with python3
* ansible-test: don't quote "unusual" characters
This commit is contained in:
parent
93acd7c651
commit
217ff4498c
5 changed files with 19 additions and 6 deletions
|
@ -68,11 +68,11 @@ class ConfigCLI(CLI):
|
|||
super(ConfigCLI, self).run()
|
||||
|
||||
if self.options.config_file:
|
||||
self.config_file = to_bytes(unfrackpath(self.options.config_file, follow=False))
|
||||
self.config_file = unfrackpath(self.options.config_file, follow=False)
|
||||
self.config = ConfigManager(self.config_file)
|
||||
else:
|
||||
self.config = ConfigManager()
|
||||
self.config_file = to_bytes(find_ini_config_file())
|
||||
self.config_file = find_ini_config_file()
|
||||
try:
|
||||
if not os.path.exists(self.config_file):
|
||||
raise AnsibleOptionsError("%s does not exist or is not accessible" % (self.config_file))
|
||||
|
|
|
@ -116,7 +116,7 @@ def get_config_type(cfile):
|
|||
|
||||
ftype = None
|
||||
if cfile is not None:
|
||||
ext = to_text(os.path.splitext(cfile)[-1])
|
||||
ext = os.path.splitext(cfile)[-1]
|
||||
if ext in ('.ini', '.cfg'):
|
||||
ftype = 'ini'
|
||||
elif ext in ('.yaml', '.yml'):
|
||||
|
|
2
test/integration/targets/ansible/ansible-testé.cfg
Normal file
2
test/integration/targets/ansible/ansible-testé.cfg
Normal file
|
@ -0,0 +1,2 @@
|
|||
[defaults]
|
||||
remote_user = admin
|
|
@ -1,9 +1,17 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -eux
|
||||
set -eux -o pipefail
|
||||
|
||||
ansible --version
|
||||
ansible --help
|
||||
|
||||
ansible testhost -i ../../inventory -m ping "$@"
|
||||
ansible testhost -i ../../inventory -m setup "$@"
|
||||
|
||||
ansible-config -c ./ansible-testé.cfg view | grep 'remote_user = admin'
|
||||
ansible-config -c ./ansible-testé.cfg dump | grep 'DEFAULT_REMOTE_USER([^)]*) = admin\>'
|
||||
ANSIBLE_REMOTE_USER=administrator ansible-config dump| grep 'DEFAULT_REMOTE_USER([^)]*) = administrator\>'
|
||||
ansible-config list | grep 'DEFAULT_REMOTE_USER'
|
||||
|
||||
# 'view' command must fail when config file is missing
|
||||
ansible-config -c ./ansible-non-existent.cfg view && exit 1 || echo 'Failure is expected'
|
||||
|
|
|
@ -18,13 +18,16 @@ class Git(object):
|
|||
self.args = args
|
||||
self.git = 'git'
|
||||
|
||||
def get_diff(self, args):
|
||||
def get_diff(self, args, git_options=None):
|
||||
"""
|
||||
:type args: list[str]
|
||||
:type options: list[str]
|
||||
:rtype: list[str]
|
||||
"""
|
||||
cmd = ['diff'] + args
|
||||
return self.run_git_split(cmd, '\n', str_errors='replace')
|
||||
if git_options is None:
|
||||
git_options = ['-c', 'core.quotePath=']
|
||||
return self.run_git_split(git_options + cmd, '\n', str_errors='replace')
|
||||
|
||||
def get_diff_names(self, args):
|
||||
"""
|
||||
|
|
Loading…
Reference in a new issue