Jenkins Gitlab 前端构建发布
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins Gitlab 前端构建发布相关的知识,希望对你有一定的参考价值。
参考技术A流程:通常是从gitlab/github拉取项目,构建,把产出文件发到服务器。
一、环境
创建任务之前,要先配置两项:
问题1:jenkins credentials配置SSH
系统管理 -> Manage Credentials -> 全局凭据 (unrestricted) ->添加或者编辑
注意:这里的key是个大坑,最开始我纠结是填私钥还是公钥,发现粘贴进去都不对。(粘贴私钥时我粘贴的是正文,没有复制首尾两行,导致一直报错。)最后把私钥整个粘贴进去就对了。
原因:
由于Jenkins的安全策略配置了CSRF跨站点保护。
解决方案:
进入Jenkins,系统管理-->全局安全配置,勾选匿名用户具有可读权限和去掉CSRF防止跨站点请求伪造:
在 /configure 下
这个插件是jenkins连接linux系统的时候使用。
以下针对插件的每个属性进行说明。
Name
SSH Server的Name属性就是你希望连接的服务器。
Source files
这里输入的是你希望传到服务器的文件夹和文件。路劲是相对jenkins的workspace的项目名称的。例如编译打包后的路径为dist文件夹下的jenkinszip.tar.gz,则Surce files填入dist/jenkinszip.tar.gz。
Remove prefix
如果Source files为dist/jenkinszip.tar.gz,但是不想把dist目录创建到服务器端,这个时候就可以在Remove prefix里填入dist
Remote directory
这里指定文件将被拷贝到服务器的路径。
PS:被拷贝文件在服务器上的完整路径=登录服务器账号的默认路径(就是全局设置的Remote Directory)+当前任务配置的Remote directory。
例如我的服务器路径是 /home/wwwroot/aaa
我全局配置Remote Directory 是 /home/wwwroot
当前任务配置的Remote Directory 是 /aaa/
Exec command
这里就是连接服务器之后需要执行的命令。
注意:这里配置的Secret token和 webhook要填写到gitlab里面,路径如下:
参考文章: https://blog.csdn.net/hou_ge/article/details/103507947
以上是关于Jenkins Gitlab 前端构建发布的主要内容,如果未能解决你的问题,请参考以下文章
Github配合Jenkins,实现vue等前端项目的自动构建与发布
jenkins高级用法(jenkins集成gitlab自动构建打包发布)