写在前面的话

 

通过上一节我们成功的搭建起来 Jenkins,那么接下来就是体验如何构建我们的第一个项目了。当然在这之前我们得专门针对 Java 环境就行简单的配置。

 

 

全局工具配置

 

其实这次配置的主要还是关于 Java 项目的工作配置,包括 JDK,Maven,以及代码仓库 Maven 等。

打开:系统管理 --> 全局工具配置

jenkins自动多项目打标签_jenkins自动多项目打标签

由于在安装 Jenkins 的时候安装了很多推荐插件,所以一般常用的配置项这里都能找到。

1. 配置多版本 JDK:

我们运行 Jenkins 的时候已经有了 JDK8,此时我们再在相同目录下放个 JDK7,因为有些公司的项目可能会并存,甚至 JDK6。

此时服务器上面的目录结构:

jenkins自动多项目打标签_java_02

新增 JDK7 和 JDK8,因为我们本地已经有,所以不勾选自动安装:

jenkins自动多项目打标签_shell_03

 

2. 安装 git,我们的代码仓库使用的 gitlab 进行管理,所以需要安装 git,如果你是 SVN 则需要单独去搜索 SVN 配置:



yum -y install git



我们直接在服务器安装 git 即可。

jenkins自动多项目打标签_shell_04

 

3. 配置 Maven,当然我这个 Maven 是结果修改添加了本地配置的 Maven,你也需要将其添加你本地私有仓库的配置。

jenkins自动多项目打标签_git_05

 

4. 另外还有类似 Gradle 这些的甚至更麻烦的,可以先去查看又没有相关的插件,如果有就安装上。配置方法都是同理。

jenkins自动多项目打标签_shell_06

Gradle 也是 Java 的一种打包软件,有些人可能不知道,这里提一下,你就可以简单的理解他就是 Maven。

 

5. Jenkins 中所有修改配置的记得改完以后都要应用保存:

jenkins自动多项目打标签_jenkins自动多项目打标签_07

这样,我们基础的常用工具就配置完成了。

 

 

全局安全配置

 

除了工具,我们还需要配置系统安全,当然系统一般是配置好的,但我们要检查一下。

打开:系统管理 --> 全局安全配置

jenkins自动多项目打标签_java_08

查看配置:

jenkins自动多项目打标签_jenkins自动多项目打标签_09

关闭用户注册功能,因为这个服务是内部使用的,不需要开启注册。

只允许登录用户操作,这个地方之后我们谈到权限管理的时候会再聊。

jenkins自动多项目打标签_git_10

另外就是 CSRF 跨站请求,但是该配置在某些时候我们需要将其关掉,比如我们二次开发的时候可能会用到。

Jenkins 其实主要的初始化配置差不多就这些,当然你可以可以去:系统管理 --> 系统设置

但其实是没有必要的,我们后面会使用钉钉通知的方法,比邮件香。

 

 

创建第一个任务

 

在目前 Jenkins 中,我们现在新建的任务一般就两种:自由风格流水线

打开:新建任务

jenkins自动多项目打标签_git_11

可能你会在其他地方看到类似 Maven 项目等,其实没必要,他就是在自由风格基础上针对 Maven 进行封装而已。

所以他能做的,自由风格也能做,所以,我们只需要记住这两个即可。

 

1. 我们创建一个名为:TEST-01-ERP-BACKEND

jenkins自动多项目打标签_jenkins自动多项目打标签_12

对于项目的名字,可以参考我们的命名规范,便于管理。不推荐使用中文,原因是该名称会在 Jenkins 服务器上面创建相应的目录,也不推荐有空格这些。

 

2. 添加描述和选择 JDK:

jenkins自动多项目打标签_git_13

在一开始我们配置 Jenkins 的时候,很多人都忽略了这个配置,但是导致的可怕结果就是,用到后面,发现 Jenkins 很卡,磁盘占用很高。

我们需要知道的是,Jenkins 每次构建都会在 /data/jenkins/jenkins-data/jobs/TEST-01-ERP-BACKEND/builds 下面生成一个构建 ID 目录,该目录保留构建记录等相关的东西。随着时间的推移,越来越多。说不定下面就是成百上千个目录。可想而知造成的影响。

上面是我设置的认为比较使用的数量。可以参考一下。

jenkins自动多项目打标签_git_14

 

3. 配置项目代码仓库:

jenkins自动多项目打标签_Jenkins_15

 

4. 添加 GIT 账户:

jenkins自动多项目打标签_java_16

添加以后配置正确就不会再报错:

jenkins自动多项目打标签_git_17

 

附:我们可以在 GIT 拉起代码前后增加一些操作:

jenkins自动多项目打标签_Jenkins_18

这些都录根据自己的需求进行添加。

 

5. 构建前的操作:

jenkins自动多项目打标签_jenkins自动多项目打标签_19

Jenkins 给我提供了很多触发条件的选择以及构建前我们能够做啥,但是这种一般都用于特殊场景。有需要的情况下才使用。

比如 GIT 提交代码自动触发构建,比如定时让他自动构建等。

 

6. 构建代码:

jenkins自动多项目打标签_java_20

系统默认安装的插件给我们提供了很多构建操作,但我们常用的一般就是 执行 shell,这个能够满足我们 99% 的需求。

想执行什么就执行什么 shell,比如我们这里使用 Maven 构建。

jenkins自动多项目打标签_shell_21

直接写 Maven 命令,但是由于我们并没有配置 Maven 环境变量,以及并没有构建 Maven 项目,所以不能用到全局工具。

我们就直接下 mvn 命令的绝对路径。

 

7. 构建后操作:

jenkins自动多项目打标签_git_22

最后就是构建后操作,比如更新上线啊等等,由于我们这里第一次测试,我们只是打包,所以就不做后续了。

后面会专门谈谈发布,那时候我们还会结合插件来聊聊这个。

 

8. 应用保存:

jenkins自动多项目打标签_jenkins自动多项目打标签_23

 

9. 完成:

jenkins自动多项目打标签_git_24

需要注意的是,改名字以后,服务器上面之前的目录还是会依然存在。 

 

10. 执行构建:点击:立即构建

我们可以开启右上角的自动刷新,这样就能动态的看到构建状态:

jenkins自动多项目打标签_jenkins自动多项目打标签_25

查看构建过程:

jenkins自动多项目打标签_git_26

 

可以动态查看到整个构建日志:

jenkins自动多项目打标签_jenkins自动多项目打标签_27

 

如果构建成功,最后的结果如图:

jenkins自动多项目打标签_git_28

 

构建成功标记为蓝色的球:

jenkins自动多项目打标签_shell_29

如果报错则会显示报错信息,同时前面的球会变成红色。没有完成出现问题则会是黄色的球。

主页的状态是太阳:

jenkins自动多项目打标签_jenkins自动多项目打标签_30

至此,一次自由风格的项目创建并构建完成!

我们可以上服务器上面查看相关的目录:/data/jenkins/jenkins-data/workspace/TEST-01-ERP-BACKEND

在该目录下能够找到我们的打包以及整个项目的代码。

 

 

小结

 

初始化以及简单的构建目标达成,后面会慢慢的针对插件进行说明,实现我们从构建到发布的目的。