MSBuild Community Tasks Project

MSBuild

The MSBuild Community Tasks Project

Mission

The MSBuild Community Tasks Project is an open source project for MSBuild tasks. The goal of the project is to provide a collection of open source tasks for MSBuild.

Join Project

Please join the MSBuild Community Tasks Project and help contribute in building the tasks. 

http://msbuildtasks.tigris.org/

Current Community Tasks

Task Description
AppPoolController Allows control for an application pool on a local or remote machine with IIS installed.
AppPoolCreate Creates a new application pool on a local or remote machine.
AppPoolDelete Deletes an existing application pool on a local or remote machine.
AssemblyInfo Generates an AssemblyInfo file using the attributes given.
Attrib Changes the attributes of files and/or directories
ExecuteDDL Executes SqlServer batch scripts.
FileUpdate Replace text in file(s) using a Regular Expression.
FtpUpload Uploads a file using File Transfer Protocol (FTP).
FxCop Uses FxCop to analyze managed code assemblies and reports on their design best-practice compliance.
GetSolutionProjects Returns a list of projects within a solution
InstallAspNet Installs and register script mappings for ASP.NET
InstallAssembly Uses InstallUtil.exe to execute the Install method on Installer classes within assemblies.
JSCompress Compresses JavaScript source files by removing comments and unnecessary whitespace, which typically reduces the size by half and results in faster downloads and code that is harder to read.
Mail Sends an email message.
Math.Add Add numbers.
Math.Divide Divide numbers.
Math.Modulo Performs the modulo operation on numbers.
Math.Multiple Multiple numbers.
Math.Subtract Subtract numbers.
Move Moves files on the filesystem to a new location.
NDoc Runs NDoc to create documentation.
NUnit Runs tests using the NUnit.
Prompt Displays a message on the console and waits for user input.
RegexMatch Filters an item group with a regular expression
RegexReplace Replaces strings within items from an item group with a regular expression
RegistryRead Reads a value from the Registry.
RegistryWrite Writes a value to the Registry.
Script Executes code contained within the task.
ServiceController Task that can control a Windows service.
ServiceQuery Task that can determine the status of a service.
Sleep A task for sleeping for a specified period of time.
SqlExecute Executes a SQL command
SvnCheckout Checkout files from Subversion
SvnClient Subversion Client
SvnCommit Commit files to Subversion
SvnCopy Copies a file or path within Subversion
SvnExport Export files from Subversion
SvnInfo Get Subversion information for a file or directory.
SvnUpdate Update files from Subversion
SvnVersion Get Subversion revision number of a local copy
TaskSchema Generates a XSD schema of the MSBuild tasks in an assembly.
TemplateFile Replaces tokens in a file.
TfsVersion Determines the changeset in a local Team Foundation Server workspace (In progress)
Time Gets the current date and time.
UninstallAssembly Uses InstallUtil.exe to execute the Uninstall method on Installer classes within assemblies.
Unzip Unzip a file to a target directory.
Version Generates version information based on various algorithms
VssAdd Adds files to a Visual SourceSafe database.
VssCheckin Checks in files to a Visual SourceSafe database.
VssCheckout Checks out files from a Visual SourceSafe database.
VssClean Removes Visual SourceSafe binding information and status files from a Visual Studio solution tree.
VssDiff Generates a diff between two versions of an item in a Visual SourceSafe database.
VssGet Gets the latest version of a file or project from a Visual SourceSafe database.
VssHistory Generates an XML file containing the history of an item in a Visual SourceSafe database between two dates or labels.
VssLabel Labels an item in a Visual SourceSafe database.
VssUndoCheckout Cancels a checkout of an item from a Visual SourceSafe database.
WebDirectoryCreate Creates a new web directory on a local or remote machine.
WebDirectoryDelete Deletes a web directory on a local or remote machine
WebDirectoryScriptMap Sets an application mapping for a filename extension on an existing web directory.
WebDirectorySetting Reads or modifies a configuration setting on an existing web directory
WebDownload Downloads a resource with the specified URI to a local file.
Xml.XmlMassUpdate Performs multiple updates on an XML file
Xml.XmlQuery Reads a value or values from lines of XML
XmlRead Reads a value from a XML document using a XPath.
XmlWrite Updates a XML document using a XPath.
Xslt Merge and transform a set of xml files.
Zip Create a zip file with the files specified.

Getting Started

In order to use the tasks in this project, you need to import the MSBuild.Community.Tasks.Targets files. If you installed the project with the msi installer, you can use the following.

<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>

Related resources

License

Copyright © 2005-2007 Paul Welter. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
   derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.