包装的Web API项目我有一个包含四个项目Visual Studio解决方案:TFS 2017年生成定义:用于部署
1桌面应用; 1 Windows服务; 2个Web API项目。 > 2013 - -
这些项目已经从VS2010迁移> 2017年我已经删除/我承认编辑尽可能多的传统的东西。
的解决方案建立在2017年
罚款我只希望构建Web API项目之一,生成部署包,并发布该数据包为伪影。防粘定义将要使用到的WinRM在Windows Server 2012中的系统运行IIS部署软件包。
在我的构建定义我有一个MSBuild任务。
此任务的参数如下:
- 项目设置为
- 平台被设置在TFS源控制我的WebAPI的.csproj的路径“AnyCPU” - (“任何CPU”不工作..其已知的(旧)问题)
- 配置是 “释放”
- MSBuild的论点是:
/p:DeployOnBuild =真/ P:WebPublishMethod =封装 /P:PackageAsSingleFile =真/ P:SkipInvalidConfigurations =真/p:PackageLocation=$(Build.ArtifactStagingDirectory)\webapi.zip
- 清洁被设定为true
- 为什么它包装这个完整的路径? (C:\ agent2_work是我的构建代理的目录)
- 我该如何改变呢?
构建成功完成,但是所产生的webapi.zip包包含一个巨大的文件夹结构:
C:\ agent2_work \ 27 \一个\ webapi.zip \内容\ C_C \ agent2_work \ 27 \ S \ MyProduct.WebApi \ OBJ \发布\包\ PackageTmp
问题:
安迪,再次感谢您的帮助。非常感激。我正在将软件包部署到使用WinRM的IIS上,并且绝对需要确保我使用正确的,现代的做事方式。 – Scott