MSBuildでASP.NETのプロジェクトを発行

MSBuildを勉強中。学習した内容をメモします。

ASP.NETプロジェクトのMSBuildでの発行は、↓でいけそう。

<?xml version="1.0" encoding="utf-8"?>

<Project DefaultTargets="Run" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <!--<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>-->
  <!--<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets"/>-->
  <!--<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />-->

  <PropertyGroup>
    <OutputFolder>E:/temp/msbuildTest</OutputFolder>
  </PropertyGroup>

  <Target Name="Run">
    <CallTarget Targets="Build"/>
    <CallTarget Targets="Publish"/>
  </Target>

  <Target Name="Build">
    <MSBuild Projects="./MSBuildTest.sln"
             Properties="Configuration=Release;"/>
  </Target>
  
  <Target Name="Publish">
    <RemoveDir Directories="$(OutputFolder)"
               ContinueOnError="true" />
    <MSBuild Projects="./MSBuildTest.Web/MSBuildTest.Web.csproj"
             Targets="ResolveReferences;_CopyWebApplication"
             Properties="Configuration=Release;
                         WebProjectOutputDir=$(OutputFolder);
                         OutDir=$(OutputFolder)/"/>
  </Target>
</Project>

ここまででもけっこう手間取った。
後は、subversionから最新版とってきてconfigとか修正してなどのタスクを入れていきたい。


参考
http://codingcockerel.co.uk/?p=15
http://blog.m.jedynak.pl/2008/03/publishing-web-application-with-msbuild.html
http://codingcockerel.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=12739#DownloadId=34821