summaryrefslogtreecommitdiff
path: root/roles/kubernetes/kubeadm/base/tasks
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2019-09-29 00:42:21 +0200
committerChristian Pointner <equinox@spreadspace.org>2019-10-10 19:27:38 +0200
commit98308448d40f3c07c4afd58cf41ba2ad6dfe7e23 (patch)
treecc81cae3a6d1810cded6c29cdf976bf64ad10661 /roles/kubernetes/kubeadm/base/tasks
parentsk-torrent role (diff)
refactoring kubernetes roles
Diffstat (limited to 'roles/kubernetes/kubeadm/base/tasks')
-rw-r--r--roles/kubernetes/kubeadm/base/tasks/main.yml34
1 files changed, 34 insertions, 0 deletions
diff --git a/roles/kubernetes/kubeadm/base/tasks/main.yml b/roles/kubernetes/kubeadm/base/tasks/main.yml
new file mode 100644
index 00000000..2d9b9eed
--- /dev/null
+++ b/roles/kubernetes/kubeadm/base/tasks/main.yml
@@ -0,0 +1,34 @@
+---
+- name: install kubeadm and kubectl
+ apt:
+ name:
+ - "kubeadm{% if kubernetes.pkg_version is defined %}={{ kubernetes.pkg_version }}{% endif %}"
+ - "kubectl{% if kubernetes.pkg_version is defined %}={{ kubernetes.pkg_version }}{% endif %}"
+ state: present
+
+- name: disable automatic upgrades for kubeadm and kubectl
+ when: kubernetes.pkg_version is defined
+ loop:
+ - kubeadm
+ - kubectl
+ dpkg_selections:
+ name: "{{ item }}"
+ selection: hold
+
+- name: set kubelet node-ip
+ lineinfile:
+ name: "/etc/default/kubelet"
+ regexp: '^KUBELET_EXTRA_ARGS='
+ line: 'KUBELET_EXTRA_ARGS=--node-ip={{ kubernetes.pod_ip_range | ipsubnet(kubernetes.pod_ip_range_size, kubernetes.net_index[inventory_hostname]) | ipaddr(1) | ipaddr("address") }}'
+
+- name: add kubectl/kubeadm completion for shells
+ loop:
+ - zsh
+ - bash
+ blockinfile:
+ path: "/root/.{{ item }}rc"
+ create: yes
+ marker: "### {mark} ANSIBLE MANAGED BLOCK for kubectl ###"
+ content: |
+ source <(kubectl completion {{ item }})
+ source <(kubeadm completion {{ item }})