Skip to content

Instantly share code, notes, and snippets.

@philiphendry
Created August 27, 2015 08:48
Show Gist options
  • Save philiphendry/9f3ab1cfcbce1cbd861d to your computer and use it in GitHub Desktop.
Save philiphendry/9f3ab1cfcbce1cbd861d to your computer and use it in GitHub Desktop.
Some examples of integration points in a MS Deploy
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is used by the publish/package process of your Web project. You can customize the behavior of this process
by editing this MSBuild file. In order to learn more about this please visit http://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<PipelineCollectFilesPhaseDependsOn>
CustomCollectFiles;
$(PipelineCollectFilesPhaseDependsOn);
</PipelineCollectFilesPhaseDependsOn>
</PropertyGroup>
<PropertyGroup>
<OnAfterCopyAllFilesToSingleFolderForPackage>
CreateEmptyFolders;
$(OnAfterCopyAllFilesToSingleFolderForPackage)
</OnAfterCopyAllFilesToSingleFolderForPackage>
</PropertyGroup>
<PropertyGroup>
<AfterAddIisSettingAndFileContentsToSourceManifest Condition="'$(AfterAddIisSettingAndFileContentsToSourceManifest)'==''">
$(AfterAddIisSettingAndFileContentsToSourceManifest);
AddCustomSkipRules;
</AfterAddIisSettingAndFileContentsToSourceManifest>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish/>
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>c:\temp\ApplicationCataloguePackage</publishUrl>
<DeleteExistingFiles>False</DeleteExistingFiles>
</PropertyGroup>
<Target Name="CreateEmptyFolders">
<Message Text="Custom task to create required empty folders $(_MSDeployDirPath) and $(_MSDeployDirPath_FullPath)" />
<MakeDir Directories="$(PublishUrl)\App_Data" />
</Target>
<Target Name="AddCustomSkipRules" DependsOnTargets="CreateEmptyFolders">
<Message Text="Custom task running to skip folders created on a previous deployment. $(_MSDeployDirPath) and $(_MSDeployDirPath_FullPath)" Importance="High"/>
</Target>
<Target Name="CustomCollectFiles">
<Message Text="Please, please, please let this work $(_MSDeployDirPath) and $(_MSDeployDirPath_FullPath)" Importance="High" />
</Target>
<Target Name="CustomAction" AfterTargets="CopyAllFilesToSingleFolderForPackage">
<Message Text="Fingers crossed since this might be better $(_MSDeployDirPath) and $(_MSDeployDirPath_FullPath)" Importance="High" />
<MakeDir Directories="$(PublishUrl)\App_Data" />
</Target>
<Target Name="AfterPublish" AfterTargets="MSDeployPublish" >
<Message Importance="High" Text="Project Published, Forrest" ></Message>
</Target>
<ItemGroup>
<MsDeploySourceManifest Include="setAcl">
<Path>$(PublishUrl)\App_Data</Path>
<setAclUser>DefaultAppPool</setAclUser>
<setAclAccess>Read</setAclAccess>
<setAclResourceType>Directory</setAclResourceType>
<AdditionalProviderSettings>setAclUser;setAclResourceType;setAclAccess</AdditionalProviderSettings>
</MsDeploySourceManifest>
</ItemGroup>
</Project>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment