Merge "add changes for opencontrail"
diff --git a/kubernetes/files/kubelet/default.pool b/kubernetes/files/kubelet/default.pool
index 8cfa3ea..98f04c5 100644
--- a/kubernetes/files/kubelet/default.pool
+++ b/kubernetes/files/kubelet/default.pool
@@ -10,10 +10,7 @@
--cluster_domain={{ pool.cluster_domain }} \
--cni-bin-dir={{ pool.apiserver.get('cni_bin_dir', '/opt/cni/bin') }} \
--v={{ pool.get('verbosity', 2) }} \
-{%- if pool.network.engine == 'opencontrail' %}
---network-plugin={{ pool.network.engine }} \
-{%- endif %}
-{%- if pool.network.engine == 'calico' %}
+{%- if pool.network.engine in {'calico', 'opencontrail'} %}
--network-plugin=cni \
--network-plugin-dir=/etc/cni/net.d \
{%- endif %}
diff --git a/kubernetes/meta/salt.yml b/kubernetes/meta/salt.yml
index 3f06b43..5778336 100644
--- a/kubernetes/meta/salt.yml
+++ b/kubernetes/meta/salt.yml
@@ -1,6 +1,6 @@
grain:
kubernetes:
- {%- if pillar.kubernetes.pool is defined %}
+ {%- if pillar.get('kubernetes', {}).get('pool') %}
{%- from "kubernetes/map.jinja" import pool with context %}
{%- if pool.get('service', {})|length > 0 %}
{%- set service_grains = {'kubernetes': {'service': pool.get('service', {}).get('local', {})}} -%}
diff --git a/kubernetes/pool/init.sls b/kubernetes/pool/init.sls
index 398e905..b23da8c 100644
--- a/kubernetes/pool/init.sls
+++ b/kubernetes/pool/init.sls
@@ -4,6 +4,9 @@
{%- if pool.network.engine == "calico" %}
- kubernetes.pool.calico
{%- endif %}
+{%- if pool.network.engine == "opencontrail" %}
+- kubernetes.pool.opencontrail
+{%- endif %}
- kubernetes.pool.service
{%- if pool.network.engine == "flannel" %}
- kubernetes.pool.flannel
diff --git a/kubernetes/pool/opencontrail.sls b/kubernetes/pool/opencontrail.sls
index b0f43ab..1d9c907 100644
--- a/kubernetes/pool/opencontrail.sls
+++ b/kubernetes/pool/opencontrail.sls
@@ -11,5 +11,14 @@
- dir_mode: 755
- template: jinja
-
+/opt/cni/bin/opencontrail:
+ file.managed:
+ - source: http://apt.tcpcloud.eu/kubernetes/bin/opencontrail
+ - user: root
+ - group: root
+ - mode: 755
+ - makedirs: true
+ - dir_mode: 755
+ - template: jinja
+ - source_hash: md5={{ pool.network.hash }}
{%- endif %}