1

我一直在使用詹金斯一段时间,它工作正常。现在我有几个关于我应该使用的约定的问题。目前:詹金斯工作管理公约

  • 我拆包的workspace/${env.BUILD_NUMBER}/code源代码和和建设他们在workspace/${env.BUILD_NUMBER}/build

  • 我在workspace/${env.BUILD_NUMBER}/bvt

  • 我拆包构建验证测试(BVT)将我的JUnit测试结果保存在workspace/${env.BUILD_NUMBER}/test-results中,Jenkins正在读取此目录并发布JUnit测试结果报告。

或者我应该使用作业目录即

jobs/${env.BUILD_NUMBER}/code 
jobs/${env.BUILD_NUMBER}/build 
jobs/${env.BUILD_NUMBER}/bvt 
jobs/${env.BUILD_NUMBER}/test-results 

或者我应该做这一切的

/var/lib/jenkins/jobs/<JOB_NAME>/builds/<BUILD_NUMBER> 

内任何人都可以请建议什么是标准的做法和惯例?

+1

我认为这是您选择使用的构建工具最好的回答。例如Maven带有它自己的目录约定。您已将此问题标记为Eclipse,但使用ANT,Maven或Gradle等工具构建代码更为正常 –

回答

0

唯一真正的约定是不使用任何明确的东西,如workspace/${env.BUILD_NUMBER}/code,当然不是jobs/${env.BUILD_NUMBER}/code。 Jenkins在当前版本的工作区中运行所有命令,因此您应该在(几乎)所有情况下使用当前工作目录。

除此之外,使用您的构建环境的首选约定。如果你的工具没有,那么考虑采用一个公认的工具。 Maven可能具有最完整的一组约定,或者至少是该约定的最佳文档。