Fixed sysctl to work on symlinks
SUMMARY
Fixes#111.
This issue reports a bug of sysctl that the module does not work properly when sysctl_file is a symlink.
I Fixed the bug by inserting os.path.realpath to get real path.
When sysctl_file is a real file, os.path.realpath return the original path as is.
ISSUE TYPE
Bugfix Pull Request
COMPONENT NAME
sysctl
ADDITIONAL INFORMATION
I have executed the script described in #111 and confirmed that it works properly.
But I need to add some tests.
satken@dockerhost1:~/ansible$ sudo docker run --rm -v ${PWD}:/work -w /work -e ANSIBLE_LIBRARY=/work/ansible.posix -e ANSIBLE_HOST_KEY_CHECKING=False satken2/ansible:3.3.0 ansible-playbook -i hosts main.yml
PLAY [test] ********************************************************************
TASK [Gathering Facts] *********************************************************
ok: [192.168.91.76]
TASK [test] ********************************************************************
ok: [192.168.91.76] => {
"msg": "This is test"
}
TASK [command] *****************************************************************
changed: [192.168.91.76]
TASK [command] *****************************************************************
ok: [192.168.91.76]
TASK [debug] *******************************************************************
ok: [192.168.91.76] => {
"sysctl_current_value.stdout": "kernel.randomize_va_space = 2"
}
TASK [copy] ********************************************************************
changed: [192.168.91.76]
TASK [file] ********************************************************************
changed: [192.168.91.76]
TASK [stat] ********************************************************************
ok: [192.168.91.76]
TASK [assert] ******************************************************************
ok: [192.168.91.76] => {
"changed": false,
"msg": "/tmp/ansible_sysctl_test_symlink.conf is correct symlink"
}
TASK [sysctl | enable randomized layout of virtual address space] **************
changed: [192.168.91.76]
TASK [stat] ********************************************************************
ok: [192.168.91.76]
TASK [assert] ******************************************************************
ok: [192.168.91.76] => {
"changed": false,
"msg": "/tmp/ansible_sysctl_test_symlink.conf is correct symlink"
}
PLAY RECAP *********************************************************************
192.168.91.76 : ok=12 changed=4 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Reviewed-by: quidame
Reviewed-by: Jill R