• Jenkins初级使用过程中的异常处理(1)


    在使用Jenkins一些基本功能的时候,或者说是基本插件的时候,会遇到各种各样的报错。这里就设想模拟一下,重现一下以前遇到过的问题,记录一下。虽说是Jenkins使用过程中出现这样的问题,但实际上可以把这种思路应用在运维其他问题的排查逻辑上面。这种分享也符合我们的技术积累信条,欲成大事,比以史为鉴。

    一、在使用插件Invoke Phing targets的时候。

    1、报错:java.io.IOException: Cannot run program "phing" (in directory "/var/lib/jenkins/workspace/**"): error=2, No such file or directory

    在使用Invoke Phing targets插件的过程中,就是要读取系统的xml文件,如果没有安装phing工具的话就读取失败,从而整个构建都会失败。在Debian系列的系统里面,这里是用Ubuntu 18.04就用apt在线安装phing。

    命令:apt-get install phing

    重新构建发现问题解决了。

    2、报错:/var/lib/jenkins/workspace/boztax/build.xml:104:75: buildnumber not defined!

    这种问题就是在执行build.xml的过程中发现里面的配置不对的报错。错误提示中是变量buildnumber没有定义,印象中是控制台定义,然后build.xml调用。我们先回到控制台,

    我们看到问题了,是控制到定义buildnumber的时候放错了位置,导致没有生效,然后build.xml调用的时候就报错了。改正的时候就解决。

    二、使用publish over ssh的时候的错误。

    添加构建步骤。'Send files or execute commands over SSH',我们就可以连着打包和发送这两个步骤一起来使用。

    我们打包好文件,按照逻辑就应该发送过去,之后再解压。可是,构建失败了,我们看看失败的控制台输出,

    绿色的表示构建步骤已经通过,红色的部分表示开始报错,是我们重点分析的部分。

    绿色部分也有好几个报错,但是都是定义文件中的定义。比如说,删除dist文件夹,那是因为在我们生成的文件中标避免冲突,如果没有这个文件,那就应该这样,没有找到可删除的文件。绿色最后一行也是表明文件已经打包。

    红色部分就是在远程服务器上面说找不到文件,那很有可能就是本地生成了,而没有传过去。下面验证一下,

    先去本地看看有没有文件,

    已经查证生成了打包文件,前面我们配置了ssh key到远程服务器,现在再次验证一下文件到底能不能传过去,

    证明私钥可用,看看控制台验证,

     控制台测试成功!

    既然没有在传输的时候报错,下一个猜想就是可能传过去了,但是控制台的目录设置错乱,不知道传去远程服务器哪个位置了。(实际上经过了半天的思索才觉得有这种可能)

    怎么在目录前缀就有/root呢?后面的目录就正确。。控制台设置的明明就是/home/data啊。

    但是,在考虑的同时,想起/root在哪里出现过,没错,

    就是这里,在系统全局配置的时候。关于ssh的远程根目录有设置,东西放错位置了,所以tar解压的时候找不到文件。改回来的话,一切迎刃而解。

  • 相关阅读:
    Ural 1996 Cipher Message 3 (生成函数+FFT)
    UVA 12633 Super Rooks on Chessboard (生成函数+FFT)
    HDU 5307 He is Flying (生成函数+FFT)
    BZOJ 2039 人员雇佣 (最小割)
    BZOJ 3158 千钧一发 (最大流->二分图带权最大独立集)
    BZOJ 3144 [HNOI2013]切糕 (最大流+巧妙的建图)
    BZOJ 3774 最优选择 (最小割+二分图)
    BZOJ 3876 [AHOI/JSOI2014]支线剧情 (最小费用可行流)
    BZOJ 3771 Triple (FFT+生成函数+容斥)
    洛谷 P3121 【[USACO15FEB]审查(黄金)Censoring (Gold)】
  • 原文地址:https://www.cnblogs.com/hodge01/p/9370541.html
Copyright © 2020-2023  润新知