问题标签 [jenkins-slave]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
163 浏览

azure - Jenkins 从节点:我可以用它来接管在不同域上完成的构建吗?

我已成功在本地域上设置 Jenkins 作为测试。它从 SCM 构建,压缩构建,提取到唯一的时间戳文件夹,然后将文件复制到 IIS 文件夹。

我现在必须将其设置为部署到 Azure VM。现在事情变得棘手了。我得到要复制的文件 - 这需要很长时间。解压缩实际上需要一个小时。

跨域用户权限也使事情变得困难,因为运行 Jenkins 服务的用户在 Azure 域上的生产机器上不存在。

我有哪些选择?我应该在生产盒上安装一个从节点,然后从主节点“激活”从节点,然后让从节点: 1. 或许将文件从 Azure 存储复制到生产盒?2. 解压文件 3. 将文件复制到 IIS 文件夹。

0 投票
2 回答
6559 浏览

jenkins - Jenkins Pipeline:从从属代理获取构建输出

背景

假设我有两份工作,一份“管道作业”和一份“构建作业”。“管道作业”在 master 上运行,当然是一个管道(使用 groovy)。然后对于管道中的构建部分,我使用在 Windows 上运行的从属设备,即“构建作业”,它负责构建我无法在主服务器上执行的操作。master 也在 Windows 上运行,但缺少特定构建所需的一些软件。

问题

我有一个看起来像这样的 groovy 脚本:

它工作正常,其中“BuildJob”是“限制可以运行此项目的位置”,即在从属设备上。

我的问题是我希望“BuildJob”的输出打印在管道日志中。你有一些聪明的方法可以做到这一点吗?我对一切都开放,所以如果你知道更聪明的方法来启动“BuildJob”等。我很想在这里。

谢谢!

0 投票
1 回答
471 浏览

ios - 在 Jenkins slave 上构建 iOS 应用程序返回错误:沙箱与 Podfile.lock 不同步

我在配置 Jenkins slave 以构建 iOS 应用程序时遇到了问题。我已经按照本教程中的描述设置了所有内容,但是每次构建失败时都会显示以下消息:


错误:沙箱与 Podfile.lock 不同步。运行“pod install”或更新您的 CocoaPods 安装。

** 构建失败 **

以下构建命令失败:

PhaseScriptExecution [CP]\ Check\ Pods\ Manifest.lock /PATH_TO_PROJECT/Build/Intermediates/xxxx.build/Release-iphoneos/xxxx.build/Script-F0C04920AA373F4352DB3101.sh

(1 次失败)构建步骤“Xcode”将构建标记为失败已完成:失败


版本cocoapods1.1.1

xCode版本7.3.1

我使用 mac mini 作为从设备(Sierra OS X)

我已经通过终端运行 pod install 并且从 xCode 构建工作正常。

我会为所有其他问题提供帮助,并感谢我能获得的所有帮助。

0 投票
1 回答
222 浏览

docker - 每个模块类型的 jenkins-slave 容器镜像还是可以构建任何东西的单个集中式容器镜像?

我有多个项目需要构建为同一个 CI 流程的一部分——有些是 java,有些是 nodejs,有些是 c++ 等。我们使用 Jenkins,slave 应该作为 docker 容器运行。

我的问题是-我应该为每个模块类型创建一个 jenkins 从容器映像,即一个能够构建 java 的专用从映像,以及一个用于构建安装了节点等的 nodejs 的专用容器,还是一个可以构建任何东西的单个容器- jave、节点等

如果我从 vm 的角度来看,我很可能会使用同一个 vm 来构建任何东西——这意味着一个集中的构建从站。但我不喜欢这种依赖关系,或者如果明天我需要更新 java 版本并保留旧版本,我可能会创建巨大的图像,它们之间的差异很小。

WDYT?

0 投票
4 回答
33366 浏览

jenkins - 为什么 Jenkins 在启动代理时说“服务器拒绝了 1 个私钥”?

我可以使用 SSH 成功连接到远程机器,但是当我从 Jenkins 启动代理时,它会引发以下错误:

我可以使用 建立从主机到节点计算机的 SSH 连接user1,但是当我尝试使用user1从 jenkins 启动代理时,它会拒绝私钥。有什么解决方案可以克服这个问题吗?

0 投票
1 回答
864 浏览

node.js - 在与 Jenkins 一起运行的 MAC OS X Slave 上构建错误“spawn spctl ENOENT”

我们用一个在我本地开发者机器上运行的 mac slave 建立了我们的 Jenkins 服务器。它已由 electron/node.js 创建应用程序应用程序。

