blob: f9a69028136713f250fac002c32594a04d2a54cf [file] [log] [blame]
marcoacdae7e2015-12-02 15:35:37 +01001{% from "kubernetes/map.jinja" import common with context %}
2
3kubernetes_pkgs:
4 pkg.installed:
5 - names: {{ common.pkgs }}
6
marcoacdae7e2015-12-02 15:35:37 +01007{%- if common.network.get('engine', 'none') == 'flannel' %}
8flannel-tar:
9 archive:
10 - extracted
11 - user: root
12 - name: /usr/local/src
13 - makedirs: True
14 - source: https://storage.googleapis.com/kubernetes-release/flannel/flannel-0.5.5-linux-amd64.tar.gz
15 - tar_options: v
16 - source_hash: md5=972c717254775bef528f040af804f2cc
17 - archive_format: tar
18 - if_missing: /usr/local/src/flannel/flannel-0.5.5/
Tomáš Kukrál189da4b2017-01-18 14:30:09 +010019{%- endif %}
20
Swann Croisetba4172b2017-03-16 10:43:48 +010021{%- if common.hyperkube is defined %}
Tomáš Kukrál189da4b2017-01-18 14:30:09 +010022/tmp/hyperkube:
23 file.directory:
24 - user: root
25 - group: root
26
27hyperkube-copy:
28 dockerng.running:
29 - image: {{ common.hyperkube.image }}
30 - command: cp -v /hyperkube /tmp/hyperkube
31 - binds:
32 - /tmp/hyperkube/:/tmp/hyperkube/
33 - force: True
34 - require:
35 - file: /tmp/hyperkube
36
37/usr/bin/hyperkube:
38 file.managed:
39 - source: /tmp/hyperkube/hyperkube
40 - mode: 751
41 - makedirs: true
42 - user: root
43 - group: root
44 - require:
45 - dockerng: hyperkube-copy
46
Tomáš Kukráld79276d2017-01-24 16:43:40 +010047/usr/bin/kubectl:
48 file.symlink:
49 - target: /usr/bin/hyperkube
50 - require:
51 - file: /usr/bin/hyperkube
52
Tomáš Kukrál189da4b2017-01-18 14:30:09 +010053/etc/systemd/system/kubelet.service:
54 file.managed:
55 - source: salt://kubernetes/files/systemd/kubelet.service
56 - template: jinja
57 - user: root
58 - group: root
59 - mode: 644
60
61/etc/kubernetes/config:
62 file.absent
63
64/etc/kubernetes/manifests:
65 file.directory:
66 - user: root
67 - group: root
68 - mode: 0751
69
70{%- if not pillar.kubernetes.pool is defined %}
71
72/etc/default/kubelet:
73 file.managed:
74 - source: salt://kubernetes/files/kubelet/default.master
75 - template: jinja
76 - user: root
77 - group: root
78 - mode: 644
79
80{%- else %}
81
82/etc/default/kubelet:
83 file.managed:
84 - source: salt://kubernetes/files/kubelet/default.pool
85 - template: jinja
86 - user: root
87 - group: root
88 - mode: 644
89
90{%- endif %}
91
Tomáš Kukrál7f43ee02017-01-24 12:18:34 +010092manifest_dir_create:
93 file.directory:
94 - name: /etc/kubernetes/manifests
95 - user: root
96 - group: root
97 - mode: 0751
98
99/etc/kubernetes/kubelet.kubeconfig:
100 file.managed:
101 - source: salt://kubernetes/files/kubelet/kubelet.kubeconfig
102 - template: jinja
103 - user: root
104 - group: root
105 - mode: 644
106 - makedirs: true
Tomáš Kukrál189da4b2017-01-18 14:30:09 +0100107
108kubelet_service:
109 service.running:
110 - name: kubelet
111 - enable: True
112 - watch:
113 - file: /etc/default/kubelet
114 - file: /usr/bin/hyperkube
Tomáš Kukrál3728a5c2017-01-24 11:15:37 +0100115 - file: /etc/kubernetes/kubelet.kubeconfig
Tomáš Kukrál7f43ee02017-01-24 12:18:34 +0100116 - file: manifest_dir_create
Tomáš Kukrál189da4b2017-01-18 14:30:09 +0100117
Swann Croisetba4172b2017-03-16 10:43:48 +0100118{%- if common.logrotate is defined %}
119/etc/logrotate.d/kubernetes:
120 file.managed:
121 - source: salt://kubernetes/files/logrotate
122 - template: jinja
123 - user: root
124 - group: root
125 - mode: 644
126 - makedirs: true
127 - defaults:
128 logfile: {{ common.logrotate }}
129
130{% endif %}
Tomáš Kukrál189da4b2017-01-18 14:30:09 +0100131{% endif %}