Como você configura um prompt de confirmação antes de executar um playbook?

1

Eu quero instalar o MariaDB depois de confirmar o usuário. Eu tenho um papel e uma tarefa simples:

- name: install MariaDB
  yum: name: MariaDB state: present

ou se eu quiser usar include: MySQL.yml , se o usuário quiser, esta linha será executada, se não ignorar esta inclusão.

- name: install MariaDB
  yum: name: MariaDB state: present

- include: MySQL.yml
    
por pyramid13 14.02.2018 / 07:48

1 resposta

2

você tem que usar um arquivo var yml & verifique as variáveis quando a declaração do seu yaml exemplo:

- name: Conditionally decide to load in variables into 'plans' when x is 0, otherwise do not. (2.2)
  include_vars:
    file: contingency_plan.yml
    name: plans
  when: x == 0

aqui quando x = 0 ....

ou você pode definir a variável environnement antes de executar o ansibleplaybook & leia-o de

msg="{{ lookup('env','HOME') }} 

para gerenciar uma variável local a ser usada quando a declaração

outro método está solicitando informações do usuário, mas isso não é uma boa prática

- name: Case insensitve password string match
  expect:
    command: passwd username
    responses:
      (?i)password: "MySekretPa$$word"

se não entendido: aqui um exemplo real de sim / não:

---
 - name: Test from prompt
   hosts: localhost

   vars_prompt:
   - name: "check_mode"
     prompt: "Check mode: yes(default)=check-only, no=execute commands"
     private: no
     default: true

   tasks:
   - name: msg="False test | {{ check_mode }}"
     debug: var=check_mode
     when: not check_mode

   - name: msg="True test | {{ check_mode }}"
     debug: var=check_mode
     include yourfile.yml
     when: check_mode
    
por 14.02.2018 / 07:56

Tags