0. 前提条件, 会使用到jenkins, go语言编译hugo
1. 创建一个jenkins任务
- 创建一个Jenkins任务
-
输入Enter an item name, 这里名字是basic_hugo
-
选择Github组织
-
再选择最左下"OK"按钮, 创建
2. 编辑已创建的basic_hugo任务
- 进入basic_hugo任务编辑页面
-
进入http://<服务器ip>:8080/me/my-views/view/all/, 在名称下basicd_hugo鼠标悬停上去, 多选, 选择Configure (或者使用Blue Ocean插件http://<服务器ip>:8080/blue/organizations/jenkins/basic_hugo/activity, 选择项目名称旁边的设置齿轮)
-
进入编辑页, http://10.211.55.9:8080/job/basic_hugo/configure
- 在编辑页中设置github中hugo地址, 参数化分支名称
GitHub项目->项目URL 填写
参数化构建过程->字符参数 Name: BARNCH Default Value: master Description 分支名称
Source Code Management->Git->Repositories
Repository URL:
Source Code Management->Git->Branches to build
Branch Specifier (blank for ‘any’): $BRANCH
- 构建Build脚本
选择 执行shell
Command: cd /var/lib/jenkins/workspace/basic_hugo # 拉取hugo项目存放文件路径 go install –tags extended # hugo官方文档的构建方式
- 保存
3. 尝试构建, 解决构建中问题, 为方便我使用了Blue Ocean插件了
- 运行
-
进入项目地址,项目名称不一样地址也是不同的.http://<服务器ip>:8080/blue/organizations/jenkins/basic_hugo/activity
-
点击运行, 提示输入分支名称, 输入v0.54.0(可以选择hugo任意release分支名称)
-
点击run
- 错误处理
查看build step是失败的, 失败原因是go命令未找到
这里需要添加jenkins系统环境变量
进入http://<服务器ip>:8080/configure ->环境变量, 添加Name: PATH Value: 这个值是你的linux中echo $PATH得到的, 每个人不一样, 不过都有go的环境变量
勾选环境变量为选中状态, 并保存当前设置
再次构建v0.54.0(这个版本)
查看错误信息 缺少gcc和g++ yum -y isntall gcc gcc-c++
保存后, 再次构建v0.54.0(这个版本) 应该是构建成功的
4. 检查Hugo构建的版本
- 解决在命令行hugo命令不识别问题
hugo version提示hugo命令未找到
需要添加hugo到环境变量中
# 当前用户~/go文件绝对路径是GOPATH,Go编译后的文件在~/go/bin中
# 现在当前用户是jenkins
vim /etc/profile 添加
export export GOPATH=/var/lib/jenkins/go
export PATH=${PATH}:$GOPATH/bin
重新生效/etc/profile文件
source /etc/profile
再次hugo vimersion
hugo version
返回信息, 是刚刚构建的版本
Hugo Static Site Generator v0.54.0/extended linux/amd64 BuildDate: unknown