Skip to content
This repository

The MSBuild Community Tasks Project is an open source project for MSBuild tasks.

branch: master
readme.md

MSBuild Community Tasks

The MSBuild Community Tasks Project is an open source project for MSBuild tasks.

Download

The latest build can be downloaded from the releases section. https://github.com/loresoft/msbuildtasks/releases

The MSBuild Community Tasks library is also available on nuget.org via package name MSBuildTasks.

To install MSBuildTasks, run the following command in the Package Manager Console

PM> Install-Package MSBuildTasks

More information about NuGet package avaliable at https://nuget.org/packages/MSBuildTasks

Development Builds

Development builds are available on the myget.org feed. A development build is promoted to the main NuGet feed when it's determined to be stable.

In your Package Manager settings add the following package source for development builds: http://www.myget.org/F/loresoft/

Join Project

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

Google Group for MSBuild Community Tasks https://groups.google.com/d/forum/msbuildtasks

Current Community Tasks

Task Description
Add Add numbers
AddTnsName Defines a database host within the Oracle TNSNAMES.ORA file.
AppPoolController Allows control for an application pool on a local or remote machine with IIS installed. The default is to control the application pool on the local machine. If connecting to a remote machine, you can specify the and for the task to run under.
AppPoolCreate Creates a new application pool on a local or remote machine with IIS installed. The default is to create the new application pool on the local machine. If connecting to a remote machine, you can specify the and for the task to run under.
AppPoolDelete Deletes an existing application pool on a local or remote machine with IIS installed. The default is to delete an existing application pool on the local machine. If connecting to a remote machine, you can specify the and for the task to run under.
AssemblyInfo Generates an AssemblyInfo files
Attrib Changes the attributes of files and/or directories
Beep A task to play the sound of a beep through the console speaker.
BuildAssembler BuildAssembler task for Sandcastle.
ChmBuilder ChmBuilder task for Sandcastle.
ChmCompiler Html Help 1x compiler task.
Computer Provides information about the build computer.
DBCSFix DBCSFix task for Sandcastle.
Divide Divide numbers
ExecuteDDL MSBuild task to execute DDL and SQL statements.
FileUpdate Replace text in file(s) using a Regular Expression.
FtpCreateRemoteDirectory Creates a full remote directory on the remote server if not exists using the File Transfer Protocol (FTP). This can be one directory or a full path to create.
FtpDirectoryExists Determ if a remote directory exists on a FTP server or not.
FtpUpload Uploads a group of files using File Transfer Protocol (FTP).
FtpUploadDirectoryContent Uploads a full directory content to a remote directory.
FxCop Uses FxCop to analyse managed code assemblies and reports on their design best-practice compliance.
GacUtil MSBuild task to install and uninstall asseblies into the GAC
GetSolutionProjects Retrieves the list of Projects contained within a Visual Studio Solution (.sln) file
HxCompiler A Html Help 2.0 compiler task.
ILMerge A wrapper for the ILMerge tool.
InstallAspNet Installs and register script mappings for ASP.NET
InstallAssembly Installs assemblies.
JSCompress Compresses JavaScript source by removing comments and unnecessary whitespace. It typically reduces the size of the script by half, resulting in faster downloads and code that is harder to read.
Mail Sends an email message
Merge Merge files into the destination file.
Modulo Performs the modulo operation on numbers.
MV Moves files on the filesystem to a new location.
MRefBuilder MRefBuilder task for Sandcastle.
Multiple Multiple numbers
NDoc Runs the NDoc application.
NUnit Run NUnit 2.4 on a group of assemblies.
Prompt Displays a message on the console and waits for user input.
RegexMatch Task to filter an Input list with a Regex expression. Output list contains items from Input list that matched given expression
RegexReplace Task to replace portions of strings within the Input list Output list contains all the elements of the Input list after performing the Regex Replace.
RegistryRead Reads a value from the Registry
RegistryWrite Writes a value to the Registry
RoboCopy Task wrapping the Window Resource Kit Robocopy.exe command.
Sandcastle The Sandcastle task.
Script Executes code contained within the task.
ServiceController Task that can control a Windows service.
ServiceQuery Task that can determine the status of a specified service on a target server.
Sleep A task for sleeping for a specified period of time.
Sound A task to play a sound from a .wav file path or URL.
SqlExecute Executes a SQL command.
SqlPubWiz The Database Publishing Wizard enables the deployment of SQL Server databases (both schema and data) into a shared hosting environment.
Subtract Subtract numbers
SvnCheckout Checkout a local working copy of a Subversion repository.
SvnClient Subversion client base class
SvnCommit Subversion Commit command
SvnCopy Copy a file or folder in Subversion
SvnExport Export a folder from a Subversion repository
SvnInfo Run the "svn info" command and parse the output
SvnUpdate Subversion Update command
SvnVersion Summarize the local revision(s) of a working copy.
TaskSchema A Task that generates a XSD schema of the tasks in an assembly.
TemplateFile MSBuild task that replaces tokens in a template file and writes out a new file.
TfsVersion Determines the changeset in a local Team Foundation Server workspace
Time Gets the current date and time.
UninstallAssembly Uninstalls assemblies.
Unzip Unzip a file to a target directory.
User Provides information about the build user.
Version Generates version information based on various algorithms
VssAdd Task that adds files to a Visual SourceSafe database.
VssCheckin Task that executes a checkin against a VSS Database.
VssCheckout Task that executes a checkout of files or projects against a Visual SourceSafe database.
VssClean Task that can strip the source control information from a Visual Studio Solution and subprojects.
VssDiff Task that records differences between the latest version of all the items in a Visual SourceSafe project and another version or label to a file.
VssGet Task that retireves an item or project from a Visual SourceSafe database.
VssHistory Generates an XML file containing details of all changes made to a Visual SourceSafe project or file between specified labels or dates.
VssLabel Task that applies a label to a Visual SourceSafe item.
VssUndoCheckout Task that undoes a checkout of files or projects against a Visual SourceSafe database.
WebDirectoryCreate Creates a new web directory on a local or remote machine with IIS installed. The default is to create the new web directory on the local machine. The physical path is required to already exist on the target machine. If connecting to a remote machine, you can specify the and for the task to run under.
WebDirectoryDelete Deletes a web directory on a local or remote machine with IIS installed. The default is to delete the web directory on the local machine. If connecting to a remote machine, you can specify the and for the task to run under.
WebDirectoryScriptMap Sets an application mapping for a filename extension on an existing web directory.
WebDirectorySetting Reads and modifies a web directory configuration setting.
WebDownload Downloads a resource with the specified URI to a local file.
XmlMassUpdate Performs multiple updates on an XML file
XmlQuery Reads a value or values from lines of XML
XmlRead Reads a value from a XML document using a XPath.
XmlUpdate Updates a XML document using a XPath.
Xslt A task to merge and transform a set of xml files.
XslTransform XslTransform task for Sandcastle.
Zip Create a zip file with the files specified.
 * Items not complete or have not been released.

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"/>

Alternatively if you want to get started with the nuget packages please add the following.

<PropertyGroup>
    <MSBuildCommunityTasksPath>$(SolutionDir)\.build</MSBuildCommunityTasksPath>
</PropertyGroup>  

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

License

Copyright (c) 2012, LoreSoft All rights reserved.

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

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • 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.
  • Neither the name of LoreSoft nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT HOLDER OR CONTRIBUTORS 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.

Something went wrong with that request. Please try again.