Jenkins 通过 ssh 和我的用户名/密码连接到我的 os x 机器。我可以看到,在构建过程中,我们的应用程序目录已创建并保存在我机器上指定位置的位置。(slave.jar、工作区目录等)。

如果代码签名开始,Jenkins 现在会遇到如下错误:

有趣的是,如果我通过 ssh 从另一台机器手动连接到我的本地机器并通过终端执行“build -m”功能,那么构建运行完美且没有错误。

我需要在首选项中设置什么也适用于 Jenkins-SSH?或者为什么我只从詹金斯那里得到他的错误

0 投票
1 回答
5939 浏览

apache - Jenkins Slave 连接到在 Apache 后面运行的 Jenkins Master

以下是我的设置:

  1. Jenkins master 在服务器上运行,假设它的域名是 jenkins.master.host,即直接访问 Jenkins master 的 URL 是http://jenkins.master.host:8080

  2. Apache HTTPD 在不同的服务器上运行,假设它的域名是 jenkins.master.proxy。HTTPD 被配置为监听 80 端口并代理到 jenkins master,即通过 apache 访问 Jenkins master,使用 URL http://jenkins.master.proxy

  3. 在“Manage Jenkins”->“Configure System”下,将Jenkins URL配置为apache httpd URL,即http://jenkins.master.proxy

  4. 在 "Manage Jenkins" -> "Configure Global Security" 下,slave 被配置为在固定的 TCP 端口 9020 上运行。

  5. 在“管理 Jenkins”->“管理节点”下,我创建了一个名为“TestSlave”的新节点。

  6. 下载 JNLP 启动从站后,连接到主站的小从站代理窗口仍然卡在“连接到 jenkins.master.proxy:9020”

JNLP 如下:

Apache HTTPD 配置如下:

是否需要将一些配置放入 Jenkins 主服务器或 apache HTTPD 以使从服务器连接?小詹金斯奴隶代理窗口仍然停留在“连接到 jenkins.master.proxy:9020 (retrying:11)”。也许我需要在 apache HTTPD 中添加另一个 VirtualHost 来监听端口 9020?我曾尝试这样做,但没有成功。

想法将不胜感激。

非常感谢

0 投票
1 回答
684 浏览

jenkins - Jenkins master 在 swarm 客户端中运行管道时抛出 java.io.IOException

我试图在使用 swarm 客户端的代理中运行管道作业。作业运行良好,但我在日志中收到很多错误消息,如下所示:

(实际IP地址用XX代替)

在我的观察中,主人在等待客户端中运行的脚本时抛出了这个错误。同样,管道作业运行完美,除了我在管道日志上收到此错误。

下面是我的管道脚本:

无论如何我们可以摆脱这个错误吗?

环境

詹金斯版本:2.32.2

在 Windows Server 2012 R2 上运行

AIX 7.1 和 JDK 8 上的 Swarm Client 3.3

还提出了一个 Jenkins 问题:https ://issues.jenkins-ci.org/browse/JENKINS-42428

0 投票
1 回答
207 浏览

windows - Jenkins windows slave在线但没有运行构建

我们最近将 jenkins 升级到了 2.32.2.6。升级后,所有非 Windows VM 都已启动并运行,而我们正面临与 Windows 从属设备的连接问题。从服务已启动并正在运行。从站显示为在线。但是如果触发了构建,尽管执行器处于空闲状态,但作业会显示“等待下一个执行器”。我们有大约 400 名奴隶,我们都面临着他们所有人的问题。从属执行器处于空闲状态,构建队列正在上升,构建等待下一个构建执行器。有人可以在这里帮忙吗?

我们尝试重新启动服务器,从机,重新启动服务。没有任何帮助。

0 投票
4 回答
10020 浏览

selenium - 在作为 Jenkins Slave 的虚拟机上设置 Selenium 测试的显示分辨率

我在 Jenkins Slave 上运行一些 Selenium 测试时遇到问题。具体来说,用于运行测试的显示分辨率太小,导致某些测试失败。

为了检查显示分辨率,我们将显示高度和宽度记录到控制台,使用:

这将返回:

这对我来说似乎是一个非常奇怪的决议。所需的分辨率为 1920 x 1080。

用作从服务器的服务器是虚拟机 (Windows Server 2012 R2)。Jenkins 从站通过 JNLP 代理连接。从站的服务以“本地系统”登录并启用“允许服务与桌面交互”选项运行。

到目前为止,我们已经尝试了很多方法,例如:

  • 使用 RDP 连接到从属 VM 并断开连接以保持会话以所需的显示分辨率打开
  • 使用powershell设置显示分辨率
  • 在 VM 配置中设置默认显示分辨率
  • 使用 Selenium 设置窗口尺寸
  • 和更多...

所有这些都没有解决问题。非常欢迎提出建议!