Jenkins配置golang插件遇到的问题

582 阅读1分钟
  1. Jenkins安装golang插件,然后配置golang的全局

  1. 安装完毕,进入Jenkins容器/etc/profile配置环境变量

docker exec -it -u root jenkins sh
apt-get update 
apt-get install vim

# 将golang插件安装资源移动到go_1.19.9目录下
mv /var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9/go/* /var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9/

vim /etc/profile
# 添加以下内容,保存退出
export GOROOT=/var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9
export PATH=$PATH:$GOROOT/bin
export GOPATH=/var/jenkins_home/gopath

# 修改的变量生效
. /etc/profile
echo "PATH: ${PATH}"

go version
# 显示 go1.19.9 linux/amd64  成功

# 退出容器
exit

# 重启Jenkins容器
docker restart jenkins 

以上是正确的操作步骤,下面是遇到的问题

pipeline流水线执行构建报错

Failed to install golang.org/dl/go1.19.l… to /var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/Go_1.19 java.net.SocketTimeoutException: connect timed out

image.png

connect timed out 说明使用Jenkins官方源下载安装插件很不稳定,我们先替换为国内镜像源。

常用的几个Jenkins国内镜像源:

1、mirrors.cloud.tencent.com/jenkins/upd… (腾讯)

2、mirrors.huaweicloud.com/jenkins/upd… (华为)

3、mirrors.tuna.tsinghua.edu.cn/jenkins/upd… (清华)

4、mirrors.aliyun.com/jenkins/upd…

替换Jenkins 插件升级配置站点为上面任意一个即可。

image.png 替换好后重启Jenkins (docker restart jenkins) ,这样就好了? 我想多了,你也想多了。后面报错依旧。

继续.....

使用国内社区的Go安装包studygolang.com/dl/golang/g… 手动指定安装目录/var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9。

image.png

执行后再次报错,go not found

image.png

以上报错说明源问题已经解决了,环境变量还有问题, 上面PATH指向路径为:

/var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9/bin

安装包解压后实际目录为:

/var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9/go/bin

将安装资源移出go目录匹配为PATH指向路径,操作指令:

mv /var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9/go/* /var/jenkins_home/tools/org.jenkinsci.plugins.golang.GolangInstallation/go_1.19.9/

重启Jenkins,问题解决

11.gif