5 msbuild azure visual-studio-2012
我在Azure上使用TFS在线设置了asp.net网站,以便使用VS 2012进行源代码控制.我正在尝试使用VS 2012新发布配置文件和MSBuild复制文件.阅读本文Visual Studio 2012 Web部署项目已停止 - Long Live Publishing Profiles,其中Doug说您可以在发布配置文件中使用构建脚本.
所以我在我的本地构建中设置了一个适用于我的.csproj的测试.我只是将robots.txt文件从根目录复制到css目录.这是我的测试.我在流程> 6下的TFS Build Process模板中设置了我的pubxml.发布 - Azure网站,Web部署Pubish Profile.
<Target Name="AfterBuild">
<Copy SourceFiles="$(ProjectDir)robots.txt" DestinationFolder="$(ProjectDir)css\" />
</Target>
Run Code Online (Sandbox Code Playgroud)
我把这个代码放到了我的pubxml文件中,我什么都没有.我究竟做错了什么?是否可以在Azure上构建后复制文件?
附加信息
日志文件包含这些行,因此我确定发布配置文件正在运行.
AfterBuild:
Creating directory "C:\a\src\...\css".
Copying file from "C:\a\src\...\robots.txt" to "C:\a\src\...\css\robots.txt".
Run Code Online (Sandbox Code Playgroud)
以下是Azure默认构建模板使用的构建步骤:
所以看起来Azure在"31. CopyAllFilesToSingleFolderForMsdeploy"步骤中打包了所有文件.看起来在AfterBuild步骤中运行副本是迟到的.我将Copy命令移动到目标"BeforeBuild",但文件仍然没有在CopyAllFilesToOneFolderForMsdeploy步骤中结束.
小智 6
感谢Sayed Ibrahim Hashimi的文章如何在发布/包之前压缩CSS/JavaScript以帮助我解决这个问题.
可以直接复制Package Temp Directory.我最终将此目标添加到我的发布配置文件(pubxml)文件中.在"CopyAllFilesTOSingleFolderForMsdeploy"步骤完成后,将运行此步骤,将文件从解决方案的一部分复制到您指定的目标文件夹中.
<Target Name="AdditionalFilesForPackage" AfterTargets="CopyAllFilesToSingleFolderForMsdeploy">
<Copy SourceFiles="$(ProjectDir)robots.txt" DestinationFolder="$(_PackageTempDir)\css\" />
</Target>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3870 次 |
| 最近记录: |