Do not end host if correct go version is installed
Otherwise ansible will skip the test of the playbook if the correct go version is already installed. Change-Id: Iaa481e91738ececbdb7db7fbbdf56b27ad5995db
This commit is contained in:
parent
84b7c745b2
commit
146fe1f93f
25
roles/install-go/tasks/install-go.yaml
Normal file
25
roles/install-go/tasks/install-go.yaml
Normal file
@ -0,0 +1,25 @@
|
||||
- name: Create temp directory
|
||||
tempfile:
|
||||
state: directory
|
||||
register: go_archive_tempdir
|
||||
|
||||
- name: Get archive checksum
|
||||
uri:
|
||||
url: "https://dl.google.com/go/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz.sha256"
|
||||
return_content: true
|
||||
register: go_archive_checksum
|
||||
|
||||
|
||||
- name: Download go archive
|
||||
get_url:
|
||||
url: "https://dl.google.com/go/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz"
|
||||
dest: "{{ go_archive_tempdir.path }}/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz"
|
||||
checksum: "sha256:{{ go_archive_checksum.content }}"
|
||||
|
||||
- name: Install go
|
||||
unarchive:
|
||||
src: "{{ go_archive_tempdir.path }}/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz"
|
||||
dest: "{{ go_install_dir }}"
|
||||
remote_src: yes
|
||||
become: true
|
||||
|
@ -6,34 +6,9 @@
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Skip if correct version of go is installed
|
||||
meta: end_host
|
||||
include_tasks: install-go.yaml
|
||||
when:
|
||||
- go_installed_version.rc == 0
|
||||
- go_version == (go_installed_version.stdout|regex_replace(go_version_pattern, '\\g<version>'))
|
||||
- go_os == (go_installed_version.stdout|regex_replace(go_version_pattern, '\\g<os>'))
|
||||
- go_arch == (go_installed_version.stdout|regex_replace(go_version_pattern, '\\g<arch>'))
|
||||
|
||||
- name: Create temp directory
|
||||
tempfile:
|
||||
state: directory
|
||||
register: go_archive_tempdir
|
||||
|
||||
- name: Get archive checksum
|
||||
uri:
|
||||
url: "https://dl.google.com/go/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz.sha256"
|
||||
return_content: true
|
||||
register: go_archive_checksum
|
||||
|
||||
|
||||
- name: Download go archive
|
||||
get_url:
|
||||
url: "https://dl.google.com/go/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz"
|
||||
dest: "{{ go_archive_tempdir.path }}/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz"
|
||||
checksum: "sha256:{{ go_archive_checksum.content }}"
|
||||
|
||||
- name: Install go
|
||||
unarchive:
|
||||
src: "{{ go_archive_tempdir.path }}/go{{ go_version }}.{{ go_os }}-{{ go_arch }}.tar.gz"
|
||||
dest: "{{ go_install_dir }}"
|
||||
remote_src: yes
|
||||
become: true
|
||||
- go_installed_version.rc != 0 or
|
||||
go_version != (go_installed_version.stdout|regex_replace(go_version_pattern, '\\g<version>')) or
|
||||
go_os != (go_installed_version.stdout|regex_replace(go_version_pattern, '\\g<os>')) or
|
||||
go_arch != (go_installed_version.stdout|regex_replace(go_version_pattern, '\\g<arch>'))
|
||||
|
Loading…
x
Reference in New Issue
Block a user