Archive for January, 2006

All new Enterprise Library

January 22, 2006

The Enterprise Library has been updated for the .Net Framework 2.0

http://msdn.microsoft.com/library/?url=/library/en-us/dnpag2/html/EntLib2.asp

Downloads
Webcasts
Powerpoint Presentations
Advertisements

MSBuild Task for deploying a WebSite

January 17, 2006

In the MSBuild Tasks there is a Task for Copy-ing a File or a Collection of Files ( ItemGroup ). But as it turns out the Exclude filtering of the ItemGroup is too limited to have a good deployment of a WebSite/WebApplication.

The guys of Microsoft UK have made a distribution available of the Microsoft.Sdc.Tasks ( see GotDotNet ) but their Folder.Copy lacks any Exclude filtering.

That’s why I created our own CopyFolder. The Exclude filter can be used in 2 ways:

  • .extention -> any file with that extention will be excluded from the copy
  • SomeString -> any file where the filename (with relative path) contains SomeString will be excluded

Binaries:

TamTam.Deployment.Tasks.zip (4,63 KB)

MSBuild project file:

<

Project DefaultTargets="Full" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<Import Project="TamTam.Deployment.Tasks" />

<PropertyGroup>

<SourcesForWebSite>C:\BuildLab\build\www\</SourcesForWebSite>

<WebExcludes>.cs;.txt;.scc;csproj;.resx;.resources;.cache;.pdb;App_;\obj</WebExcludes>

<DestForWebSite>\\server\folder</DestForWebSite>

</PropertyGroup>

<Target Name="Full" DependsOnTargets="

WebSite"

/>

<Target Name="WebSite">

<Message Text="Deploying WebSite" />

<CopyFolder
Source="$(SourcesForWebSite)"
Destination="$(DestForWebSite)"
SkipUnchangedFiles="true"
Exclude="$(WebExcludes)" />

</Target>

</

Project>