36 lines
1,014 B
YAML
36 lines
1,014 B
YAML
- name: Register the current Go version (if any)
|
|
command: go version
|
|
ignore_errors: yes
|
|
register: go_version
|
|
changed_when: false
|
|
|
|
- name: Download the Go tarball
|
|
get_url:
|
|
url: "https://go.dev/dl/{{ go_tarball }}"
|
|
dest: /usr/local/src/{{ go_tarball }}
|
|
checksum: "{{ go_checksum }}"
|
|
#when: go_version|failed or go_version.stdout != go_version_target
|
|
|
|
- name: Remove old installation of Go
|
|
file:
|
|
path: /usr/local/go
|
|
state: absent
|
|
#when: go_version|failed or go_version.stdout != go_version_target
|
|
|
|
- name: Extract the Go tarball if Go is not yet installed or not the desired version
|
|
unarchive:
|
|
src: /usr/local/src/{{ go_tarball }}
|
|
dest: /usr/local
|
|
copy: no
|
|
#when: go_version|failed or go_version.stdout != go_version_target
|
|
|
|
- name: Add the Go bin directory to the PATH environment variable for all users
|
|
copy:
|
|
src: go-bin.sh
|
|
dest: /etc/profile.d
|
|
|
|
- name: Set GOPATH for all users
|
|
copy:
|
|
src: go-path.sh
|
|
dest: /etc/profile.d
|
|
#when: set_go_path
|