# ansible playbook 이 jenkins job 에서 다음과 같은 에러가 발생했다.
Unsupported parameters for (dnf) module: sslverify Supported parameters include:
# sslverify 는 ansible 2.13 에 추가되었다.
# 그런데 현재 사용하는 버전은 2.14 로 문제가 없어야 한다.
ansible --version
ansible [core 2.14.2]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/ysoftman/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.11/site-packages/ansible
ansible collection location = /home/ysoftman/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.11.2 (main, Oct 5 2023, 16:06:03) [GCC 8.5.0 20210514 (Red Hat 8.5.0-18)] (/usr/bin/python3.11)
jinja version = 3.1.2
libyaml = True
# 확인 결과 jenkins job 의 script 에서 아래와 같이 python 3.8 버전을 우선하게 설정이 되어 있었고
# python-3.8 /bin 에 ansible 바이너리가 있었다.
export PATH="/home/ysoftman/Python-3.8.17/bin:${PATH}"
export PYTHON_PATH="/home/ysoftman/Python-3.8.17"
# 그래서 Python-3.8.17/bin/ansible-playbook 2.9 버전을 사용하게 되는게 문제였다.
ansible-playbook --version
ansible-playbook 2.9.22
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/ysoftman/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /home/ysoftman/Python-3.8.17/lib/python3.8/site-packages/ansible
executable location = /home/ysoftman/Python-3.8.17/bin/ansible-playbook
python version = 3.8.17 (default, Nov 2 2023, 17:16:07) [GCC 8.5.0 20210514 (Red Hat 8.5.0-18)]
# 정리
# 로컬에서는 최신 ansible 버전 기준으로 playbook을 작성했는데
# 배포시에는 python, ansible 을 고정된 버전으로 사용하고 있었음.