#jenkins #ansible
#дженкинс #ansible
Вопрос:
Я использую Jenkins для получения ряда параметров, генерации команды ansible-playbook и ее запуска. Мой сервер Jenkins также является моим сервером Ansible.
Моя оболочка говорит ::
echo $ESXi_IP
echo $VM_NAME
echo $NIC1_MAC
echo $NIC2_MAC
echo $NIC3_MAC
echo $NIC4_MAC
echo $ESXi_HOSTNAME
echo $PLAYBOOK
ansible-playbook $PLAYBOOK --extra-vars "esxi_ip=$ESXi_IP vm_name=$VM_NAME nic1_mac=$NIC1_MAC nic2_mac=$NIC2_MAC nic3_mac=$NIC3_MAC nic4_mac=$NIC4_MAC esxi_hostname=$ESXi_HOSTNAME"
Когда я запускаю Задание, результатом является ::
ansible-playbook /root/ansible/sc-ece.yaml --extra-vars 'esxi_ip=5.232.66.49 vm_name=JenkinsTest nic1_mac=00:50:C0:A8:01:02 nic2_mac=00:50:0A:A9:37:A5 nic3_mac=00:50:0A:FF:FE:4C nic4_mac=00:50:AC:10:01:65 esxi_hostname=tmolab13-14iamesxi4'
ERROR! the playbook: /root/ansible/sc-ece.yaml could not be found
Путь к сборнику пьес правильный. в этом вообще нет никакой проблемы.
Чего , по — видимому , здесь не хватает ?
Комментарии:
1. добавьте
file $PLAYBOOK
перед выполнением сборника воспроизведения, чтобы быть на 100% уверенным, что файл на месте.2. Возможно, права доступа к файлам? Работает ли Jenkins от имени root?
3. Дженкинс обычно запускается как пользователь Jenkins, а сборник воспроизведения находится в
/root
поэтому разрешения, по-видимому, являются наиболее вероятной проблемой здесь.
Ответ №1:
Вы правы, Мэтт и Дэйв. Права доступа к папке были проблемой. Спасибо!