Install go manually
This commit is contained in:
@@ -11,9 +11,6 @@ packages:
|
|||||||
- cmake
|
- cmake
|
||||||
- maven
|
- maven
|
||||||
- base-devel
|
- base-devel
|
||||||
golang:
|
|
||||||
ubuntu: ["golang-go"]
|
|
||||||
archlinux: ["go"]
|
|
||||||
make:
|
make:
|
||||||
ubuntu: ["make"]
|
ubuntu: ["make"]
|
||||||
archlinux: ["make"]
|
archlinux: ["make"]
|
||||||
@@ -400,3 +397,6 @@ packages:
|
|||||||
snap:
|
snap:
|
||||||
ubuntu: ["snapd"]
|
ubuntu: ["snapd"]
|
||||||
archlinux: []
|
archlinux: []
|
||||||
|
golang:
|
||||||
|
ubuntu: ["golang-go"]
|
||||||
|
archlinux: ["go"]
|
||||||
|
|||||||
54
playbook.yml
54
playbook.yml
@@ -507,6 +507,60 @@
|
|||||||
when: distro == 'ubuntu'
|
when: distro == 'ubuntu'
|
||||||
tags: [signal]
|
tags: [signal]
|
||||||
|
|
||||||
|
- block:
|
||||||
|
- name: set go version
|
||||||
|
set_fact:
|
||||||
|
go_version: "1.17.1"
|
||||||
|
|
||||||
|
- name: stat go target directory
|
||||||
|
stat:
|
||||||
|
path: /usr/local/go-v{{ go_version }}
|
||||||
|
register: go_target_stat
|
||||||
|
|
||||||
|
- block:
|
||||||
|
- name: create temporary directory for go download
|
||||||
|
tempfile:
|
||||||
|
state: directory
|
||||||
|
register: go_download
|
||||||
|
|
||||||
|
- name: download go
|
||||||
|
get_url:
|
||||||
|
url: https://golang.org/dl/go{{ go_version }}.linux-amd64.tar.gz
|
||||||
|
dest: "{{ go_download.path }}/go{{ go_version }}.linux-amd64.tar.gz"
|
||||||
|
|
||||||
|
- name: unpack go
|
||||||
|
unarchive:
|
||||||
|
src: "{{ go_download.path }}/go{{ go_version }}.linux-amd64.tar.gz"
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: '0755'
|
||||||
|
dest: "{{ go_download.path }}"
|
||||||
|
remote_src: true
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: install new go version
|
||||||
|
command: mv "{{ go_download.path }}/go/" /usr/local/go-v{{ go_version }}
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: clean up go download directory
|
||||||
|
file:
|
||||||
|
path: "{{ go_download.path }}"
|
||||||
|
state: absent
|
||||||
|
|
||||||
|
when: not go_target_stat.stat.exists
|
||||||
|
|
||||||
|
- name: link to the current go version
|
||||||
|
file:
|
||||||
|
src: /usr/local/go-v{{ go_version }}
|
||||||
|
dest: /usr/local/go
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
state: link
|
||||||
|
force: true
|
||||||
|
become: true
|
||||||
|
|
||||||
|
tags: [go]
|
||||||
|
|
||||||
- name: create dotfiles group
|
- name: create dotfiles group
|
||||||
group:
|
group:
|
||||||
name: dotfiles
|
name: dotfiles
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
_path=("$HOME/bin"
|
_path=("$HOME/bin"
|
||||||
"$HOME/.optbin"
|
"$HOME/.optbin"
|
||||||
|
"/usr/local/go/bin"
|
||||||
"/usr/local/sbin"
|
"/usr/local/sbin"
|
||||||
"/usr/local/bin"
|
"/usr/local/bin"
|
||||||
"/usr/sbin"
|
"/usr/sbin"
|
||||||
|
|||||||
Reference in New Issue
Block a user