我们有GitHubActions,我们在Centos服务器中运行它。我们已经将根的.bashrc设置为export GOROOT=/opt/go export PATH=$PATH:$GOROOT/bin
在Github Actions中,我们有一个文件:
setup:
needs: cleanup
name: Setup
runs-on: [self-hosted, Linux, X64, CentOS-Linux-7.9]
services:
postgres:
image: postgres:latest
- name: Set up Go 1.17
uses: actions/setup-go@v2
with:
go-version: 1.17
# id: Go
- run: go version
- name: Checkout code into go module directory
uses: actions/checkout@v2
当Github Actions运行此操作时,它会抛出错误:
0s
Run actions/setup-go@v2
with:
go-version: 1.17
stable: true
token: ***
...
Setup go stable version spec 1.17
Found in cache @ /opt/actions-runner/_work/_tool/go/1.17.11/x64
Added go to the path
missing $GOPATH
Error: Command failed: go env GOPATH
missing $GOPATH
有人能帮我纠正这个错误吗
Go安装正在运行,并且在Linux上作为根"go version
"运行。
这看起来像actions/setup-go
问题116,其中包括:
我认为问题的原因是自托管跑步者缺少$HOME变量。
缺少的
HOME
变量使Go无法为GOPATH
和GOCACHE
等创建默认文件夹。
因此,请仔细检查echo $HOME
在跑步者中显示的内容。
OP AwsGeek在评论中确认:
首先,按照建议,我做了一个
echo $HOME
,它是空的,在env下:我添加了home env:HOME: "/home/xxxx-account"
的值