diff options
author | Alexander Couzens <lynxis@fe80.eu> | 2023-01-10 01:41:27 +0100 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2023-03-23 08:52:06 +0000 |
commit | 607cedc30854819782acac774aadbb0894202ce9 (patch) | |
tree | a427a083e12b72fc2f6955b722d4e3424ea2b408 | |
parent | f2e49f051ce3bc066c9227066fdca3a522125c75 (diff) |
ansible: install-coverity: ensure it's not installed twice
Check if the coverity path already exists. Even this wouldn't
detect if the coverity has been only installed half way.
Related: OS#5801
Change-Id: I95549983bb6bd47e04eb37c73afe5409637f87d3
-rw-r--r-- | ansible/roles/install-coverity/tasks/main.yml | 65 |
1 files changed, 35 insertions, 30 deletions
diff --git a/ansible/roles/install-coverity/tasks/main.yml b/ansible/roles/install-coverity/tasks/main.yml index 6192c27..246fa36 100644 --- a/ansible/roles/install-coverity/tasks/main.yml +++ b/ansible/roles/install-coverity/tasks/main.yml @@ -5,39 +5,44 @@ - curl tags: [coverity] -- name: copy coverity installer - copy: - src: "{{ coverity_installer_file }}" - dest: "/tmp/{{ coverity_installer_file }}" - mode: 0750 - register: coverity_copy - ignore_errors: yes +- name: check if coverity needs to be installed + stat: + path: "/opt/coverity/{{ coverity_version }}/" + register: coverity_stat tags: [coverity] -- name: create /opt/coverity/{{ coverity_version }}/ - file: - path: /opt/coverity/{{ coverity_version }}/ - state: directory - when: coverity_copy.failed == False +- name: install coverity if required + when: coverity_stat.stat.exists == False tags: [coverity] + block: + - name: copy coverity installer + copy: + src: "{{ coverity_installer_file }}" + dest: "/tmp/{{ coverity_installer_file }}" + mode: 0750 + register: coverity_copy + ignore_errors: yes -- name: unpack coverity - unarchive: - src: "/tmp/{{ coverity_installer_file }}" - dest: /opt/coverity/{{ coverity_version }} - remote_src: yes - when: coverity_copy.failed == False - tags: [coverity] + - name: create /opt/coverity/{{ coverity_version }}/ + file: + path: /opt/coverity/{{ coverity_version }}/ + state: directory + when: coverity_copy.failed == False -- name: create link /opt/coverity/current - shell: ln -sf /opt/coverity/{{ coverity_version }}/* /opt/coverity/current - args: - warn: false - when: coverity_copy.failed == False - tags: [coverity] + - name: unpack coverity + unarchive: + src: "/tmp/{{ coverity_installer_file }}" + dest: /opt/coverity/{{ coverity_version }} + remote_src: yes + when: coverity_copy.failed == False -- name: "Please download {{ coverity_installer_file }} to your ansible directory to allow ansible to install coverity" - debug: - msg: "Ansible can not find {{ coverity_installer_file }}" - when: coverity_copy.failed - tags: [coverity] + - name: create link /opt/coverity/current + shell: ln -sf /opt/coverity/{{ coverity_version }}/* /opt/coverity/current + args: + warn: false + when: coverity_copy.failed == False + + - name: "Please download {{ coverity_installer_file }} to your ansible directory to allow ansible to install coverity" + debug: + msg: "Ansible can not find {{ coverity_installer_file }}" + when: coverity_copy.failed |