问题标签 [hudson]

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 投票
6 回答
5425 浏览

java - 是否有(自动)方法来备份 Hudson CI 文件?

在我的公司,我们有三台配置了 100 多个作业的 Hudson CI 服务器。我们正在寻找一种自动化的方式来定期备份作业配置和构建历史。

目前我们有一个 ant 脚本,我们将其配置为作业,但它不容易维护且不优雅。

你们有没有找到一种方法来管理这个?

0 投票
4 回答
2655 浏览

svn - 仅使用 svn 触发对主干的提交的构建

我刚刚在我们的 subversion 存储库中设置了一个提交后脚本,它通过请求一个 hudson 构建 URL 来触发构建。

这按预期工作正常,但是现在我只想在提交到主干时触发这个构建。

我们的提交后脚本如下所示:

如何检查提交是否到主干?

0 投票
2 回答
10975 浏览

java - Junit 内联比较器初始化错误

我创建了一个 SortedList 类,它有一个以 java.util.Comparator 作为参数的构造函数。

在我的机器上运行单元测试后(通过 eclipse 3.3.0),一切正常。然而,哈德森抱怨,因为它说它不能实例化我的比较器。

这是我的简单测试(片段)

或者另一种方式:

哈德森显示的错误是

ar.com.lib.SortedListTest$strcmp.initializationError0

错误信息

测试类应该有公共的零参数构造函数

堆栈跟踪

java.lang.Exception:测试类应在 java.lang.reflect.Constructor.newInstance(Constructor.java:513) 处的 java.lang.reflect.Constructor.newInstance(Constructor.java:513) 处具有公共零参数构造函数作者:java.lang.NoSuchMethodException:ar.com.lib.SortedListTest$strcmp.() at java.lang.Class.getConstructor0(Class.java:2706) at java.lang.Class.getConstructor(Class.java:1657)

我尝试过使用 @Ignore 注释,但到目前为止还没有运气。当我尝试时它不会编译

任何想法将不胜感激。提前致谢。

0 投票
5 回答
8887 浏览

maven-2 - 我可以从 Maven/Hudson 自动调用 QTP 测试套件吗?

我们需要将 QTP 与 Hudson 集成,以针对部署在 Hudson 中的代码自动调用测试套件。构建过程基于 Maven。

是否有任何插件或其他东西可以实现这一目标?我们听说过 Hudson 的 Groovy 插件;我们可以用 Groovy 脚本执行它吗?

0 投票
3 回答
1447 浏览

ant - 如何在 Hudson 中沙箱 Ant 构建

我正在评估 Hudson 构建系统,将其用作一个集中的、“无菌”的构建环境,用于一家具有非常分布式开发的大公司(从地理和管理的角度来看)。一个目标是确保构建只是源代码控制树和构建脚本(也是该树的一部分)内容的函数。这样,我们可以确定放入生产环境的代码实际上来自我们的源代码控制系统。

Hudson 似乎提供了一个 ant 脚本,其中包含分配给调用 Hudson 服务器本身的用户的全套权限。因为我们希望允许各个开发组在没有管理员干预的情况下修改他们的构建脚本,所以我们想要一种沙箱化构建过程的方法,以 (1) 限制错误构建脚本造成的潜在危害,以及 (2) 避免所有游戏有人可能会在构建中插入恶意代码。

这是我想要的(至少对于 Ant,我们现在没有使用 Maven/Ivy):

  • Ant 构建脚本只能访问其工作区目录
  • 它只能从源代码树中读取(因此可以信任 svn 更新,并且不会插入其他代码)。
  • 它可能被允许读取构建类路径所需的某些目录(Ant 发行版、JDK 等)。

我可以想到三种方法来实现这一点:

  1. 编写一个使用 Java 安全模型来约束访问的 ant 包装器
  2. 为每个构建创建一个用户并分配上述权限。在此用户空间中启动构建。
  3. 更新)使用 Linux “监狱”来避免为每个构建过程创建新用户帐户的负担。虽然我对这些知之甚少,但我们将在最近的 RedHatEL 发行版的 Linux 机器上运行我们的构建。

