我在同一个根目录下有一个repos集合。每个repo都包含一个build.fsx来编译和编译。测试等。
我想在根目录中创建一个FAKE build.fsx,它可以触发兄弟仓库目录中的build.fsx脚本。
我不担心循环,但是如何最好地从原始build.fsx中调用另一个build.fsx?
我确信Shell.Exec("./packages/tools/FAKE.exe", "./otherdir/build.fsx")
可行,但是FAKE内置了更加无缝的方法吗?
答案 0 :(得分:2)
我认为这不是内置在FAKE中的,所以如果你想让'sibling'构建脚本独立于主脚本使用,那么你的Shell.Exec
方法可能是一个非常好的方法(以及我的方法)会使用)。那说......
该方法的一个细微变化是加载兄弟.fsx文件,然后在“父”构建脚本中编写它们的构建目标:
#load "Sibling.fsx"
"LocalTarget"
==> "SiblingTarget"
如果目标名称发生冲突,您将收到错误,并且可能会造成混淆,因此命名约定会很明智(例如“Build_Sibling_1
”,“Clean_Sibling_2
”等。