Ik ben een playbook aan het maken in ansible die geautomatiseerd bepaalde software op centos servers uitrolt. Nu wil ik de activatie ook automatiseren en de verschillende keys bijhouden in de defaults file. Het probleem wat ik heb is dat ansible de juiste key als variable moet hebben bij de juiste machine.
In de defaults file heb ik nu oa dit staan:
Zolang ik hier 1 server in zet is het prima. Maar ik kan niet doorgaan middels
want ansible pakt dan enkel de laatste license, de eerdere variable gaat hij niet pakken. Is er een manier waarop ik dit wel in de defaults file kan krijgen?
Ik kan wel
doen maar dan moet ik in de rest van het playbook gaan controleren op welke variabele dan bestaat, wat het weer onoverzichtelijk maakt.
In de tasks wordt de software geactiveerd middels
Ik hoop dat het een beetje duidelijk is wat de bedoeling is
In de defaults file heb ik nu oa dit staan:
code:
1
2
3
| plicense: { license: "xxx-xxx-xxx-xxx" } when: ansible_hostname == "server1" |
Zolang ik hier 1 server in zet is het prima. Maar ik kan niet doorgaan middels
code:
1
2
3
| plicense: { license: "yyy-yyyy-yyyy-yyy" } when: ansible_hostname == "servert2" |
want ansible pakt dan enkel de laatste license, de eerdere variable gaat hij niet pakken. Is er een manier waarop ik dit wel in de defaults file kan krijgen?
Ik kan wel
code:
1
2
3
4
5
6
7
| plicense1: { license: "xxx-xxx-xxx-xxx" } when: ansible_hostname == "server1" plicense2: { license: "yyy-yyyy-yyyy-yyy" } when: ansible_hostname == "servert2" |
doen maar dan moet ik in de rest van het playbook gaan controleren op welke variabele dan bestaat, wat het weer onoverzichtelijk maakt.
In de tasks wordt de software geactiveerd middels
code:
1
2
3
4
| [ shell: bin license --install "{{ plicense.license }}" when: - plicense.license != "" - result2|failed |
Ik hoop dat het een beetje duidelijk is wat de bedoeling is
[ Voor 8% gewijzigd door 3dmaster op 29-11-2016 16:57 ]
Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.