Skip to content

Commit

Permalink
updates to place all transforms in the generated package. Related to #51
Browse files Browse the repository at this point in the history
  • Loading branch information
sayedihashimi committed Sep 2, 2013
1 parent e654f5f commit 65d706b
Show file tree
Hide file tree
Showing 4 changed files with 97 additions and 4 deletions.
4 changes: 3 additions & 1 deletion pkg-web.sublime-project
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
[
{
"follow_symlinks": true,
"path": "src"
"path": "src",
"folder_exclude_patterns" : ["OutputRoot"],
"file_exclude_patterns": ["msbuild*log"]
}
]
}
95 changes: 93 additions & 2 deletions src/Nuget/Sedodream.Package.targets
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<!-- Don't make this _Deploy becuase it conflicts with default IIS app path name -->
<_DeployFolderName>_Deploy_</_DeployFolderName>
<_DeployFolderName Condition=" '$(_DeployFolderName)'=='' ">_Deploy_</_DeployFolderName>
<!-- Folder name under _Deploy where transforms will be stored -->
<pw-TransformFolderName Condition=" '$(pw-TransformFolderName)'=='' ">transforms</pw-TransformFolderName>
<SedodreamInstallFolder Condition=" '$(SedodreamInstallFolder)'=='' ">$(MSBuildProjectDirectory)\_Package\</SedodreamInstallFolder>
<!--<SedodreamPublishProjPath Condition=" '$(SedodreamPublishProjPath)'=='' ">$(SedodreamInstallFolder)pw.TransformConfig.proj</SedodreamPublishProjPath>-->
<SlowCheetahXdtAssemblyPath Condition=" '$(SlowCheetahXdtAssemblyPath)'=='' ">$(MSBuildThisFileDirectory)Microsoft.Web.XmlTransform.dll</SlowCheetahXdtAssemblyPath>
Expand Down Expand Up @@ -32,9 +34,14 @@
IncludWebConfigTransformsForPublishing;
$(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>

<IncludWebConfigTransformsForPublishingDependsOn>
$(IncludWebConfigTransformsForPublishingDependsOn);
pw-IncludeTransformFilesIntoPackage;
</IncludWebConfigTransformsForPublishingDependsOn>
</PropertyGroup>

<Target Name="IncludWebConfigTransformsForPublishing" AfterTargets="CopyPipelineFiles" BeforeTargets="CopyAllFilesToSingleFolderForMsdeploy">
<Target Name="IncludWebConfigTransformsForPublishing" AfterTargets="CopyPipelineFiles" BeforeTargets="CopyAllFilesToSingleFolderForMsdeploy" DependsOnTargets="$(IncludWebConfigTransformsForPublishingDependsOn)">
<ItemGroup>
<_WCTransforms Include="$(MSBuildProjectDirectory)\web.config;$(MSBuildProjectDirectory)\web.*.config"/>

Expand Down Expand Up @@ -93,6 +100,90 @@
</Target>


<!--
This is the section that will handle finding transform files as well as files to be transformed
and include them into the generated package
-->
<ItemDefinitionGroup>
<!-- Set the default value to false here -->
<None>
<TransformOnBuild>false</TransformOnBuild>
<IsTransformFile>false</IsTransformFile>
<Link></Link>
</None>
<Content>
<TransformOnBuild>false</TransformOnBuild>
<IsTransformFile>false</IsTransformFile>
<Link></Link>
</Content>
<Resource>
<TransformOnBuild>false</TransformOnBuild>
<IsTransformFile>false</IsTransformFile>
<Link></Link>
</Resource>
<EmbeddedResource>
<TransformOnBuild>false</TransformOnBuild>
<IsTransformFile>false</IsTransformFile>
<Link></Link>
</EmbeddedResource>

<_FilesToTransform>
<IsAppConfig>false</IsAppConfig>
</_FilesToTransform>
</ItemDefinitionGroup>

<PropertyGroup>
<pw-IncludeTransformFilesIntoPackageDependsOn>
$(pw-IncludeTransformFilesIntoPackage);
pw-DiscoverTransforms;
pw-CoreIncludeTransformFilesIntoPackage;
</pw-IncludeTransformFilesIntoPackageDependsOn>
</PropertyGroup>
<Target Name="pw-IncludeTransformFilesIntoPackage" DependsOnTargets="$(pw-IncludeTransformFilesIntoPackageDependsOn)" />
<Target Name="pw-DiscoverTransforms">
<!-- Here we want to gather all files which are being transformed as well as all transforms -->
<ItemGroup>
<pw-TransformFiles Include="@(None);@(Content);@(Resource);@(EmbeddedResource)"
Condition=" '%(IsTransformFile)' == 'true' ">
<Link>%(Link)</Link>
<OriginalItemSpec>%(Identity)</OriginalItemSpec>
</pw-TransformFiles>

<pw-FilesToTransform Include="@(None);@(Content);@(Resource);@(EmbeddedResource)"
Condition=" '%(TransformOnBuild)' == 'true' ">
<Link>%(Link)</Link>
<OriginalItemSpec>%(Identity)</OriginalItemSpec>
</pw-FilesToTransform>
</ItemGroup>

<Message Text="pw-TransformFiles: @(pw-TransformFiles)" Importance="low"/>
<Message Text="pw-FilesToTransform: @(pw-FilesToTransform)" Importance="low"/>

</Target>
<PropertyGroup>
<pw-CoreIncludeTransformFilesIntoPackageDependsOn>
$(pw-CoreIncludeTransformFilesIntoPackageDependsOn);
pw-DiscoverTransforms;
</pw-CoreIncludeTransformFilesIntoPackageDependsOn>
</PropertyGroup>
<Target Name="pw-CoreIncludeTransformFilesIntoPackage" DependsOnTargets="$(pw-CoreIncludeTransformFilesIntoPackageDependsOn)">
<Message Text="pw-CoreIncludeTransformFilesIntoPackage Adding transform files to package"/>

<Message Text="FilesForPackagingFromProject: @(FilesForPackagingFromProject)" Importance="High"/>

<ItemGroup>
<FilesForPackagingFromProject Include="@(pw-TransformFiles)">
<DestinationRelativePath>$(_DeployFolderName)\$(pw-TransformFolderName)\%(RelativeDir)%(Filename)%(Extension)</DestinationRelativePath>
</FilesForPackagingFromProject>

<FilesForPackagingFromProject Include="@(pw-FilesToTransform)">
<DestinationRelativePath>$(_DeployFolderName)\$(pw-TransformFolderName)\%(RelativeDir)%(Filename)%(Extension)</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
<Message Text="*********************************************************" Importance="High"/>
<Message Text="FilesForPackagingFromProject: @(FilesForPackagingFromProject)" Importance="High"/>
</Target>

<!--
Replace the long file path in the package with "website".
You can disable this by setting the property $(EnableAddReplaceToUpdatePacakgePath) to false.
Expand Down
Binary file modified src/Publish-Interactive.ps1
Binary file not shown.
2 changes: 1 addition & 1 deletion src/build.cmd
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.proj /p:Configuration=Release /p:VisualStudioVersion=11.0 /flp1:v=d;logfile=msbuild.d.log /flp2:v=diag;logfile=msbuild.diag.log
%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe "%~dp0build.proj" /p:Configuration=Release /p:VisualStudioVersion=11.0 /flp1:v=d;logfile=msbuild.d.log /flp2:v=diag;logfile=msbuild.diag.log

0 comments on commit 65d706b

Please sign in to comment.