61 lines
1.6 KiB
YAML
61 lines
1.6 KiB
YAML
---
|
|
apiVersion: v1
|
|
kind: Pod
|
|
metadata:
|
|
name: asset-loader
|
|
namespace: kube-system
|
|
labels:
|
|
app: promenade
|
|
component: asset-loader
|
|
spec:
|
|
dnsPolicy: Default # Don't use cluster DNS.
|
|
hostNetwork: true
|
|
containers:
|
|
- name: loader
|
|
image: gcr.io/google_containers/hyperkube-amd64:v1.6.4
|
|
command:
|
|
- /bin/bash
|
|
- -c
|
|
- |-
|
|
set -x
|
|
|
|
export KUBECONFIG=/etc/kubernetes/asset-loader/kubeconfig.yaml
|
|
DELAY=20
|
|
|
|
while ! /kubectl apply -f /etc/kubernetes/asset-loader/cni; do
|
|
sleep $DELAY
|
|
done
|
|
|
|
while ! /kubectl get nodes | tail -n +2 | grep Ready; do
|
|
sleep $DELAY
|
|
done
|
|
|
|
while ! /kubectl apply -f /etc/kubernetes/asset-loader/dns; do
|
|
sleep $DELAY
|
|
done
|
|
|
|
while ! /kubectl -n kube-system get pods | grep dns | grep Running; do
|
|
sleep $DELAY
|
|
done
|
|
|
|
while ! /kubectl apply -f /etc/kubernetes/asset-loader/assets; do
|
|
sleep $DELAY
|
|
done
|
|
|
|
rm -rf /etc/kubernetes/kubelet/manifests/asset-loader.yaml
|
|
# Sleep so that kubelet doesn't restart this pod before it kills it
|
|
sleep 10000
|
|
volumeMounts:
|
|
- name: config
|
|
mountPath: /etc/kubernetes/asset-loader
|
|
readOnly: true
|
|
- name: manifests
|
|
mountPath: /etc/kubernetes/kubelet/manifests
|
|
volumes:
|
|
- name: config
|
|
hostPath:
|
|
path: /etc/kubernetes/asset-loader
|
|
- name: manifests
|
|
hostPath:
|
|
path: /etc/kubernetes/kubelet/manifests
|