Merge "[packaging] Switch using 3.0 native source format"
diff --git a/kubernetes/files/kube-addons/contrail/contrail.yaml b/kubernetes/files/kube-addons/contrail/contrail.yaml
index a8bc7b5..5a007df 100644
--- a/kubernetes/files/kube-addons/contrail/contrail.yaml
+++ b/kubernetes/files/kube-addons/contrail/contrail.yaml
@@ -157,21 +157,21 @@
       - name: etc-contrail
         hostPath:
           path: /etc/contrail
-          type: Directory
+          type: DirectoryOrCreate
       - name: contrail-logs
         hostPath:
           path: /var/log/contrail
-          type: Directory
+          type: DirectoryOrCreate
 
       # controller
       - name: var-lib-configdb
         hostPath:
           path: /var/lib/configdb
-          type: Directory
+          type: DirectoryOrCreate
       - name: var-lib-config-zookeeper-data
         hostPath:
           path: /var/lib/config_zookeeper_data
-          type: Directory
+          type: DirectoryOrCreate
       - name: etc-cassandra-cassandra-env-sh
         hostPath:
           path: /etc/cassandra/cassandra-env.sh
@@ -205,11 +205,11 @@
       - name: var-lib-analyticsdb
         hostPath:
           path: /var/lib/analyticsdb
-          type: Directory
+          type: DirectoryOrCreate
       - name: var-lib-analyticsdb-zookeeper-data
         hostPath:
           path: /var/lib/analyticsdb-zookeeper-data
-          type: Directory
+          type: DirectoryOrCreate
       - name: var-lib-zookeeper-myid    # is used for controller as well
         hostPath:
           path: /var/lib/zookeeper/myid
@@ -229,7 +229,7 @@
       - name: usr-share-kafka-logs
         hostPath:
           path: /usr/share/kafka/logs
-          type: Directory
+          type: DirectoryOrCreate
       - name: etc-zookeeper-conf-zoo-analytics-cfg
         hostPath:
           path: /etc/zookeeper/conf/zoo_analytics.cfg
diff --git a/kubernetes/files/kubelet/default.pool b/kubernetes/files/kubelet/default.pool
index dfd9af9..beb39c5 100644
--- a/kubernetes/files/kubelet/default.pool
+++ b/kubernetes/files/kubelet/default.pool
@@ -2,6 +2,21 @@
 {%- from "kubernetes/map.jinja" import pool with context -%}
 {%- from "kubernetes/map.jinja" import version %}
 
+{%- if pillar.kubernetes.get('master', {}).get('network', {}).get('opencontrail', {}).get('enabled', false) %}
+{%- if pillar.kubernetes.get('master', {}).get('network', {}).get('opencontrail', {}).get('version', 3.0) >= 4.0 %}
+{%- if pillar.kubernetes.get('master', {}).get('enabled', false) %}
+{# in case of OC4 there should not be CNI used #}
+{%- set add_networking_plugin_conf = False %}
+{%- endif %}
+{%- else %}
+{# in case of OC3 CNI should be everywhere #}
+{%- set add_networking_plugin_conf = True %}
+{%- endif %}
+{%- else %}
+{# In case of calico or any compute node - CNI should be everywhere #}
+{%- set add_networking_plugin_conf = True %}
+{%- endif %}
+
 # test_args has to be kept at the end, so they'll overwrite any prior configuration
 DAEMON_ARGS="\
 --kubeconfig=/etc/kubernetes/kubelet.kubeconfig \
@@ -30,8 +45,10 @@
 --node-labels=node-role.kubernetes.io/node=true \
 --node-labels=extraRuntime=virtlet \
 {%- endif %}
+{%- if add_networking_plugin_conf %}
 --network-plugin=cni \
 --cni-bin-dir={{ pool.apiserver.get('cni_bin_dir', '/opt/cni/bin') }} \
+{%- endif %}
 --file-check-frequency={{ pool.kubelet.frequency }} \
 {%- if common.get('cloudprovider', {}).get('enabled') %}
 --cloud-provider={{ common.cloudprovider.provider }} \