持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

一、整体流程

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

二、Jenkins 配置

2.1、首先安装插件

  • Gitlab Hook Plugin
  • GitLab Plugin
  • Publish Over SSH

2.2、配置目标服务器

系统管理 ---> 系统设置 ---> Publish over SSH

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

如果不想使用密钥认证登陆,也可以使用 账户密码登陆。

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

2.3、创建 job

我们创建一个自由风格的 job,配置好 git 源,这里也可以配置无密钥登陆,我这里使用账户密码。

创建触发器,用于自动构建,我们需要把其中的 url 添加到我们的 gitlab 上面,提交代码,可以触发构建,稍后演示。

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

填写构建内容。

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

2.4、配置 gitlab 触发

gitlab 的 webhooks url 是根据 jenkins 构建权限连接设置的,如果必须登录才能构建就必须获取 jenkins 的用户名及token,可以在jenkins用户--->设置里面查看到 ,url格式:

http://<username>:<api-token>@<jenkins-server>/

首先去生成 token。

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

然后我的触发URL如下:

http://user:11016e608eae8623253ec9113ca8e345b3@jenkins.xxxxxx.net/jenkins/project/banana.xxxxxx.net

最后测试一下,看看是不是正确。

如果没有添加用户信息认证,可能会报下面的错误:

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

三、改进

既然我们是纯静态的文件,不需要构建,为啥不直接传递命令,在服务器上面 git 的呢,这样速度更快,之前还需要把代码从源仓库拉下来,然后整个传到相应的目录下面,过程比较慢。

我们调整 Job 去掉源,然后把构建项目修改为如下:

持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

如果大家使用 http 协议的 git 拉取代码,会每次让输入账号密码,我们可以使用下面命令对认证信息进行保存:

git config --global credential.helper store
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值