用Jenkins搭建项目发布平台--二.实战-远程触发构建

540 阅读3分钟

远程触发构建

上篇我们把jenkins的环境设好了,也安装好了对应所需的gitlab的插件,那么这篇我们进入实战一:远程构建

什么叫远程触发构建,就是可以通过远程的命令来触发jenkins的构建任务.

新建项目

点击新建Item

image.png

点击确实,这样一个任务就建成功了,成功之后会打开任务的配置界面

image.png

我们点开构建触发器选项,会看到这样的界面

image.png

身份令牌就是我们触发时的token凭证,下面有很多选项,有几个比较常用的,比如当gitlab有一个push的时候构建,当有一个merge的时候构建,这些都可以根据需要来添加,在这里添加令牌后,我们就可以直接通过url地址来触发构建,但此时构建任务里没有内容,所以接下我们就要做如何和gitlab进行关系,并拉取代码

点击源码管理选项卡

image.png

1.输入你项目的地址,注意,这里的地址他不是gitlab地址,是你当前项目的url地址

2.添加你gitlab的凭证,我这里使用的是用户名和密码

image.png

添加完成后,选择你的凭证

3.指定你要发布的分支*/test(你发哪个分支,就填哪个)

到这里,我们的第一个项目发布的配置就写好了,已经可以从gitlab上拉取到最新的分支代码了.

我们clone下来的分支代码会默认放到.jenkins/workspace这个目录下,如果你想更改这个目录,系统管理→系统设置→主目录(的右边问号下面)

image.png

到此我们的项目已经可以从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插件

image.png

安装好之后我们要去全局工具配置里添加nodejs,这里的别名一定要填一个,不然到项目配置里选择时会看不到.

image.png

添加完全局配置后,打开项目的配置,在构建环境里选择node的环境

image.png

一切完成之后,可以愉快的Build Now了