--- - name: "Check_tokens | check if the tokens have already been generated on first control plane node" stat: path: "{{ kube_token_dir }}/known_tokens.csv" get_attributes: false get_checksum: true get_mime: false delegate_to: "{{ groups['kube_control_plane'][0] }}" register: known_tokens_control_plane run_once: true - name: "Check_tokens | Set default value for 'sync_tokens' and 'gen_tokens' to false" set_fact: sync_tokens: false gen_tokens: false - name: "Check_tokens | Set 'sync_tokens' and 'gen_tokens' to true" set_fact: gen_tokens: true when: not known_tokens_control_plane.stat.exists and kube_token_auth | default(true) run_once: true - name: "Check tokens | check if a cert already exists" stat: path: "{{ kube_token_dir }}/known_tokens.csv" get_attributes: false get_checksum: true get_mime: false register: known_tokens - name: "Check_tokens | Set 'sync_tokens' to true" set_fact: sync_tokens: >- {%- set tokens = {'sync': False} -%} {%- for server in groups['kube_control_plane'] | intersect(ansible_play_batch) if (not hostvars[server].known_tokens.stat.exists) or (hostvars[server].known_tokens.stat.checksum | default('') != known_tokens_control_plane.stat.checksum | default('')) -%} {%- set _ = tokens.update({'sync': True}) -%} {%- endfor -%} {{ tokens.sync }} run_once: true