diff --git a/roles/rke2/tasks/config_ccm.yml b/roles/rke2/tasks/config_ccm.yml
index cddcecff990cab6eed27decab08cb8e9e3e86d82..e1ffde9564fab8395b3429ed76e4fd0b69fc9579 100644
--- a/roles/rke2/tasks/config_ccm.yml
+++ b/roles/rke2/tasks/config_ccm.yml
@@ -15,12 +15,9 @@
     dest: /tmp/cloud.conf
 
 - name: create secrets for CCM
-  ansible.builtin.command:
-    argv:
-      - /var/lib/rancher/rke2/bin/kubectl 
-      - create secret generic cloud-config
-      - --namespace kube-system
-      - --from-file=cloud.conf=/tmp/cloud.conf
+  ansible.builtin.shell:
+    executable: /var/lib/rancher/rke2/bin/kubectl
+    cmd: create secret generic cloud-config --namespace kube-system --from-file=cloud.conf=/tmp/cloud.conf
   environment:
     KUBECONFIG: /etc/rancher/rke2/rke2.yaml
 
diff --git a/roles/rke2/tasks/instantiate_token.yml b/roles/rke2/tasks/instantiate_token.yml
index efe691f5fc827877dbd8e40acc787886ba58f6c0..8cae0ca63ff5421943a0c7a370ad32a4275996e0 100644
--- a/roles/rke2/tasks/instantiate_token.yml
+++ b/roles/rke2/tasks/instantiate_token.yml
@@ -11,15 +11,16 @@
 
     - name: set token
       set_fact:
-        token: "{{ decoded_token.split('server:')[1] }}"
+        init_token: "{{ decoded_token.split('server:')[1] }}"
   rescue:
     - name: create token
       set_fact:
-        token: "{{ lookup('community.general.random_string', length=129, special=False) }}"
+        init_token: "{{ lookup('community.general.random_string', length=129, special=False) }}"
       when: token is not defined
 
 - name: Distribute token to all servers
-  ansible.builtin.setup:
+  set_fact:
+    token: "{{ init_token }}"
   delegate_to: "{{ item }}"
   delegate_facts: true
   loop: "{{ groups['all'] }}"
\ No newline at end of file