问题标签 [jenkins-blueocean]

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 回答
1592 浏览

jenkins - Jenkins Pipeline 和大量并行步骤

我已经在整个互联网上搜索了 2 周,在 freenode IRC 和 Jenkins 用户组邮件列表中询问,但没有得到答案,所以我在这里,你是我最后的希望(没有压力)

我有一个 Jenkins 脚本管道,它生成数百个并行分支,这些分支必须在数百个从节点上同时运行。目前看来 Jenkins BlueOcean 用户界面不适合这种情况。我们达到了一个点,所有步骤都无法显示。

我需要提供某种背景来让您了解我们的需求:我们公司有一个庞大的项目,其中包含数千个 Behat/Selenium,如果按顺序完成,现在需要超过 30 小时才能运行。我们前段时间实现了一个基本解决方案,我们使用排队系统(RabbitMq)来存储所有测试和运行测试的消费者,方法是从 Jenkins 下载源代码并将工件上传回 Jenkins,但这不像Jenkins 本地从属,它的可维护性不够(例如,我们无法从实时输出日志和使用统计中受益)。

我知道这里有一个描述问题的未解决问题:https ://issues.jenkins-ci.org/browse/JENKINS-41205但是,基本上,我需要在下周工作的解决方法(我们的开发团队正在等待这个新管道很长一段时间了)。

我们的管道现在看起来像这样:

您可以在此处找到我们的 Jenkinsfile 的完整版本:https ://github.com/willy-ahva/pim-community-dev/blob/086e4ed48ef1a3d880ca16b6f5572f350d26eb03/Jenkinsfile (它可能看起来很复杂,但基本上,真正的问题是“功能测试”阶段)

我的问题是:

  1. 我使用并行的好方法吗?
  2. 这只是一个 Jenkins/BlueOcean 问题,我应该为我链接的问题做出贡献吗?(如果是,如何?我根本不是 Java 开发人员)
  3. 我应该尝试使用 MultiJob 并并行化作业而不是步骤吗?
  4. 除了并行之外,还有其他工具可以使用吗?(某种叉子或其他什么)?

非常感谢你的帮助。我喜欢 Jenkins 在 Pipeline 和 BlueOcean UI 中的表现,我真的很想让它在我们的团队中发挥作用。

0 投票
2 回答
1843 浏览

windows - Jenkins Blue Ocean 工作区路径太长

我们正在使用 Jenkins Blue Ocean 在 Windows 2012 r2 Jenkins Slaves 上构建 .Net 应用程序。我们Jenkinsfile在 git repos 中使用 a 来定义构建管道。

对于几个项目,由于工作区构建路径太长,Windows 无法处理,我们会遇到构建失败。
这通常发生在最大化最大路径的命令中nuget packnpm install

由于我们无法影响 Visual Studio 解决方案 nuget 包路径的长度,我们如何将工作区文件夹放到 Windows 可以处理的位置?


感谢 Mutsa 的建议,我们最终在 Jenkinsfile 中得到了这样的结果:

这可以在我们GitHub 上的 .net core Wakeboard UK 网站 repo的上下文中看到。

0 投票
0 回答
140 浏览

git - Jenkins GitHub 组织项目使用分离的 HEAD 签出

我在我的 Jenkins 机器上设置了一个 GitHub 组织,并且正在使用多分支管道配置来构建我的项目。我使用 Blue Ocean UI 在全新安装的最新 Jenkins 版本上配置了所有内容。

当 Jenkins 签出项目以进行构建时,它会使用使git checkout -f {hash}工作目录处于“分离 HEAD”状态的命令来执行此操作。我们的 gradle 构建脚本依赖于自省当前工作目录以找出有关当前分支的信息,这在这种情况下会失败。

这个问题似乎有据可查(例如,here),但在所有情况下,解决方案似乎都是Checkout/merge to local branch (optional)在项目的 git 设置中设置一个名为的选项。在我的设置中,我无法在任何地方找到此设置。我查看了组织、项目和个人分支级别,但没有运气。

