Added seed code for caas-danm.
[ta/caas-danm.git] / ansible / roles / flannel / tasks / main.yaml
diff --git a/ansible/roles/flannel/tasks/main.yaml b/ansible/roles/flannel/tasks/main.yaml
new file mode 100644 (file)
index 0000000..0a3fd33
--- /dev/null
@@ -0,0 +1,51 @@
+---
+# Copyright 2019 Nokia
+# 
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#     http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- name: template Flannel DaemonSet file
+  template:
+    src: flannel-ds.yaml
+    dest: "{{ caas.manifests_directory }}/flannel-ds.yaml"
+
+- name: template Flannel ConfigMap file
+  template:
+    src: flannel-cm.yaml
+    dest: "{{ caas.manifests_directory }}/flannel-cm.yaml"
+
+- name: create Flannel ConfigMap
+  kubectl:
+    manifest: "{{ caas.manifests_directory }}/flannel-cm.yaml"
+    state: present
+
+- name: create Flannel DS
+  kubectl:
+    manifest: "{{ caas.manifests_directory }}/flannel-ds.yaml"
+    state: present
+
+- name: template DanmNet file for Flannel network for kube-system namespace
+  template:
+    src: flannel_dnet.yaml
+    dest: "{{ caas.manifests_directory }}/flannel-danm_net_kube_system_ns.yaml"
+
+- name: wait for DanmNet to be available
+  command: "kubectl api-resources"
+  register: kube_api_resources
+  until: kube_api_resources.stdout | search('danmnets')
+  retries: 10
+  delay: 1
+
+- name: create Flannel DanmNet within kube-system namespace
+  kubectl:
+    manifest: "{{ caas.manifests_directory }}/flannel-danm_net_kube_system_ns.yaml"
+    state: present