【问题标题】:How to allow jenkins from local machine to run remote python test scripts如何允许本地机器上的詹金斯运行远程 python 测试脚本
【发布时间】:2017-12-15 23:42:40
【问题描述】:

我在本地 centos 机器上运行 jenkins。

我已经配置了本地 jenkins 并且能够成功运行本地构建。 现在,我想在没有安装 jenkins 的远程 centos 机器上运行远程测试,这些测试是 python 脚本。另外,我不想在远程 linux 系统上安装任何 jenkins 进程,因为它“就像”生产服务器,建议不要在其上安装任何应用程序。 如何使用本地 jenkins 运行构建以在本地 jenkins 控制台上执行这些远程测试和报告/输出。

我需要使用詹金斯主从架构吗?如果是的话,鉴于我的上述要求,我该如何配置。

【问题讨论】:

标签: linux jenkins jenkins-slave


【解决方案1】:

您可能想看看这个: https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds

对于您的要求,正是这部分: https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds#Distributedbuilds-Launchslaveagentheadlessly

但是,我相信您仍然必须在从属 unix 节点上安装 java 才能在其上运行 slave.jar

【讨论】:

  • 你可能不正确。我们也可以使用 ssh 工具在从属设备上远程运行构建。请正确检查 CI wiki。为此,它可能只需要在 jenkins 服务器上安装 ssh 插件。
【解决方案2】:

此答案假设脚本位于 GitHub 中。想一想你的情况可能会有所帮助。

所以.. 首先你需要在你的服务器机器上安装 Git:

$ sudo apt-get 更新
$ sudo apt-get install git

现在你需要通过 $ which git

来获取 Git 的路径

它会像 "/usr/local/bin/git"

将该路径复制到git部分的ManageJenkins->全局工具配置->,粘贴到“Git可执行文件的路径”

它将允许您访问 git 源代码。

现在您需要提供 SSH 密钥。

在你的远程机器中输入 sudo sujenkins。你必须为“jenkins”用户生成 ssh 密钥。

现在将公钥添加到 GitHub 帐户(您可以看到 https://www.youtube.com/watch?v=Vi-WqFKYpnw)。

并通过

将私钥添加到Jenkins
  1. 转到凭据
  2. 在范围内的商店中点击全局
  3. 添加凭据
  4. 种类:带私钥的 SSH 用户名
  5. 用户名:您的服务器用户名
  6. 私钥:给用户“Jenkins”的私钥
  7. 将 ID 指定为“jenkins-private-key”或其他任何要识别的内容

现在 转到作业配置->选择您创建的凭据,然后 复制存储库的 ssh url(脚本存储的位置) 现在您可以运行存储在 Git 中的脚本了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-19
    • 1970-01-01
    • 2012-09-12
    • 2014-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多