还有其他方法可以让詹金斯结账到当地分支机构吗?

0 投票
1 回答
2207 浏览

jenkins - 使用 Jenkinsfile 构建 Jenkins 管道没有失败

我有一个如下所示的声明性管道阶段,

我预计管道会失败,因为构建失败并显示以下消息。

currentBuild.result 在我打印时都是空的。
蚂蚁叫错了吗?
为什么管道没有自动捕获返回状态?
蚂蚁调用不会返回失败状态吗?

我尝试了 catchError 而不是 try..catch ,但仍然没有捕获到构建失败。

0 投票
2 回答
866 浏览

github - 在jenkins蓝海视图中添加github url

当我在 jenkins 中运行工作并在蓝色海洋视图中查看它时,它会在左上角向我显示简短的 git 哈希。我希望这个哈希是可点击的并链接到该特定提交的 github 页面。有没有办法做到这一点?

这是我正在谈论的哈希。

0 投票
1 回答
1882 浏览

jenkins - 将 url 指向构建的最新详细信息页面

我尝试在我们的部门楼层设置一个公共展示,以展示 Jenkins 维护项目的当前状态。因此,我正在循环浏览 Jenkins 网页会话,例如 Blue Ocean Pipeline 概述或特定管道的详细构建历史。
蓝海管道建设历史

此外,我想显示管道最后构建步骤的详细页面。
构建管道的详细信息

不幸的是,被调用的 url 使用了我在脚本方面没有的内部版本号。Blue Ocean 中是否有办法根据内部版本号调用最后一个详细的构建页面。* 而不是.../blue/organizations/jenkins/Playground_RTM/detail/Playground_RTM/112/pipeline * 类似的东西.../blue/organizations/jenkins/Playground_RTM/detail/Playground_RTM/last/pipeline

有任何想法吗?

0 投票
1 回答
1350 浏览

jenkins - 有没有办法告诉 Blue Ocean 构建描述是 html?

我们通常从使用 Freestyle 切换到管道项目,其中一部分是定期使用 Blue Ocean。对于经典视图,我们生成指向返回的 html 作业描述,例如,在我们使用的 gitlab 服务器中合并请求。Blue Ocean 上的相同构建描述被视为文本,几乎没有用。

有没有办法告诉 Blue Ocean 将构建描述视为 html 或类似的?

0 投票
0 回答
1046 浏览

jenkins - 如何在詹金斯的蓝海中查看作业执行期间的日志

我在 Jenkins(2.46.3LTS) 蓝海 gui (1.1.2) 中有一个奇怪的行为。我没有管道脚本的输出(例如 echo "test" )。尽管我在旧视图中有一些输出,但我只有这个输出:“排队等待运行开始”。

在工作期间我拍了两张截图

旧版 gui 的屏幕截图

蓝海截图

我该如何解决?

0 投票
0 回答
247 浏览

jenkins - 获取在 blueocean UI 中停止 jenkins 管道的用户

我有一个 Jenkins 多分支管道,我正在使用 Jenkinsfile 进行 CI 流。现在在我的 Jenkinsfile 中,我想获取在 Jenkins Blueocean UI 中停止管道的用户。

我已经尝试过使用它:

但结果是:

被系统中止

在这种情况下如何获得用户?

0 投票
5 回答
11871 浏览

jenkins - Jenkins 蓝海更改 github 访问令牌

詹金斯蓝海非常酷的持续集成工具,但我遇到了以下问题:

在主页上,按照要求,我插入了我的GitHub access token

jenkins 生成访问令牌

在那之后,我意识到那是来自另一家公司的不正确令牌。
现在我想更改为另一个令牌,但没有选择这样做。我总是得到以下屏幕而无法更改密钥。

无法更改 github 访问令牌

我发现如果我从GiHub 令牌 页面中删除了令牌,我可以在上面描述的页面中插入新的令牌。但是现在无法删除该令牌。我需要从Jenkins UI解决问题。

任何想法如何改变?