Я написал простую инструкцию по установке httpd. Вот моя инструкция:
---
- name: install httpd
hosts: localhost
become: root
vars:
inputvariable: "{{lookup('file','/home/ec2-user/inputfile.json')}}"
tasks:
- yum:
name: "{{item.packagename}}"
state: "{{item.state}}"
with_items: '{{ inputvariable.resources}}'
Вот мой входной файл:
{
"resources":[
{
"packagename": "httpd",
"state": "present"
}
]
}
Проблема в том, что когда я запускаю playbook со следующей командой с консоли, она выполняется успешно.
ansible-playbook -vvv -C -e "ansible_python_interpreter=/usr/bin/python" apacheplaybook.yml
Но при выполнении в Jenkins отображается следующая ошибка:
"msg": "для этого модуля необходимы привязки python2 для rpm. Для этого модуля необходим модуль python2 yum"}
Вот как я запускаю проект jenkins:
Я использую Jenkins в качестве пользователя ec2, и я сменил владельца /var/lib/jenkins
& /var/log/jenkins
& /var/cache/jenkins
на пользователя ec2 и группу wheel. Проблема с Jenkins, поскольку с консоли он успешно выполняется с этой командой.
cd ${WORKSPACE}/
над командойansible-playbook
, чтобы она могла найти playbook. - person Arbab Nazar   schedule 18.04.2018