0

截至周二,每个构建都失败了。我不确定发生了什么。Phing 目标(清理/准备)正在正确执行。此外,单元测试以优异的成绩通过,只有重复代码的警告(不是失败的原因)。我尝试删除 phpDoc 目标以查看是否导致错误,但构建仍然失败。

由用户 chris 开始更新文件://localhost/projects/svn/ips-com/trunk 在修订版 234 中,文件://localhost/projects/svn/ips-com/trunk 自上次构建以来没有更改 [trunk] $ / opt/phing/bin/phing clean prepare -logger phing.listener.NoBannerLogger 构建文件:/var/lib/hudson/.hudson/jobs/IPS/workspace/trunk/build.xml

IPS > 清洁:

 [echo] Clean...    [delete] Deleting directory

/var/lib/hudson/.hudson/jobs/IPS/workspace/build

IPS > 准备:

 [echo] Prepare...
[mkdir] Created dir: /var/lib/hudson/.hudson/jobs/IPS/workspace/build
[mkdir] Created dir: /var/lib/hudson/.hudson/jobs/IPS/workspace/build/logs
[mkdir] Created dir: /var/lib/hudson/.hudson/jobs/IPS/workspace/build/logs/coverage
[mkdir] Created dir: /var/lib/hudson/.hudson/jobs/IPS/workspace/build/logs/coverage-html
[mkdir] Created dir: /var/lib/hudson/.hudson/jobs/IPS/workspace/build/docs
[mkdir] Created dir: /var/lib/hudson/.hudson/jobs/IPS/workspace/build/app

建造完成

总时间:1.0244 秒

[工作区] $ /bin/bash -xe /tmp/hudson3259012225710915845.sh + cd trunk/tests + /usr/local/bin/phpunit --verbose -d memory_limit=512M --log-junit ../../build /logs/phpunit.xml --coverage-clover ../../build/logs/coverage/clover.xml --coverage-html ../../build/logs/coverage-html/ PHPUnit 3.5.0 由塞巴斯蒂安·伯格曼。

IPS Default_IndexControllerTest 。

Default_AuthControllerTest ......

Manage_UsersControllerTest .....
testDeleteInvalidUserId .. testGetPermissionsForInvalidUserId .. Audit_OverviewControllerTest ......

时间:14 秒,内存:61.00Mb

[30;42m[2KOK(28 个测试,198 个断言)[0m[2K 将代码覆盖率数据写入 XML 文件,这可能需要一点时间。

生成代码覆盖率报告,这可能需要一点时间。

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行的未知中关闭语句时发生错误

警告:未知:在第 0 行 [工作区] 的未知中关闭语句时发生错误 $ /bin/bash -xe /tmp/hudson1439023061736436000.sh + /usr/local/bin/phpcpd --log-pmd ./build/logs/ cpd.xml ./trunk phpcpd 1.3.2 由 Sebastian Bergmann 编写。

在 2 个文件中找到 1 个具有 6 个重复行的精确克隆:

  • 库/Ips/Form/Decorator/SplitInput.php:8-14 库/Ips/Form/Decorator/FeetInches.php:10-16

16585 行代码中有 0.04% 重复行。

时间:4 秒,内存:19.50Mb [DRY] 跳过发布者,因为构建结果失败发布 Javadoc [xUnit] [INFO] - 开始记录。[xUnit] [警告] - 无法创建路径 /var/lib/hudson/.hudson/jobs/IPS/workspace/generatedJUnitFiles。也许该目录已经存在。[xUnit] [INFO] - 处理 PHPUnit-3.4(默认) [xUnit] [INFO] - [PHPUnit-3.4(默认)] - 发现 1 个测试报告文件,模式为 'build/logs/phpunit.xml ' 相对于测试框架 'PHPUnit-3.4 (default)' 的 '/var/lib/hudson/.hudson/jobs/IPS/workspace'。[xUnit] [INFO] - 转换 '/var/lib/hudson/.hudson/jobs/IPS/workspace/build/logs/phpunit.xml' 。[xUnit] [INFO] - 停止录制。发布 Clover 覆盖率报告... 发布 Clover XML 报告...

4

2 回答 2

2

自周二以来发生了什么变化?尝试手动运行与 Hudson 尝试从 Hudson 启动它的同一目录(通常是作业工作区目录)运行完全相同的命令。当然是使用启动 Hudson 的用户帐户。

有几种可能性。范围从目录的标准组到权限或 Hudson 之外的其他内容。哈德森升级了吗?插件升级了吗?操作系统或php升级了吗?默认或用户 .profile 或 .env (或等效文件)是否有更改?其他进程是否访问工作区?……

一旦我遇到突然我的部署脚本不再运行的问题。神秘的是,我仍然可以使用 Hudson 用户帐户从命令行运行脚本。原因很简单,但花了一段时间才发现。有一个从 5 到 6 的 java 升级。两个版本都可用。对比环境变量后发现路径有差异。问题是新路径是在全局 .profile 中设置的。但是 Hudson 没有打开交互式 shell,因此 .profile 不会被执行。如果你有这样的问题,你可以把初始化放在 .env 文件中(或者你系统的任何文件名),因为不管它是否是交互式 shell,它都会运行。或者,您可以配置 Hudson 以将其设置为主或节点/从属级别。

于 2010-10-08T16:05:31.660 回答
0

如果您希望命令不会将“构建”中断为失败,则必须添加 #! 在命令前面以防止产生这种行为的标志 -xe。

于 2012-02-02T16:05:04.430 回答