51Testing软件测试论坛

标题: Jenkins 常见问题汇总 [打印本页]

作者: 测试积点老人    时间: 2018-12-20 14:27
标题: Jenkins 常见问题汇总
本帖最后由 测试积点老人 于 2018-12-20 14:29 编辑

一场景

jenkins稳定运行一段时间后,服务器磁盘接近90%,查看服务器知./jenkins文件巨大


解决方案

丢弃旧的构建,jenkins会按时间(天)和数量保留


[attach]120283[/attach]



二场景

新建maven项目

  1. --platform
  2.         --api
  3.         --bean
  4.         --core
复制代码

注意问题

1.源码管理中, repository url指向maven父模块的资源路径;即svn://192.168.1.1/svn/feature/platform


[attach]120284[/attach]


2.构建后操作中, jenkins Source files 默认路径是/root/.jenkins/workspace,在传输配置中的Source files的路径指向是相对默认路径的相对路径,所以我们需要加入子模块的文件名;即api/target/api.jar、api/target/bean.jar、api/target/core.jar


[attach]120285[/attach]



三场景

Jenkins 自动构建svn管理项目有滞后性,提交后立刻发布不能更新到最新代码


原因

Jenkins 默认对svn的代码使用按时间方式进行更新,当遇到Jenkins服务器时间与SVN服务器时间不一致的情况下,就会出现不会更新到最新代码


解决

源码管理中,repository url 指向的最后追加@HEAD,jenkins 会使用版本号方式进行更新,就可以提交后立刻发布并确保代码最新



四场景

Jenkins 发布失败Exec exit status not zero. Status [-1]

  1. ERROR: Exception when publishing, exception message [Exec exit status not zero. Status [-1]]
复制代码

原因

Jenkins 在构建后操作执行重启脚本restart.sh中,关闭旧进程的脚本“太暴力”

  1. pid=`ps -ef | grep my_program_name | awk '{print $2}'`
  2. if [ -n "$pid" ]
  3. then
  4.    kill -9 $pid
  5. fi
复制代码

此处的ps -ef未加java的过滤,会把jenkins发起的SSH执行进程也杀掉,导致-1非正常中断。


解决

应加grep “java”过滤

  1. pid=`ps -ef | grep my_program_name |grep "java"| awk '{print $2}'`
  2. if [ -n "$pid" ]
  3. then
  4.    kill -9 $pid
  5. fi
复制代码



作者: Miss_love    时间: 2021-1-5 14:55
支持分享




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2