• jenkins SVN更改密码后出现的坑爹问题


    1.前提

    公司SVN账号密码和AD账号密码是绑定在一起的,为了保证代码检出总是最新,jenkins中做代码检查前总会从SVN中检出最新代码。

    最近公司要求AD账户不得使用原始密码,更改密码后,jenkins在检出代码的时候出现了一个坑爹的问题:控制台打印的问题是subversion update has been canceled

    2.分析原因

    subversion update has been canceled——SVN代码无法正常更新,这很明显是SVN密码更改后的副作用。

    3.所做的努力

    3.1 修改jenkins本身的配置

      修改完jenkins中一切和SVN有关的账号密码信息并重启jenkins服务后,检出代码仍旧报错:subversion update has been canceled

      上述努力失败后,一度不敢再相信人生。谷歌了十几分钟,由于公司网速太不给力(可以吐槽一下么?),也没得到一个有参考价值的答案。

      平复了下心情,打算从头开始分析。只是很纠结:jenkins该修改的配置都修改了,而且确保没有遗漏,为什么就没有生效呢?

    3.2 重新分析

      拿出一个代码检查作业仔细分析,大脑中显现出jenkins后台做的一切工作,看到SVN检出的策略:Use 'svn update' as much as possible(平时一直没有太注意这个所谓的策略,因为默认就是它),虎躯一震,有了!

      这应该就是jenkins检出的时候利用了slave SVN本身的检出功能,那我就应该去修改子节点中SVN保存的用户密码等相关数据。

    3.3 再次出发

      打开slave SVN客户端,setting → Saved Data → 选择「Authentication data」,点击【Clear】 → 确定。

      进入SVN Resp-browser,就会弹出一个框,让重新输入账户密码,输入后勾选上保存。

      再次构建jenkins中的作业,果然好了!

      由于公司电脑只能在内网使用,无法截图,就不再上图了。

    4.体会

      ① 遇到问题应该先自己分析可能的原因,而不是直接谷歌。要对自己有信心,相信自己独立解决问题的能力。

      ② 再次体会到jenkins m/s架构的优势——master只负责调度管理,slave负责具体执行。这也为jenkins出现的问题提供了两个大维度的思考面:master层面和slave层面。

  • 相关阅读:
    学习笔记15—Python 存储集
    学习笔记14—Python error集
    学习笔记13—python DataFrame获取行数、列数、索引及第几行第几列的值
    学习笔记12—linux下文件的复制、移动与删除
    学习笔记11—MATLAB 界面设计
    学习笔记10—Python 绘图集
    学习笔记9—python数据表的合并(join(), merge()和concat())
    学习笔记8—MATLAB中奇异值处理办法
    make ffmpeg makefile
    Linux Socket
  • 原文地址:https://www.cnblogs.com/helloIT/p/5583469.html
Copyright © 2020-2023  润新知