jeudi 1 décembre 2016

Check to see if an Ansible Prompt Variable exists

In my site.yml, I run some common tasks, then include 3 other playbooks. These 3 playbooks then run a role each. I do this so I can run a full site.yml install, or I can just run a smaller playbook.

I want to prompt for a username and password in the site.yml, which I can do. Then in the other 3 playbooks/roles, I want to check if the username and password were already created, if not, then prompt for them.

I do not want to prompt for credentials multiple times.

site.yml

---
- hosts: all

  vars_prompt:
    - name: "username"
    - prompt" "enter username"

- include: 1.yml

1.yml

---
- name: install one
  hosts: all

  # If username has not been defined - This is 
  # where I am confused how to check if it was defined in site.yml
  vars_prompt:
    - name: "userame"
      prompt: "enter username"
  roles:
    - 1role

If I run site.yml, it will get username, then run 1.yml and I don't want it to prompt for username because it was prompted for in site.yml.

If I run just 1.yml, I want it to prompt for the username, as I am not running site.yml in this case.

Is there a way to prompt for credentials from a playbook, then check for them in an included playbook?

Aucun commentaire:

Enregistrer un commentaire