❶ 怎样设置Jenkins使之能通过Gitlab上的权限认证
进入项目 配置 - 构建触发器 勾选Poll SCM 在日程表中写上你要构建的时间 列如*/5 * * * * 表示每五分钟构建一次
❷ Jenkins Gitlab 前端构建发布
流程:通常是从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实现Android自动化打包编译
Android自动化打包利用Jenkins的强大功能,结合Gradle命令,对指定项目执行编译、检查、打包等操作。本文主要针对Centos环境下的Jenkins配置和Android项目自动化构建,适合新手入门。
Jenkins是一款开源的CI/CD工具,拥有丰富的插件支持,可用于各种项目的自动化构建和部署。
Jenkins的潜力无穷,本文仅展示了Android项目自动化构建的基础。深入使用时,可进一步探索更多功能和定制化选项。对于疑问和交流,欢迎在评论区探讨。