我们今天在迁移Jenkins的时候又出现无法调用私钥来获取oschina的git代码和使用scp拷贝无法验证的问题。我发现主要的问题实际上是关于ssh的问题,因为git和scp都是通过ssh来实现与远端服务器的通讯过程。
我总结有下面三个坑:
 
1. 当存在多个私钥(通常我们创建出来默认名称为: id_rsa 或者id_dsa )的时候如何处理?
比如我有两个私钥
  • id_rsa_oschina
  • id_dsa70
分别对应连接的服务器是git.oschina.net 和 192.168.88.70 linux服务器。
这种情况下,需要在ssh默认配置目录,c:\users\[username]\.ssh下创建一个config的文件,指定对应的服务器使用的identityfile

Host git.oschina.net

IdentityFile ~/.ssh/id_rsa_oschina

Host 192.168.88.70

IdentityFile ~/.ssh/id_dsa70

 
 
2. DSA协议不被认可
使用 
ssh -vT wzp@192.168.88.70
进行测试,发现其中
debug1: Skipping ssh-dss key /c/Users/UM_CI_BUILDER/.ssh/id_dsa70 for not in PubkeyAcceptedKeyTypes
 
因此,需要config文件中指定
 Host 192.168.88.70
   IdentityFile ~/.ssh/id_dsa70
   PubkeyAcceptedKeyTypes ssh-dss
 
3. 在jenkins中 使用 scp cas.war wzp@192.168.88.70:/home/wzp/ 提示unstable的编译结果。

E:\Jenkins_work\QA_UM_SSO\workspace\cas-server-webapp\target>scp cas.war wzp@192.168.88.70:/home/wzp/

E:\Jenkins_work\QA_UM_SSO\workspace\cas-server-webapp\target>exit 0

SSH: Connecting from host [WIN12FILESRV1]

SSH: Connecting with configuration [LINUX CAS SVR-80-Test] ... ERROR: Exception when publishing, exception message [Failed to read file - filename [C:\Users\UM_CI_BUILDER\.ssh\id_dsa] (relative to JENKINS_HOME if not absolute).

Message: [C:\Users\UM_CI_BUILDER\.ssh\id_dsa (The system cannot find the file specified)]] Build step 'Send files or execute commands over SSH' changed build result to UNSTABLE

Finished: UNSTABLE

这个需要在jenkins全局配置,增加LINUX CAS SVR-80-Test 在publish over ssh中的定义。

好吧,终于把Jenkins发布到linux的坑给填完了。

SSH在Jenkins中的使用的更多相关文章

  1. jenkins中通过Publish Over SSH将项目部署到远程机器上

    Publish Over SSH插件使用在使用Publish Over SSH之前,需要制作SSH私钥.机器间做免密登录配置.假设机器A,ip为192.168.AA.AAA,机器B: 192.168. ...

  2. Jenkins中关于一些插件的使用

    Jenkins中关于一些插件的使用方法 最近在为公司搭建CI平台过程中,以及在具体项目实施过程中使用过的一些插件的具体用法: 1. ant插件 这个插件可能是我们最为经常使用的,若构建脚本是使用bui ...

  3. jenkins中使用rsync, scp命令

    jenkins 中使用 rsync 命令 是出现一些错误输出 Host key verification failed. rsync: connection unexpectedly closed ( ...

  4. jenkins中集成commander应用

    jenkins中集成commander应用 jenkins 集成测试 promotion 最近参加公司的集成测试平台的开发,在开发中遇到了不少问题,两个星期的迭代也即将完成,在这也用这篇博客记录下开发 ...

  5. 2.在Jenkins中配置及执行 maven + selenium + testng项目

    1. 在Jenkins中配置Maven与Git 1)在系统管理>管理插件>可选插件 页面分别下载Git plugin 与 Maven Integration plugin插件,安装完成后再 ...

  6. Python项目在Jenkins中的自动化测试实践(语法检查、单元测试,coverage(代码覆盖率)、自动打包)

    原始链接:http://blog.csdn.net/a464057216/article/details/52934077 requirments OS: Ubuntu 14.04+ Gitlab 8 ...

  7. Jenkins中启动从节点时,出现问题如何解决,问题:No Known Hosts...

    Jenkins中,启动从节点时,出现如下问题如何解决:/root/.ssh/known_hosts [SSH] No Known Hosts file was found at /root/.ssh/ ...

  8. Jenkins中构建Testcomplete项目的方法介绍

    Jenkins的部署在上一篇随笔中已经和大家介绍了,下面我们介绍一下再Jenkins中构建testcomplete项目.我这里使用的是Testcomplete11,下面详细介绍一下构建步骤. 1.Je ...

  9. 在Jenkins中获取GitHub对应Repository的Resource Code

    1):Install Jenkins 请看如下链接: https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins 2):Install ...

随机推荐

  1. 【技术贴】VirtualBox给VDI格式的虚拟机扩容

    新建立了一个虚拟机用来装一些比较烦的软件,比如数据库什么的,但是初始的时候硬盘放小了,找了很久才找到解决方案(我的数据库是动态大小的): 1.直接在虚拟机关闭的状态下,在设置-->存储--> ...

  2. Dynamic CRM 2013学习笔记(四)单据编号及插件批量注册工具

    基本上每个实体form上都会有单据编号,而且不同的实体编号要求还不太一样,这时就需要一个通用的单据编号插件,可配置以应对不同的需求. 下面简单介绍下实现步骤: 1. 创建二个实体,以保存各实体所要求的 ...

  3. 用msbuild跑xunit单元测试

    用了Visual Studio 2015之后,发现没法跑xUnit单元测试,xUnit.net runner不支持VS2015,TestDriven.Net也不支持VS2015. 等它们支持VS201 ...

  4. addin 笔记

    http://msdn.microsoft.com/en-us/library/vstudio/19dax6cz.aspx VS 加载插件的位置: \My Documents\Visual Studi ...

  5. Kali Linux Web 渗透测试视频教程— 第四课 google hack 实战

    Kali Linux Web 渗透测试— 第四课 google hack 实战 文/玄魂 目录 shellKali Linux Web 渗透测试— 第四课 google hack 实战 课程目录 Go ...

  6. Windows Phone 8 解锁提示IpOverUsbSvc问题——IpOverUsbEnum返回No connected partners found解决方案

    我的1520之前总是无法解锁,提示:IpOverUsbSvc服务没有开启什么的. 根据网上网友的各种解决方案: 1. 把手机时间设置为当前时间,并且关闭“自动设置” 2. 确保手机接入了互联网 3.确 ...

  7. 阻塞队列BlockingQueue用法

    多线程环境中,通过队列可以很容易实现数据共享,比如经典的“生产者”和“消费者”模型中,通过队列可以很便利地实现两者之间的数据共享. 假设我们有若干生产者线程,另外又有若干个消费者线程.如果生产者线程需 ...

  8. 在Debian下安装LAMP

    准备工作: 1 sudo apt-get install build-essential 第一步:安装Apache 1 sudo apt-get install apache2 第二步:安装MySQL ...

  9. duilib进阶教程 -- Container控件的bug (14)

    在<duilib进阶教程 -- TreeView控件的bug (9)>里,Alberl发现了两个bug,并解决了其中一个,现在教程已经接近尾声啦,所以Alberl就解决了另外一个bug. ...

  10. Leetcode 38 Count and Say 传说中的递推

    class Solution { public: vector<string> vs_; Solution(){ "); vs_.push_back(t); ; i< ;+ ...