远程触发构建
上篇我们把jenkins的环境设好了,也安装好了对应所需的gitlab的插件,那么这篇我们进入实战一:远程构建
什么叫远程触发构建,就是可以通过远程的命令来触发jenkins的构建任务.
新建项目
点击新建Item
点击确实,这样一个任务就建成功了,成功之后会打开任务的配置界面
我们点开构建触发器选项,会看到这样的界面
身份令牌就是我们触发时的token凭证,下面有很多选项,有几个比较常用的,比如当gitlab有一个push的时候构建,当有一个merge的时候构建,这些都可以根据需要来添加,在这里添加令牌后,我们就可以直接通过url地址来触发构建,但此时构建任务里没有内容,所以接下我们就要做如何和gitlab进行关系,并拉取代码
点击源码管理选项卡
1.输入你项目的地址,注意,这里的地址他不是gitlab地址,是你当前项目的url地址
2.添加你gitlab的凭证,我这里使用的是用户名和密码
添加完成后,选择你的凭证
3.指定你要发布的分支*/test(你发哪个分支,就填哪个)
到这里,我们的第一个项目发布的配置就写好了,已经可以从gitlab上拉取到最新的分支代码了.
我们clone下来的分支代码会默认放到.jenkins/workspace这个目录下,如果你想更改这个目录,系统管理→系统设置→主目录(的右边问号下面)
到此我们的项目已经可以从git上拉下来最新的代码了,我们接下来要做的就是构建,打开myItem的配置项,点击构建tab项,点击增加构建步骤,在下拉选项卡里选择Execute shell项,在文本框里里输入我们的命令
cd /Users/zfy/.jenkins/workspace/myItem
yarn
rm -rf dist && yarn Build
这里有个要注意的点,如果你使用的是yarn的话,这里代码在执行的时候会报yarn:未找到命令,这是因为jenkins默认情况下执行shell脚本是使用非登录方式,然后非登录方式不会加载/etc/profile文件,在Execute shell中添加
#!/bin/sh -l命令修改登录方式即解决!
进到我们的工作目录,执行安装包操作,然后移除dist目录,再打包生成新的,如此,我们的包就打好了,接下来就是上传到服务器上去了.
这个时候,你会发觉构建一直失败,报错,这是因为少了一个选项,因为前端的构建需要nodejs的支持,需要安装nodejs插件
安装好之后我们要去全局工具配置里添加nodejs,这里的别名一定要填一个,不然到项目配置里选择时会看不到.
添加完全局配置后,打开项目的配置,在构建环境里选择node的环境
一切完成之后,可以愉快的Build Now了