Jenkins+gitlab自动化构建部署

2,895 阅读3分钟

前言:

最近也把手上的几个项目都做了自动化部署操作,把流程简单的以图文形式记录下来。

1.jenkins安装

Linux安装jenkins:

参考上篇文章

直接上自动化工作流

流程

gitlab 提交代码-> jenkins 触发,执行相应的 shell

步骤

  1. gitlab建个项目仓库...(已有跳过)

  2. 打开 jenkins,登录,按 jenkins 按要求的创建一个项目

    1).点击左侧 新建item

2).输入任务名称(按要求创建), 点击确认

3).在 General 下勾选 Discard old builds, 保持构建的天数填入 5,最大个数填 3 (看个人需求)

4).进入配置界面=> 源码管理处选择 Git-> 填入 git clone 的地址(直接gitlab上复制)

5).Credentials 点击添加(添加过的直接左侧选择即可).将自己的 gitlab 账号密码添加进去,完成以后左侧选择你的 git 账号密码

6).Additional Behaviours 点击新增,选中 Clean before checkout

7).找到 构建触发器,勾选 Build when a change is pushed to GitLab. GitLab webhook URL, 右侧地址 这个假设为变量 URL 7和8两步骤在下面的gitlab配置webhook需要用到 8). 勾选以后,点击高级,点击下方的 Generate,生成 Secret token,

9). 复制第 7 步的 变量 URL, 和第 8 步的 token,然后执行下面第 3 点,gitlab触发jenkins,

10). 在下面构建 处,点击新增构建步骤,先添加 Execute Shell,在命令处填入命令

这里命令要根据你部署的项目写相应的命令 我这是简单的安装、打包、替换然后把dist剪切到目标文件夹下
// 此处命令可以自由发挥,可以在代码提交后进行打包,然后部署等等... 这里只做代码打包部署例子
export PATH=$PATH:/usr/local/yarn/bin
nvm use 12.16.1
yarn cache clean
yarn install

11). 点击保存即可, 跳到下方第 4 步

  1. gitlab 触发 jenkins,

    1). 找到你的 gitlab 项目,点击 settings=>webhooks

    2). 右侧 URL 填入上面第7步的变量 URL, Secret Token 填入第 8 步生成的生成 Secret token

    3). 勾选 Push events,这个代表你代码 push 上去就会触发 jenkins

    4). 点击 add webhook 会在下方生成一个列表项

    5). 点击下方列表项你方才配置列表项,点击 Test=>Push event 出现 Hook executed successfully: HTTP 200 即可

成功添加webhook,可以点击test,如果成功可以在jenkins看见构建任务执行

  1. 测试

回到jenkins首页,进入刚才创建的项目,点击 build-now,下方会出现构建进度,第一次构建可能比较慢

如果出现红色,则代表构建失败,可以点击相关任务,查看控制台输出看是哪里错了,

如果出现蓝色,则代表成功
  1. 代码提交测试

提交新的代码到 gitlab, 提交成功后看下 jenkins 是否有自动进行构建,如果有,则代表整个自动化代码质量测试完成

然后外网访问部署地址 发现代码改动的地方确实都变了 说明成功。

小结

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

其实我想说 亲自动手试试!亲自动手试试!亲自动手试试! 自己去试试 多试几次就会了