将 MSBuild 参数传递给蛋糕生成脚本以生成_PublishedWebsites
本文关键字:PublishedWebsites 脚本 MSBuild 蛋糕 参数传递 | 更新日期: 2024-10-30 07:58:42
我目前正在编写一个Cake构建脚本来构建许多 ASP.NET MVC站点。
目前,我看不到将参数传递给 MSBuild 以生成用于部署的_PublishedWebsites文件夹的选项。
我相信我需要通过的论点是:
/p:OutDir=$(build.stagingDirectory)
/p:DeployOnBuild=true
/p:WebPublishMethod=Package
/p:PackageAsSingleFile=true
/p:SkipInvalidConfigurations=true
如果有另一种方法可以生成相同的输出内容,只是不在同一文件夹目录中,那就好了。
下面的示例应在从 Cake 生成网站解决方案时设置正确的 MSBuild 属性。
MSBuild("./src/Website.sln", new MSBuildSettings()
.WithProperty("OutDir", "$(build.stagingDirectory)")
.WithProperty("DeployOnBuild", "true")
.WithProperty("WebPublishMethod", "Package")
.WithProperty("PackageAsSingleFile", "true")
.WithProperty("SkipInvalidConfigurations", "true"));
要设置网站的输出目录,只需将"$(build.stagingDirectory)"
部分与要显示输出的目录的路径交换即可。
您可以在此处阅读有关 Cake 中 MSBuild 别名的更多信息:http://cakebuild.net/api/cake.common.tools.msbuild/
对于文件系统发布,可以这样完成:
MSBuild(/**project path**/, settings =>
settings.SetConfiguration(/**configuration**/)
.WithProperty("DeployTarget", "WebPublish")
.WithProperty("DeployOnBuild", /**boolean**/)
.WithProperty("PackageAsSingleFile", /**boolean**/)
.WithProperty("WebPublishMethod", "FileSystem")
.WithProperty("PublishUrl", /**url**/)
);