我是否正确地考虑了这个问题?其他人做了什么?

更新:这家伙考虑了 chroot 监狱的想法:

https://www.thebedells.org/blog/2008/02/29/l33t-iphone-c0d1ng-ski1lz

更新 2:信任是一个有趣的词。我们是否认为任何开发人员都可能尝试任何恶意行为?没有。但是,我敢打赌,在一年中使用开发人员更新的构建脚本构建了 30 个项目,将会有几个实例(1)意外破坏项目工作区之外的文件系统区域,以及(2)构建需要花费大量时间才能弄清楚的腐败。我们相信我们所有的开发人员不会搞砸吗?没有。我不相信自己到那个水平,这是肯定的。

关于恶意代码插入,真正的目标是能够排除考虑的可能性,如果有人认为这样的事情可能已经发生。

此外,通过适当的控制,开发人员可以修改自己的构建脚本并对其进行测试,而不必担心灾难。这将导致更多的构建“创新”和构建过程(单元测试执行等)强制执行的更高质量水平

0 投票
4 回答
14245 浏览

git - 哈德森 git 克隆错误

我在 Hudson 创建了自由风格的软件项目。

我想克隆一个公共 Git 存储库:git://github.com/bret/watir.git

构建失败并显示错误消息:

我不认为问题出在文件夹权限上,因为我有另一个 Hudson 工作(使用 SVN 存储库)工作得很好。

我试图从命令行将存储库克隆到 .hudson\jobs\watir\workspace,它工作正常:

据我所知,Hudson 使用了相同的 Git 可执行文件或相同的版本,就像命令行一样。

命令行:

哈德逊:

在网上搜索我发现只有一页与我的错误消息相关(hudson git plugin remote windows slave clone),它说问题是 Git 不在路径中。但那样的话,git version就不会从哈德逊跑了,对吧?

环境:

  • Microsoft Windows Server 2003 R2,标准版,Service Pack 2
  • java 1.6.0_14
  • 哈德逊 1.316
  • Hudson GIT 插件 0.7.3
  • 混帐 1.6.3.2.1299.gee46c
0 投票
1 回答
1908 浏览

svn - svn commit 后 Hudson 没有构建

我在 Windows Vista 机器上设置了 hudson - 作为服务运行。它工作正常,但最近似乎在提交后无法构建。它永远不会离开“挂起”状态。

当我浏览到 hudson 项目页面时,它似乎“卡在”安静的时期——它知道有一个提交,但它还没有构建。我的安静期设置为 20 分钟左右,但尽管有提交,但它会持续数天而没有构建。

我有两个不同的安静期——一个用于全球 hudson 安装,一个用于这个项目。

有没有人以前见过这个问题,有解决办法吗?

0 投票
1 回答
645 浏览

tomcat - Cobertura 覆盖率报告图像

有谁知道 Cobertura 将其覆盖报告图像贴在哪里?

我的图片的网址是:http://ContinualTests/746/cobertura/graph

当我挖掘运行 tomcat/hudson 的盒子时,我发现

tomcat6/.hudson/jobs/XX/builds/746 但我没有看到图表。图像是即时生成的吗?似乎可以生成一次并重复使用。

埃里克

0 投票
4 回答
1177 浏览

perl - 有没有人在 Perl 中使用 Hudson(或其他类似的构建系统)取得任何成功?

有没有人在 Perl 中使用 Hudson(或其他类似的构建系统)取得任何成功?

0 投票
2 回答
4569 浏览

java - 声纳项目集成

嗨女士们先生们,

我们有一个相当大的项目,拥有自己的构建框架,主要基于 Java(但也存在其他语言)。

我们想使用 Sonar Hudson 插件以图形方式呈现各种代码指标。我们如何做到这一点?

我们是否需要更改项目结构并将其带到 Maven 中,或者是否有一种解决方法来指定从何处获取测试结果和其他工件?

谢谢