Skip to content

Commit ddca636

Browse files
committed
k3s no longer runs if token isn't provided
1 parent 5f7e48f commit ddca636

File tree

1 file changed

+33
-25
lines changed

1 file changed

+33
-25
lines changed

ansible/roles/k3s/files/start_k3s.yml

Lines changed: 33 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,31 +6,39 @@
66
k3s_server_name: "{{ os_metadata.meta.control_address }}"
77
service_name: "{{ 'k3s-agent' if k3s_server_name is defined else 'k3s' }}"
88
tasks:
9-
- name: Ensure password directory exists
10-
ansible.builtin.file:
11-
path: "/etc/rancher/node"
12-
state: directory
9+
- name: "Start {{ service_name }}"
10+
when: k3s_token is defined
11+
block:
12+
- name: Ensure password directory exists
13+
ansible.builtin.file:
14+
path: "/etc/rancher/node"
15+
state: directory
16+
17+
- name: Set agent node password as token # uses token to keep password consistent between reimages
18+
ansible.builtin.copy:
19+
dest: /etc/rancher/node/password
20+
content: "{{ k3s_token }}"
1321

14-
- name: Set agent node password as token # uses token to keep password consistent between reimages
15-
ansible.builtin.copy:
16-
dest: /etc/rancher/node/password
17-
content: "{{ k3s_token }}"
18-
19-
- name: Add the token for joining the cluster to the environment
20-
no_log: true # avoid logging the server token
21-
ansible.builtin.lineinfile:
22-
path: "/etc/systemd/system/{{ service_name }}.service.env"
23-
line: "K3S_TOKEN={{ k3s_token }}"
22+
- name: Add the token for joining the cluster to the environment
23+
no_log: true # avoid logging the server token
24+
ansible.builtin.lineinfile:
25+
path: "/etc/systemd/system/{{ service_name }}.service.env"
26+
line: "K3S_TOKEN={{ k3s_token }}"
2427

25-
- name: Add server url to agents
26-
ansible.builtin.lineinfile:
27-
path: "/etc/systemd/system/{{ service_name }}.service.env"
28-
line: "K3S_URL=https://{{ k3s_server_name }}:6443"
29-
when: k3s_server_name is defined
28+
- name: Add server url to agents
29+
ansible.builtin.lineinfile:
30+
path: "/etc/systemd/system/{{ service_name }}.service.env"
31+
line: "K3S_URL=https://{{ k3s_server_name }}:6443"
32+
when: k3s_server_name is defined
3033

31-
- name: Start k3s service
32-
ansible.builtin.systemd:
33-
name: "{{ service_name }}"
34-
daemon_reload: true
35-
state: started
36-
enabled: true
34+
- name: Start k3s service
35+
ansible.builtin.systemd:
36+
name: "{{ service_name }}"
37+
daemon_reload: true
38+
state: started
39+
enabled: true
40+
41+
- name: Output
42+
when: k3s_token is undefined
43+
ansible.builtin.debug:
44+
msg: K3s token not defined in Openstack metadata, skipping.

0 commit comments

Comments
 (0)