diff --git a/roles/network_plugin/tasks/calico.yml b/roles/network_plugin/tasks/calico.yml
index 1d455ef8feaa47dba2272c711ff89cd241d1ac38..2cf3e2b2c1c6820be0ac4da1365c5857ec8c41c0 100644
--- a/roles/network_plugin/tasks/calico.yml
+++ b/roles/network_plugin/tasks/calico.yml
@@ -23,8 +23,6 @@
 
 - name: Calico | Configure calico network pool
   shell: calicoctl pool add {{ kube_pods_subnet }}
-  environment:
-     ETCD_AUTHORITY: "{{ groups['etcd'][0] }}:2379"
   run_once: true
   when: calico_conf.status == 404
   delegate_to: "{{ groups['etcd'][0] }}"
@@ -63,9 +61,13 @@
 
 - name: Calico | Disable node mesh
   shell: calicoctl bgp node-mesh off
+  environment:
+     ETCD_AUTHORITY: "{{ groups['etcd'][0] }}:2379"
   when: peer_with_router|default(false) and inventory_hostname in groups['kube-node']
 
 - name: Calico | Configure peering with router(s)
   shell: calicoctl node bgp peer add {{ item.router_id }} as {{ item.as }}
+  environment:
+     ETCD_AUTHORITY: "{{ groups['etcd'][0] }}:2379"
   with_items: peers
   when: peer_with_router|default(false) and inventory_hostname in groups['kube-node']