123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- <!--
- ***********************************************************************************************
- Microsoft.Web.Publishing.Deploy.FPSE.targets
- WARNING: DO NOT MODIFY this file unless you are knowledgeable about MSBuild and have
- created a backup copy. Incorrect changes to this file will make it
- impossible to load or build your web deploy projects from the command-line or the IDE.
- This file defines the steps in the standard package/publish process for Deploy
- Currently
- Copyright (C) Microsoft Corporation. All rights reserved.
- ***********************************************************************************************
- -->
- <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <!--Import task from our dll-->
- <UsingTask TaskName="GetPublishingLocalizedString" AssemblyFile="..\Microsoft.Web.Publishing.Tasks.dll"/>
- <UsingTask TaskName="CopyPipelineFiles" AssemblyFile="..\Microsoft.Web.Publishing.Tasks.dll"/>
- <!--Append WebFTPPublish to the supported list.-->
- <PropertyGroup>
- <_WPPWebPublishMethodSupports>$(_WPPWebPublishMethodSupports);WebFileSystemPublish</_WPPWebPublishMethodSupports>
- </PropertyGroup>
- <!--********************************************************************-->
- <!--Target WebFileSystemPublish -->
- <!--********************************************************************-->
- <PropertyGroup>
- <WebFileSystemPublishDependsOn>
- $(OnBeforeWebFileSystemPublish);
- $(WebFileSystemPublishDependsOn);
- </WebFileSystemPublishDependsOn>
- <WebFileSystemPublishDependsOn>
- $(WebFileSystemPublishDependsOn);
- PipelinePreDeployCopyAllFilesToOneFolder;
- </WebFileSystemPublishDependsOn>
- </PropertyGroup>
- <Target Name="WebFileSystemPublish"
- DependsOnTargets="$(WebFileSystemPublishDependsOn)"
- Condition="'$(WebFileSystemPublish)' != 'False'">
- <PropertyGroup>
- <_DoWebFileSystemPublishDeleteExtraFiles>False</_DoWebFileSystemPublishDeleteExtraFiles>
- <_DoWebFileSystemPublishDeleteExtraFiles Condition= "'$(DeleteExistingFiles)' == 'True'" >True</_DoWebFileSystemPublishDeleteExtraFiles>
- <_HttpHeader>http://</_HttpHeader>
- <_DoWebFileSystemPublish>False</_DoWebFileSystemPublish>
- <_DoWebFileSystemPublish Condition="'$(PublishUrl)'!='' And '$(PublishUrl.StartsWith($(_HttpHeader), StringComparison.OrdinalIgnoreCase))' == 'False' And '$([System.IO.Path]::GetFullPath($(PublishUrl)))' != ''">True</_DoWebFileSystemPublish>
- </PropertyGroup>
- <!--This is not yet implemented through the command line for now error it out-->
- <GetPublishingLocalizedString
- Condition="!$(_DoWebFileSystemPublish)"
- ID="PublishLocalizedString_WebPublishMethodIsNotSupportedInCmdLine"
- ArgumentCount="1"
- Arguments="$(WebPublishMethod)"
- LogType="Error" />
- <Error Text ="Target WebFileSystemPublish Failed"
- Condition="!$(_DoWebFileSystemPublish)"
- />
- <ItemGroup Condition="$(_DoWebFileSystemPublish)">
- <FilesForFileCopy Remove="$(FilesForFileCopy)" />
- </ItemGroup>
- <CollectFilesinFolder RootPath="$(WPPAllFilesInSingleFolder)"
- Condition="$(_DoWebFileSystemPublish)" >
- <Output TaskParameter="Result" ItemName="_AllFilesUnder_WPPAllFilesInSingleFolder" />
- </CollectFilesinFolder>
- <ItemGroup>
- <FilesForFileCopy Include="@(_AllFilesUnder_WPPAllFilesInSingleFolder)" >
- <DestinationRelativePath>%(_AllFilesUnder_WPPAllFilesInSingleFolder.Identity)</DestinationRelativePath>
- <FromTarget>WebFileSystemPublish</FromTarget>
- <Category>AllFilesInFolder</Category>
- </FilesForFileCopy>
- </ItemGroup>
- <!-- In the case of the incremental Packaging/Publish, we need to find out the extra file and delee them-->
- <ItemGroup Condition="'$(DeleteExistingFiles)' == 'True'">
- <_AllExtraFilesUnderPublishUrl Include="$(PublishUrl)\**" />
- <_AllExtraFilesUnderPublishUrl
- Remove="@(FilesForFileCopy->'$(PublishUrl)\%(DestinationRelativePath)')" />
- </ItemGroup>
- <!--Remove all extra files in the temp folder that's not in the @(FilesForPackagingFromProject-->
- <Delete Files="@(_AllExtraFilesUnderPublishUrl)" />
- <!-- Make sure the folder exist -->
- <MakeDir Directories="$(PublishUrl)" Condition="$(_DoWebFileSystemPublish) And !Exists('$(PublishUrl)')"/>
- <!--Force Copy Of all file to the WPPAllFilesInSingleFolder if needed-->
- <CopyPipelineFiles Condition="$(_DoWebFileSystemPublish)"
- PipelineItems="@(FilesForFileCopy)"
- SourceDirectory="$(WPPAllFilesInSingleFolder)"
- TargetDirectory="$(PublishUrl)"
- SkipMetadataExcludeTrueItems="False"
- UpdateItemSpec="True"
- DeleteItemsMarkAsExcludeTrue ="False">
- <Output TaskParameter="ResultPipelineItems" ItemName="_FilesForFileCopyAfterFileSystemPublish"/>
- </CopyPipelineFiles>
- <CallTarget Targets="$(OnAfterWebFileSystemPublish)" RunEachTargetSeparately="False" />
- </Target>
- <!--ImportAfter Extension-->
- <PropertyGroup>
- <ImportByWildcardAfterMicrosoftWebPublishingDeployFileSystemTargets Condition="'$(ImportByWildcardAfterMicrosoftWebPublishingDeployFileSystemTargets)'==''">true</ImportByWildcardAfterMicrosoftWebPublishingDeployFileSystemTargets>
- </PropertyGroup>
- <Import Project="$(MSBuildThisFileDirectory)\$(MSBuildThisFileName)\ImportAfter\*" Condition="'$(ImportByWildcardAfterMicrosoftWebPublishingDeployFileSystemTargets)' == 'true' and exists('$(MSBuildThisFileDirectory)\$(MSBuildThisFileName)\ImportAfter')"/>
- </Project>
|