Jenkins新手实战系列——1.自由(Freestyle)模式项目

1,609 阅读2分钟

前话

接下来的每个实战我都将一一个模式多个案例进行讲解,当然案例是我个人想出来的,有错轻喷嘿。

Jenkins最简单的模式,自由模式,从这里开始吧。

案例

我有个简单的前端项目,这个项目使用git进行版本管理,只有一个分支master,且只有静态页面资源文件。

我想每次修改并提交代码到master分支后,这个项目能够被感知有新的提交并且将项目部署到nginx服务器上,并且部署完成后,jenkins项目管理后台能够下载最新的项目压缩包。

案例很简单,接下来开始实操。

开始

1.准备

1.1 启动个nginx服务器,用于部署项目


# 启动nginx容器
docker run --name nginx --network mybridge -p 4000:80 -d nginx

# 进入容器
docker exec -it nginx /bin/bash

# 重置密码(为方便测试统一密码为root)
passwd

# 安装包
apt update
apt install openssh-server vim -y

# 修改ssh服务配置(修改PermitRootLogin为yes)并启动
vim /etc/ssh/sshd_config
service ssh start

1.2 jenkins服务安装 Publish Over SSHGeneric Webhook Trigger 插件

1.3 jenkins新增ssh服务器

2.新建git项目

访问已经启动的git服务地址,直接新建项目 my-free ,过程略。

项目地址为:http://localhost:3000/root/my-free.git

3.新建jenkins项目

3.1 点击New Item新建项目

3.2 输入项目名称my-free,选择自由模式项目

4 配置jenkins项目

4.1 配置项目git仓库

4.2 配置项目构建触发器

我们选择Generic Webhook Trigger,它为项目对外暴露构建api接口,这样我们在git项目中配置钩子调用该接口,即可实现提交代码时自动触发jenkins项目进行构建动作。

如上图所示,我们只配置了 tokenmy-free

这样该jenkins项目对外暴露的接口地址为:http://localhost:8080/generic-webhook-trigger/invoke?token=my-free

4.3 配置项目构建动作

我们选择构建动作为发送项目文件,勾选后,选中前面配好的nginx服务器进行配置。

4.4 构建完成后动作

最后添加个构建后动作提供链接下载项目压缩包文件。

选中 Archive the artifacts 添加配置

4.5 保存

5.配置git项目

找到git项目设置页面的Webhook项,点击 Add Webhook 按钮,选中 gitea ,保存添加代码提交动作触发钩子。

要注意的是,这里的 Target URL 填写的是jenkins项目配置的构建触发api。

测试

我们把git仓库clone下来,新增一个index.html文件,提交。

回到jenkins项目首页,可以看到在项目文件提交后自动进行了构建打包操作。