Update the latest version of ansible script
[stor4nfv.git] / ci / ansible / roles / nbp-installer / scenarios / repository.yml
1 # Copyright (c) 2018 Huawei Technologies Co., Ltd. All Rights Reserved.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #     http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 ---
16 - set_fact:
17     go_path: "{{ lookup('env', 'GOPATH') }}"
18
19 - name: check go_path
20   shell: "{{ item }}"
21   with_items:
22       - echo "The environment variable GOPATH must be set and cannot be an empty string!"
23       - /bin/false
24   when: go_path == ""
25
26 - name: check for nbp source code existed
27   stat:
28     path: "{{ go_path }}/src/github.com/opensds/nbp"
29   ignore_errors: yes
30   register: nbpexisted
31
32 - name: download nbp source code if not exists
33   git:
34     repo: "{{ nbp_remote_url }}"
35     dest: "{{ go_path }}/src/github.com/opensds/nbp"
36     version: "{{ nbp_repo_branch }}"
37   when:
38     - nbpexisted.stat.exists is undefined or nbpexisted.stat.exists == false
39
40 - name: build nbp binary file
41   shell: make
42   environment:
43     GOPATH: "{{ go_path }}"
44   args:
45     chdir: "{{ go_path }}/src/github.com/opensds/nbp"
46
47 - name: create nbp install directory if it doesn't exist
48   file:
49     path: "{{ item }}"
50     state: directory
51     mode: 0755
52   with_items:
53     - "{{ nbp_work_dir }}/csi"
54     - "{{ nbp_work_dir }}/flexvolume"
55     - "{{ nbp_work_dir }}/provisioner"
56
57 - name: copy nbp csi deploy scripts into nbp work directory
58   copy:
59     src: "{{ item }}"
60     dest: "{{ nbp_work_dir }}/csi/"
61     directory_mode: yes
62   with_items:
63     - "{{ go_path }}/src/github.com/opensds/nbp/csi/server/deploy"
64     - "{{ go_path }}/src/github.com/opensds/nbp/csi/server/examples"
65
66 - name: copy nbp flexvolume binary file into nbp work directory
67   copy:
68     src: "{{ go_path }}/src/github.com/opensds/nbp/.output/flexvolume.server.opensds"
69     dest: "{{ nbp_work_dir }}/flexvolume/opensds"
70     mode: 0755
71
72 - name: copy nbp provisioner deploy scripts into nbp work directory
73   copy:
74     src: "{{ item }}"
75     dest: "{{ nbp_work_dir }}/provisioner/"
76     directory_mode: yes
77   with_items:
78     - "{{ go_path }}/src/github.com/opensds/nbp/opensds-provisioner/deploy"
79     - "{{ go_path }}/src/github.com/opensds/nbp/opensds-provisioner/examples"