【功能建议】go安装指定版本
soapffz opened this issue · 9 comments
soapffz commented
默认安装的似乎是1.17版本
建议默认为1.18版本,增加额外选项安装最新版本
No-Github commented
ok,下个更新就加上去
No-Github commented
soapffz commented
可否有直接升至最新版本功能,代码可参考
version=$(curl -L -s https://golang.org/VERSION?m=text)
if [[ $(eval type go $DEBUG_ERROR | grep -o 'go is') == "go is" ]] && [ "$version" = $(go version | cut -d " " -f3) ]; then
printf "Golang is already installed and updated\n\n"
else
eval wget https://dl.google.com/go/${version}.linux-amd64.tar.gz
eval tar -C /usr/local -xzf ${version}.linux-amd64.tar.gz
fi
eval ln -sf /usr/local/go/bin/go /usr/local/bin/
rm -rf $version*
cat <<EOF >>~/.bashrc
# Golang vars
export GOROOT=/usr/local/go
export GOPATH=\$HOME/go
export PATH=\$GOPATH/bin:\$GOROOT/bin:\$HOME/.local/bin:\$PATH
EOF
No-Github commented
soapffz commented
针对这个issue最后需求,能否像-py38一样,使用-go-latest或者之类的选项直接实现安装最新版本,因为一些环境下不支持用户输入,比如我自己的dockerfile 11
soapffz commented
同理我相信其他的软件需要制定版本的时候也有类似需求,需要直接默认安装,而不是用户输入,当然在程序中维护每个软件的版本也不是易事,我也不知道有没有成熟的解决方案。。
No-Github commented
- 设计时偏交互式的考虑较多,要支持跑在非交互式里的话,需要多加一些options选项,或if的判断
- 指定版本的话,python可以用pyenv,java可以用jenv,这2个f8x在安装python和oraclejdk时都自动安装配置了,而goenv感觉有点不稳,bug多,就没写到go的安装流程里
针对第一点这个,我后面在更新下对 /tmp/IS_CI
的检测即可
多版本的话,这个我看能不能通过配置文件实现
多谢师傅提出的这2个问题,我这几天研究研究,下个版本实现
No-Github commented