summaryrefslogtreecommitdiffstats
path: root/deploy/adapters/ansible/kubernetes/roles/kargo/tasks
diff options
context:
space:
mode:
authorhu xinhui <xinhui_hu@foxmail.com>2017-08-30 15:36:13 +0800
committerhu xinhui <xinhui_hu@foxmail.com>2017-09-08 22:22:58 +0800
commit0d057d8e10fd5e29156516196ffec60ecb115087 (patch)
treecf0c2ca0caef922a1fd9e57f8c29173ba0f47aa3 /deploy/adapters/ansible/kubernetes/roles/kargo/tasks
parentacab17c36763b7679a6d761f438412e591347902 (diff)
Add k8s support
JIRA: - Add a new k8s scenario for compass Change-Id: Ic5f58a6152315333684e4f2752aaa0d5d870d9ee Signed-off-by: hu xinhui <xinhui_hu@foxmail.com>
Diffstat (limited to 'deploy/adapters/ansible/kubernetes/roles/kargo/tasks')
-rw-r--r--deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml84
1 files changed, 84 insertions, 0 deletions
diff --git a/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml b/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml
new file mode 100644
index 00000000..4e902606
--- /dev/null
+++ b/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml
@@ -0,0 +1,84 @@
+##############################################################################
+# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+- name: clean local repo conf
+ file:
+ path: /etc/yum.repos.d
+ state: absent
+ run_once: "True"
+
+- name: create local repo conf dir
+ file:
+ path: /etc/yum.repos.d
+ state: directory
+ run_once: "True"
+
+- name: configure local mirror repo
+ copy:
+ src: mirrors.repo
+ dest: /etc/yum.repos.d/mirrors.repo
+ run_once: "True"
+
+- name: clean local pip conf to use official pip repo
+ file:
+ path: /root/.pip/pip.conf
+ state: absent
+ run_once: "True"
+
+- name: install dependency for ansible update
+ yum:
+ name: "{{ item }}"
+ state: latest
+ with_items:
+ - git
+ - libffi-devel
+ - openssl-devel
+ - python-devel
+ run_once: "True"
+
+- name: update python packages
+ pip:
+ name: "{{ item }}"
+ state: latest
+ with_items:
+ - netaddr
+ - jinja2
+
+
+- name: copy inventories generate script
+ copy:
+ src: generate_inventories.py
+ dest: /tmp/generate_inventories.py
+ tags:
+ - ansible
+
+- name: generate kargo inventories
+ shell: >
+ python /tmp/generate_inventories.py \
+ "/opt/kargo_k8s/inventory/inventory.cfg" \
+ "{{ ip_settings | to_json }}"
+ tags:
+ - ansible
+
+- name: configure target hosts
+ shell: |
+ cd /opt/kargo_k8s
+ ansible -i inventory/inventory.cfg -m ping all
+ ansible -i inventory/inventory.cfg all -m shell -a "rm /etc/yum.repos.d/*"
+ ansible -i inventory/inventory.cfg all -m copy -a \
+ "src=/etc/yum.repos.d/mirrors.repo dest=/etc/yum.repos.d"
+ tags:
+ - ansible
+
+- name: run kargo playbook
+ shell: |
+ cd /opt/kargo_k8s
+ ansible-playbook -i inventory/inventory.cfg cluster.yml -b -v 2>&1 | tee kargo.log
+ tags:
+ - ansible