Buildbot Triggerable Scheduler 与工作目录的关系
Buildbot Triggerable Scheduler and working dir relation
尝试在 buildbot nine (0.9.1) 中设置可触发调度程序,但我想我误解了它应该如何工作。
我有两个建设者:
- 编译生成器
- PackageBuilder
CompilerBuilder 的最后一步是触发步骤:
steps.Trigger (schedulerNames=['package'],
waitForFinish=True)
主配置文件有一个可触发的调度程序:
c['schedulers'].append(schedulers.Triggerable(
name="package",
builderNames=['package']))
我想要什么achieve/expect
- SingleBranch Scheduler 启动 CompilerBuilder
- 当CompilerBuilder执行到最后一步时,会触发PackageBuilder,对刚编译好的软件进行打包。
到底发生了什么
- SingleBranch Scheduler 启动 CompilerBuilder
- 当CompilerBuilder到达最后一步时,PackageBuilder被触发
...到目前为止一切顺利,不幸的是,PackageBuilder 是在与签出和编译代码的目录不同的工作目录中启动的,因此包创建过程失败。
我的理解是触发构建器将 运行 在 "calling" 构建器的相同工作目录中,但我认为我不理解如何正确配置 builders/schedulers正确。
有什么提示吗?
不幸的是,每个构建器都有自己的工作目录。我建议将 addSteps(而不是 addStep)与包步骤列表一起用作单分支调度程序构建器的一部分。如果你并不总是想要打包,添加一个带有一些额外逻辑的 doStepIf。
尝试在 buildbot nine (0.9.1) 中设置可触发调度程序,但我想我误解了它应该如何工作。 我有两个建设者:
- 编译生成器
- PackageBuilder
CompilerBuilder 的最后一步是触发步骤:
steps.Trigger (schedulerNames=['package'],
waitForFinish=True)
主配置文件有一个可触发的调度程序:
c['schedulers'].append(schedulers.Triggerable(
name="package",
builderNames=['package']))
我想要什么achieve/expect
- SingleBranch Scheduler 启动 CompilerBuilder
- 当CompilerBuilder执行到最后一步时,会触发PackageBuilder,对刚编译好的软件进行打包。
到底发生了什么
- SingleBranch Scheduler 启动 CompilerBuilder
- 当CompilerBuilder到达最后一步时,PackageBuilder被触发
...到目前为止一切顺利,不幸的是,PackageBuilder 是在与签出和编译代码的目录不同的工作目录中启动的,因此包创建过程失败。
我的理解是触发构建器将 运行 在 "calling" 构建器的相同工作目录中,但我认为我不理解如何正确配置 builders/schedulers正确。
有什么提示吗?
不幸的是,每个构建器都有自己的工作目录。我建议将 addSteps(而不是 addStep)与包步骤列表一起用作单分支调度程序构建器的一部分。如果你并不总是想要打包,添加一个带有一些额外逻辑的 doStepIf。