# Copyright (c) 2018 Huawei Technologies Co., Ltd. All Rights Reserved. # # 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. --- - set_fact: go_path: "{{ lookup('env', 'GOPATH') }}" - name: check go_path shell: "{{ item }}" with_items: - echo "The environment variable GOPATH must be set and cannot be an empty string!" - /bin/false when: go_path == "" - name: check for opensds source code existed stat: path: "{{ go_path }}/src/github.com/opensds/opensds" ignore_errors: yes register: opensdsexisted - name: download opensds source code if not exists git: repo: "{{ opensds_remote_url }}" dest: "{{ go_path }}/src/github.com/opensds/opensds" version: "{{ opensds_repo_branch }}" when: - opensdsexisted.stat.exists is undefined or opensdsexisted.stat.exists == false - name: build opensds binary file shell: make environment: GOPATH: "{{ go_path }}" args: chdir: "{{ go_path }}/src/github.com/opensds/opensds" - name: copy opensds binary files into opensds work directory copy: src: "{{ go_path }}/src/github.com/opensds/opensds/build/out/" dest: "{{ opensds_work_dir }}" - name: change the permissions of opensds executable files file: path: "{{ opensds_work_dir }}/bin" state: directory mode: 0755 recurse: yes