Replace flannel with calico
[icn.git] / deploy / cluster / templates / kubeadmconfigtemplate.yaml
index c56ed0f..22463d5 100644 (file)
@@ -15,6 +15,9 @@ spec:
             kube-reserved: cpu=100m,memory=256Mi
           name: '{{ "{{" }} ds.meta_data.name {{ "}}" }}'
       preKubeadmCommands:
+{{- if .Values.preKubeadmCommands }}
+{{ toYaml .Values.preKubeadmCommands | indent 6 }}
+{{- end }}
 {{- if .Values.networks }}
       # Without touching up /etc/hosts, kubeadm may pick the wrong
       # (i.e. provisioning network) address for the node IP
@@ -24,7 +27,7 @@ spec:
       - add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
       - curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
       - add-apt-repository "deb https://apt.kubernetes.io/ kubernetes-xenial main"
-      - apt update -y
+      - apt-get update -y
       - apt-get install -y ca-certificates
       - /usr/local/bin/install-container-runtime.sh
       - apt-get install -y kubelet={{ .Values.kubeVersion }} kubeadm={{ .Values.kubeVersion }} kubectl={{ .Values.kubeVersion }}
@@ -47,6 +50,12 @@ spec:
         permissions: '0777'
         content: |
 {{ $.Files.Get "resources/set_kernel_cmdline.sh" | indent 10 }}
+{{- if eq .Values.cni "calico" }}
+      - path: /etc/NetworkManager/conf.d/calico.conf
+        content: |
+{{ $.Files.Get "resources/calico.conf" | indent 10 }}
+{{- end }}
+{{- if .Values.userData }}
       users:
       - name: {{ .Values.userData.name }}
         shell: /bin/bash
@@ -59,3 +68,4 @@ spec:
       - name: root
         sshAuthorizedKeys:
         - {{ .Values.userData.sshAuthorizedKey }}
+{{- end }}