Paillasse/ansible/roles/go/tasks/main.yml

33 lines
1,010 B
YAML
Raw Permalink Normal View History

---
- name: télécharger Go {{ go_version }} (archive officielle, somme vérifiée)
ansible.builtin.get_url:
url: "https://go.dev/dl/go{{ go_version }}.linux-amd64.tar.gz"
dest: "/tmp/go{{ go_version }}.linux-amd64.tar.gz"
checksum: "sha256:{{ go_sha256 }}"
mode: "0644"
- name: vérifier si Go est déjà installé dans cette version
ansible.builtin.command: /usr/local/go/bin/go version
register: go_deja_installe
failed_when: false
changed_when: false
- name: supprimer une éventuelle ancienne version de Go
ansible.builtin.file:
path: /usr/local/go
state: absent
when: go_version not in (go_deja_installe.stdout | default(''))
- name: extraire Go dans /usr/local
ansible.builtin.unarchive:
src: "/tmp/go{{ go_version }}.linux-amd64.tar.gz"
dest: /usr/local
remote_src: true
creates: /usr/local/go/bin/go
- name: rendre go accessible dans le PATH
ansible.builtin.file:
src: /usr/local/go/bin/go
dest: /usr/local/bin/go
state: link