为FAKE指定构建参数

时间:2016-01-27 10:25:59

标签: f#-fake

我基本上要求更新已回答问题的日期答案:Can I pass a parameter to a F# FAKE build script?

这是build.fsx

let revisionNumber  = getBuildParamOrDefault "rev" "123"

Target "Log" (fun _ -> 
    trace ("Revision Number: " + revisionNumber)
)

RunTargetOrDefault "Log"

输出正在运行Fake.exe .\build.fsx

enter image description here

完美!

输出正在运行Fake.exe .\build.fsx rev=456(根据此回答建议:https://stackoverflow.com/a/26597179/2382536):

开头

enter image description here

但是在底部给出了正确的结果:

enter image description here

我需要采用什么格式传递参数以消除警告信息?

2 个答案:

答案 0 :(得分:1)

使用--envvar参数完成传递参数。直到最近,您可以按照您在构建目标之后执行的方式添加参数,但不能再添加参数。我相信这是为了不将构建参数与(可选的)构建目标名称混淆。

所以,试试这个:

fake build.fsx Push --envvar rev 456

答案 1 :(得分:1)

我只想分享official documentation:

的链接

TLDR:

您可以使用

--envvar [-ev] <name:string> <value:string>

将变量设置为自定义值,或

--envflag [-ef] <name:string>

将变量设置为true或

--fsiargs --debug+ buildscript.fsx someArg1 anotherArg2

将所有参数(包括构建脚本名称,importent!)直接传递给fsi.exe