Подсказки в Дженкинс - PullRequest
       10

Подсказки в Дженкинс

0 голосов
/ 04 июля 2018

Я пытаюсь установить программное обеспечение на Centos 7, используя ANSIBLE PlayBook через Jenkins.

Я пытаюсь вызвать ansible playbook от jenkins для установки программного обеспечения.

Я использую vars_prompt в ansible playbook для передачи некоторых пользовательских параметров, когда я запускаю ansible playbook вручную, он запрашивает приглашения и запускается успешно, но когда я строю с использованием jenkins, он не запрашивает никаких входных данных.

Pipeline:

node {
    ansiblePlaybook(
        installation: 'FirstAnsibleTest',
        inventory: '/etc/ansible/hosts',
        playbook: '/etc/ansible/install.yml',
        become: true,
        colorized: true,
        )
}

install.yml:

- hosts: all
  vars_prompt:
   - name: "webusername"
     prompt: "Enter webusername"
   - name: "webpassword"
     prompt: "Enter webpassword"
     private: yes
  tasks:
   - import_tasks: /etc/ansible/roles/installe/tasks/main.yml

Как я могу заставить Дженкинса попросить подсказки, которые можно передать в ANSIBLE Playbook?

1 Ответ

0 голосов
/ 04 июля 2018

поскольку Дженкинс запускает задание неинтерактивным способом, вам нужно передать --extra-vars с переменными и их значением при вызове playbook (например: --extra-vars 'webusername=foo webpassword=bar').

Это объясняется в документации .

Запросы для отдельных vars_prompt переменных будут пропущены для любых переменная, которая уже определена в командной строке --extra-vars или при запуске из неинтерактивного сеанса (например, cron или Ansible Tower). См. Передача переменных в командной строке в / Переменные / глава.

Что касается пароля, я понимаю, что невозможно передать его напрямую, но вы можете, например, использовать переменную окружения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...