Jenkins 官网
一个开源的java项目,用于监控持续重复的工作。
一.如何安装
工具包:jenkins.war
第一种方法:
tomcat10:推荐使用 下载
将jenkins.war放到web服务器根目录。
启动tomcat,地址栏输入 localhost:8080测试。
出现问题:源服务器未能找到目标资源的表示或者是不愿公开一个已经存在的资源表示。
解决方法:降低tomcat版本9即可。
出现问题:SSL 接收到一个超出最大准许长度的记录
解决方法:将https -> http
第二种方法:
手动运行: java -jar jenkins.jar–httpPort=8081
自动生成:C:\Users\Administrator.jenkins
出现问题: No such plugin: cloudbees-folder
解决方法:缺少cloudbees-folder.hpi 点此下载
存放位置:C:\Users\Administrator.jenkins\war\WEB-INF\detached-plugins
2.安装推荐插件
二.如何使用
jenkins目录:
jobs: 每次执行的任务,返回控制台的数据
users: 用户的列表
workspace: 存放任务的地方,创建任务后,会在此目录下创建一个同名字的目录
1.创建Item
1.1.新建Item
1.2.输入名字 Freestyle project
1.3.运行Bulid Now
2.配置Job
2.1.General
配置描述,这里边有一个高级,可以配置自定义工作空间。否则工作目录会在默认目录。
自定义参数:使用方式%version%
2.2.源码管理
可以使用git或svn,配置服务器Ip,账号,密码就行。发布前一边都是先拉取最新代码或资源
2.3.构建触发器
可不填写
2.4.构建环境
可不填写
2.5.Build
最重要的环节,可以使用bat编写打包,可以直接在文本框使用bat命令,也可以在工作目录放一个bat文件。
自动打包一般流程.bat
::拉取代码
git pull origin qa
set tagName=%date:~0,10%_%time:~0,2%.%time:~3,2%.%time:~6,2%
git tag -a %tagName% -m "auto compile"
git push origin --tags
::更新资源
svn update resource/
svn lock -m "auto lock" main.json
::操作资源
svn unlock main.json
::发布
egret publish app 或 ..
::转移发布到指定目录
xcopy /y app/release/* release/*
::对指定目录处理 符合平台规范
::提交svn
svn add release --force
svn ci -m "auto commit" --no-unlock
2.6传输文件
打包完成后,将包体上传到服务器,可以一次上传多个目录,需要配置多个Transfers,最下面可以点击增加按钮添加。
三.Manage Jenkins
用户,全局属性,插件等。
1.Configure System:
jenkins主目录位置,全局属性,git和ssh账户配置等。
2.Script Console
可以执行一些脚本,实现一些简单功能。
//删除某个job的构建历史
item = Jenkins.instance.getItemByFullName("your-job-name-here")
//THIS WILL REMOVE ALL BUILD HISTORY
item.builds.each() { build ->
build.delete()
}
item.updateNextBuildNumber(1)
常见问题
1.问题:is owned by: ‘S-1-5-21-753677376-711679671-678777838-1001’
but the current user is: ‘S-1-5-18’
解决:文件夹权限问题,通过jenkins操作git时,需要文件夹者拥有者是system,id正是”S-1-5-18“。
右键文件夹 -> 安全 -> 高级 修改拥有者,详情修改:点击这里