aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/stor4nfv/roles/stor4nfv/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/stor4nfv/roles/stor4nfv/tasks')
-rw-r--r--plugins/stor4nfv/roles/stor4nfv/tasks/main.yml2
-rw-r--r--plugins/stor4nfv/roles/stor4nfv/tasks/opensds.yml14
-rw-r--r--plugins/stor4nfv/roles/stor4nfv/tasks/post-install.yml69
-rw-r--r--plugins/stor4nfv/roles/stor4nfv/tasks/stor4nfv.yml12
4 files changed, 83 insertions, 14 deletions
diff --git a/plugins/stor4nfv/roles/stor4nfv/tasks/main.yml b/plugins/stor4nfv/roles/stor4nfv/tasks/main.yml
index 353282f9..dbaa8d6b 100644
--- a/plugins/stor4nfv/roles/stor4nfv/tasks/main.yml
+++ b/plugins/stor4nfv/roles/stor4nfv/tasks/main.yml
@@ -7,7 +7,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
# #############################################################################
---
-- include: opensds.yml
+- include: stor4nfv.yml
when:
- ansible_distribution == 'Ubuntu'
- stor4nfv is defined and stor4nfv == "Enable"
diff --git a/plugins/stor4nfv/roles/stor4nfv/tasks/opensds.yml b/plugins/stor4nfv/roles/stor4nfv/tasks/opensds.yml
index 7866e808..e84ce0aa 100644
--- a/plugins/stor4nfv/roles/stor4nfv/tasks/opensds.yml
+++ b/plugins/stor4nfv/roles/stor4nfv/tasks/opensds.yml
@@ -15,6 +15,7 @@
with_items:
- make
- gcc
+ - gawk
- name: copy install_ansible script
remote_user: root
@@ -26,12 +27,6 @@
- name: install ansible
command: su -s /bin/sh -c "/opt/install_ansible.sh"
-- name: install ceph-ansible code
- remote_user: root
- shell: |
- cd /opt;
- git clone https://github.com/ceph/ceph-ansible.git
-
- name: fetch stor4nfv source code
remote_user: root
shell: |
@@ -75,10 +70,3 @@
shell: |
cd $HOME/gopath/src/github.com/stor4nfv/stor4nfv/ci/ansible;
ansible-playbook site.yml -i local.hosts | tee /var/log/stor4nfv.log
- register: stor4nfv_result
-
-- name: export opensds endpoint
- remote_user: root
- shell: |
- export OPENSDS_ENDPOINT=http://127.0.0.1:50040
- when: stor4nfv_result|succeeded
diff --git a/plugins/stor4nfv/roles/stor4nfv/tasks/post-install.yml b/plugins/stor4nfv/roles/stor4nfv/tasks/post-install.yml
new file mode 100644
index 00000000..501d3baa
--- /dev/null
+++ b/plugins/stor4nfv/roles/stor4nfv/tasks/post-install.yml
@@ -0,0 +1,69 @@
+# #############################################################################
+# Copyright (c) 2018 Intel Corp.
+#
+# 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: define image architecture
+ set_fact:
+ imgarch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'amd64' }}"
+
+- name: ensure ceph-ansible dir exists
+ stat:
+ path: /opt/ceph-ansible
+ ignore_errors: "true"
+ register: ceph_ansible_exists
+
+- name: copy post-install.yml to /opt/ceph-ansible
+ remote_user: root
+ template:
+ src: post-install.yml.j2
+ dest: /opt/ceph-ansible/post-install.yml
+ when:
+ - ceph_ansible_exists.stat.exists is defined and ceph_ansible_exists.stat.exists
+
+- name: run post-install playbook
+ shell: ansible-playbook post-install.yml -i ceph.hosts
+ become: true
+ args:
+ chdir: /opt/ceph-ansible
+ ignore_errors: "true"
+ when:
+ - ceph_ansible_exists.stat.exists is defined and ceph_ansible_exists.stat.exists
+
+- name: remove post-install.yml
+ file:
+ path: /opt/ceph-ansible/post-install.yml
+ state: absent
+ when:
+ - ceph_ansible_exists.stat.exists is defined and ceph_ansible_exists.stat.exists
+
+- name: ensure osdsctl exists
+ stat:
+ path: /opt/opensds-hotpot-linux-{{ imgarch }}/bin/osdsctl
+ ignore_errors: "true"
+ register: osdsctl_exists
+
+- name: ensure opensds csi directory exists
+ stat:
+ path: /opt/opensds-sushi-linux-{{ imgarch }}
+ ignore_errors: "true"
+ register: csi_dir_exists
+
+- name: create opensds default profile, create csi pods
+ remote_user: root
+ shell: |
+ cp /opt/opensds-hotpot-linux-{{ imgarch }}/bin/osdsctl /usr/local/bin;
+ export OPENSDS_ENDPOINT=http://{{ public_vip.ip }}:50040;
+ export OPENSDS_AUTH_STRATEGY=noauth;
+ osdsctl profile create '{"name": "default", "description": "default policy"}';
+ cd /opt/opensds-sushi-linux-{{ imgarch }};
+ kubectl create -f csi/deploy/kubernetes
+ ignore_errors: "true"
+ when:
+ - osdsctl_exists.stat.exists is defined and osdsctl_exists.stat.exists
+ - csi_dir_exists.stat.exists is defined and csi_dir_exists.stat.exists
diff --git a/plugins/stor4nfv/roles/stor4nfv/tasks/stor4nfv.yml b/plugins/stor4nfv/roles/stor4nfv/tasks/stor4nfv.yml
new file mode 100644
index 00000000..57bae793
--- /dev/null
+++ b/plugins/stor4nfv/roles/stor4nfv/tasks/stor4nfv.yml
@@ -0,0 +1,12 @@
+# #############################################################################
+# Copyright (c) 2018 Intel Corp.
+#
+# 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
+# #############################################################################
+---
+- include: opensds.yml
+
+- include: post-install.yml