forked from TestStack/TestStack.BDDfy
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathPackages.build
76 lines (64 loc) · 3.5 KB
/
Packages.build
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?xml version="1.0" encoding="utf-8" ?>
<Project DefaultTargets="Release" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="Resource\Build\MSBuild.Community.Tasks.targets" />
<PropertyGroup>
<Version Condition="$(Version)==''">0.0.0.0</Version>
<BuildPath>$(MSBuildProjectDirectory)\Build</BuildPath>
<ArtifactPath>$(BuildPath)\Library</ArtifactPath>
<PackageWorkingPath>$(MSBuildProjectDirectory)\PackageBuild</PackageWorkingPath>
<NuspecRootPath>$(MSBuildProjectDirectory)</NuspecRootPath>
<ArtifactTemp>$(PackageWorkingPath)\Library</ArtifactTemp>
<PackageDefinitionPath>$(PackageWorkingPath)\PackageTemp</PackageDefinitionPath>
<NuGetExe>"$(MSBuildProjectDirectory)\.nuget\NuGet.exe"</NuGetExe>
<BDDfyBuild>$(MSBuildProjectDirectory)\TestStack.BDDfy.build</BDDfyBuild>
<PackageOutput>$(PackageWorkingPath)\Packages</PackageOutput>
<ZipPath>$(BuildPath)\_Package</ZipPath>
</PropertyGroup>
<PropertyGroup>
<BDDfySamplesPath>$(MSBuildProjectDirectory)\Samples\TestStack.BDDfy.Samples</BDDfySamplesPath>
<BDDfySpecPath>$(PackageDefinitionPath)\TestStack.BDDfy</BDDfySpecPath>
<BDDfySpec>$(BDDfySpecPath)\TestStack.BDDfy.nuspec</BDDfySpec>
<SamplesSpecPath>$(PackageDefinitionPath)\TestStack.BDDfy.Samples</SamplesSpecPath>
<SamplesSpec>$(SamplesSpecPath)\TestStack.BDDfy.Samples.nuspec</SamplesSpec>
</PropertyGroup>
<Target Name="Clean">
<RemoveDir Directories="$(PackageWorkingPath)" />
</Target>
<Target Name="Prepare">
<MakeDir Directories="$(PackageWorkingPath)" ContinueOnError="true" />
</Target>
<Target Name="Net40Build">
<MSBuild Projects="$(BDDfyBuild)" Properties="Version=$(Version);BuildFramework=" Targets="Release" />
<MakeDir Directories="$(ArtifactTemp)\NET40"/>
<CreateItem Include="$(ArtifactPath)\*.*">
<Output ItemName="Net40Artifact" TaskParameter="Include"/>
</CreateItem>
<Copy SourceFiles="@(Net40Artifact)" DestinationFolder="$(ArtifactTemp)\NET40" />
<Copy SourceFiles="$(ZipPath)\TestStack.BDDfy-$(Version)-NET40.zip" DestinationFolder="$(PackageOutput)" />
</Target>
<Target Name="Build">
<CallTarget Targets="Net40Build" />
</Target>
<Target Name="CopyBDDfyLibs">
<Copy SourceFiles="$(ArtifactTemp)\NET40\TestStack.BDDfy.dll;$(ArtifactTemp)\NET40\TestStack.BDDfy.dll" DestinationFolder="$(BDDfySpecPath)\lib\NET40" />
</Target>
<Target Name="CopyBDDfySampleFiles">
<CreateItem Include="$(BDDfySamplesPath)\**\*.cs">
<Output ItemName="SampleFile" TaskParameter="Include"/>
</CreateItem>
<Copy SourceFiles="@(SampleFile)" DestinationFiles="@(SampleFile->'$(SamplesSpecPath)\content\TestStack.BDDfy.Samples\%(RecursiveDir)%(Filename)%(Extension)')" />
</Target>
<Target Name="CopyNuspecFiles">
<Copy SourceFiles="$(NuspecRootPath)\TestStack.BDDfy.nuspec" DestinationFolder="$(BDDfySpecPath)" />
<Copy SourceFiles="$(NuspecRootPath)\TestStack.BDDfy.Samples.nuspec" DestinationFolder="$(SamplesSpecPath)" />
</Target>
<Target Name="Pack">
<CreateItem Include="$(BDDfySpec);$(SamplesSpec);">
<Output ItemName="NuGetSpec" TaskParameter="Include"/>
</CreateItem>
<CallTarget Targets="CopyBDDfyLibs;CopyBDDfySampleFiles;CopyNuspecFiles" />
<MakeDir Directories="$(PackageOutput)" ContinueOnError="true"/>
<Exec Command='$(NuGetExe) pack "%(NuGetSpec.FullPath)" -version $(Version)' WorkingDirectory="$(PackageOutput)"/>
</Target>
<Target Name="Release" DependsOnTargets="Clean;Prepare;Build;Pack"/>
</Project>