---
hosts: "{{ target }}"
tasks:
- name: boo
debug: msg="vars {{ inventory_hostname }} , env {{ env }} op {{ op }} rel {{ rel }}"
- name: build the release
debug: msg="building"
- name: installing/updating
debug: msg="installing"
hosts: "{{ target }}"
vars_prompt:
ltvup: "Is the app up on {{ target }} ? (y/n): "
tasks:
- name: Stop app
debug: msg="the server is {{ ltvup }}"
- name: postinstall
debug: msg="post"
- name: wait
pause: prompt="Have admins do sudo blah blah blah"
cleanup tasks here.
--
You received this message because you are subscribed to the Google Groups "Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ansible-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/e78ba643-6db5-4ffb-9af5-ab90daf811d7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Ansible plays are hashes, they are a collection of attributes.Tasks are an ordered list.Thus including "vars_prompt" ahead or behind "tasks" makes no difference.vars_prompt happens before the current play runs, every time.You can solve this problem by stopping the current play, starting a new one with a vars_prompt in it, and then continuing, since a playbook can contain multiple plays in a single file.
On Tuesday, September 9, 2014 3:17:29 PM UTC-4, Michael DeHaan wrote:Ansible plays are hashes, they are a collection of attributes.Tasks are an ordered list.Thus including "vars_prompt" ahead or behind "tasks" makes no difference.vars_prompt happens before the current play runs, every time.You can solve this problem by stopping the current play, starting a new one with a vars_prompt in it, and then continuing, since a playbook can contain multiple plays in a single file.
Many thanks. I apologize but I am not proficient enough to know what you mean exactly.
Something like this?
---
- name: play 1
hosts: myhost
task:
-name task1
debug: msg='111111'
- name: play 2
hosts: myhost
vars_prompt:
yesno: 'Yes or No (y/n): '
- name: play 3
hosts: myhost
task:
-name task2
debug: msg='YesNo = {{ yesno }}'
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/feccf0a0-efb5-4eb6-8f34-81e09800c3c2%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/feccf0a0-efb5-4eb6-8f34-81e09800c3c2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I think it could be useful if 'set_fact' (and 'set_global' if it is implemented) were extended to take a special 'prompt' parameter that would make it easy for asking for user input at whatever step of a deployment process.
E.g.:
- set_fact: prompt="somevar:Enter your value" prompt="anothervar:Enter another value" combined_fact="{{ somevar }} - {{ anothervar }}"
What do you think?
Hi Petros,
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/6cfb967e-5446-4e2c-9c33-3c09c80ccae2%40googlegroups.com.