apiVersion: v1
kind: Pod
metadata:
  name: kube-podmaster
  namespace: kube-system
spec:
  hostNetwork: true
  containers:
  - name: scheduler-elector
    image: gcr.io/google_containers/podmaster:1.1
    command:
    - /podmaster
    - --etcd-servers={% for srv in groups['etcd'] %}http://{{ srv }}:2379{% if not loop.last %},{% endif %}{% endfor %}

    - --key=scheduler
    - --source-file={{ kube_config_dir}}/kube-scheduler.manifest
    - --dest-file={{ kube_manifest_dir }}/kube-scheduler.manifest
    volumeMounts:
    - mountPath: {{ kube_config_dir }}
      name: manifest-src
      readOnly: true
    - mountPath: {{ kube_manifest_dir }}
      name: manifest-dst
  - name: controller-manager-elector
    image: gcr.io/google_containers/podmaster:1.1
    command:
    - /podmaster
    - --etcd-servers={% for srv in groups['etcd'] %}http://{{ srv }}:2379{% if not loop.last %},{% endif %}{% endfor %}

    - --key=controller
    - --source-file={{ kube_config_dir }}/kube-controller-manager.manifest
    - --dest-file={{ kube_manifest_dir }}/kube-controller-manager.manifest
    terminationMessagePath: /dev/termination-log
    volumeMounts:
    - mountPath: {{ kube_config_dir }}
      name: manifest-src
      readOnly: true
    - mountPath: {{ kube_manifest_dir }}
      name: manifest-dst
  volumes:
  - hostPath:
      path: {{ kube_config_dir }}
    name: manifest-src
  - hostPath:
      path: {{ kube_manifest_dir }}
    name: manifest-dst
