|
26 | 26 | # Change Summary:
|
27 | 27 | # - Change Ansible playbook name
|
28 | 28 |
|
29 |
| -- name: 'Get worker node' |
| 29 | + |
| 30 | +- name: 'Get worker node and ip' |
30 | 31 | ansible.builtin.set_fact:
|
31 | 32 | new_worker_ip: "{{ worker_ip | replace('{','') | replace('}','') | replace(\"'\",'') | replace(' ','') }}"
|
32 | 33 | new_worker_name: "{{ worker_name | replace('{','') | replace('}','') | replace(\"'\",'') | replace(' ','') }}"
|
33 | 34 | cluster_domain_name: "{{ cluster_domain_name }}"
|
34 | 35 |
|
35 |
| -- name: 'Validation worker name exist in named' |
| 36 | +- name: 'Validation worker name exists in zone file' |
36 | 37 | ansible.builtin.shell: |
|
37 | 38 | count=$(cat /var/named/{{ cluster_domain_name }}.zone | grep -w "{{ new_worker_name }}" | wc -l)
|
38 | 39 | echo $count
|
39 |
| - register: new_worker_exist |
| 40 | + register: new_worker_exists |
40 | 41 |
|
41 |
| -- name: 'Get the last line number of worker' |
| 42 | +- name: 'Get the line number of the last worker' |
42 | 43 | ansible.builtin.shell: grep -n 'worker' /var/named/{{ cluster_domain_name }}.zone |tail -1| cut --delimiter=":" --fields=1
|
43 | 44 | register: last_worker_ln
|
44 |
| - when: new_worker_exist.stdout | int == 0 |
45 |
| - |
46 |
| -- name: Show msg new worker |
47 |
| - ansible.builtin.debug: |
48 |
| - msg: "{{last_worker_ln.stdout}}" |
49 |
| - when: new_worker_exist.stdout | int == 0 |
| 45 | + when: new_worker_exists.stdout | int == 0 |
50 | 46 |
|
51 | 47 | - name: Add new worker dns record into named
|
52 | 48 | ansible.builtin.shell:
|
53 | 49 | cmd: "sed -i '{{ last_worker_ln.stdout }} a{{ new_worker_name }} IN A {{ new_worker_ip }}\n' /var/named/{{ cluster_domain_name }}.zone"
|
54 | 50 | when:
|
55 |
| - - new_worker_exist.stdout | int == 0 |
56 |
| - - last_worker_ln.stdout != "0" |
| 51 | + - new_worker_exists.stdout | int == 0 |
| 52 | + - last_worker_ln.stdout != "" |
| 53 | + |
| 54 | +# modify dns file when there are no workers present |
| 55 | +- name: Add new worker dns record into named when no workers present |
| 56 | + ansible.builtin.shell: |
| 57 | + cmd: "sed -i '/etcd-0 /i{{ new_worker_name }} IN A {{ new_worker_ip }}\n' /var/named/{{ cluster_domain_name }}.zone" |
| 58 | + when: |
| 59 | + - new_worker_exists.stdout | int == 0 |
| 60 | + - last_worker_ln.stdout == "" |
0 commit comments