--- /dev/null
+# Copyright 2020 Huawei Technologies Co., Ltd.
+#
+# 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: check whether k3s is already installed
+ shell:
+ cmd: which k3s
+ register: result
+ ignore_errors: yes
+ no_log: True
+
+- debug:
+ msg: k3s is already present
+ when: result.stdout != ""
+
+- debug:
+# yamllint disable rule:line-length
+ msg: Ignore Uninstall Log , k3s not installed continue with Installation
+# yamllint disable rule:line-length
+ when: result.stdout == ""
+
+- debug:
+ msg: K3 Installation started on {{ ansible_facts['distribution'] }} MEP Node
+
+- name: "INSTALL: Disabling firewall for successfull k3s installation on CentOs"
+ shell:
+ cmd: systemctl stop firewalld
+ when: ansible_facts['distribution'] == "CentOS" and result is failed
+
+- name: "INSTALL: install container-selinux"
+ shell:
+ cmd: yum install -y container-selinux selinux-policy-base
+ when: ansible_facts['distribution'] == "CentOS" and result is failed
+ ignore_errors: true
+
+- name: "INSTALL: get interface name"
+ shell:
+ cmd: ip a |grep {{ ansible_host }} |awk '{print $NF}'
+ register: ifName
+ when: result is failed
+
+# yamllint disable rule:line-length
+- name: "INSTALL: install k3s"
+ shell:
+ cmd: curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--node-ip={{ ansible_host }} --node-external-ip={{ ansible_host }} --bind-address={{ ansible_host }} --flannel-iface=eth0 --docker --no-deploy=servicelb --no-deploy=traefik --write-kubeconfig-mode 644 --kube-apiserver-arg="service-node-port-range=30000-36000"" sh -
+ when: result is failed
+
+# yamllint disable rule:line-length
+
+#- name: "INSTALL: install k3s"
+# shell:
+# cmd: curl -sfL https://get.k3s.io | sh -
+# when: result is failed
+
+- name: "INSTALL: create .kube dir"
+ shell:
+ cmd: mkdir -p $HOME/.kube/
+ when: result is failed
+
+- name: "INSTALL: copy kubeconfig"
+ shell:
+ cmd: cp /etc/rancher/k3s/k3s.yaml $HOME/.kube/config
+ when: result is failed