1- // include Fake lib
21#r @" packages\FAKE.3.14.0\tools\FakeLib.dll"
32open Fake
3+ open Fake.AssemblyInfoFile
44
55// Paths
66let httpClientDir = " ./HttpClient/"
@@ -15,14 +15,10 @@ let nuGetProjectDll = nuGetDir + "lib/net40/HttpClient.dll"
1515let nUnitToolPath = " Tools/NUnit-2.6.3/bin"
1616
1717// Helper Functions
18- let outputFolder baseDir =
19- baseDir + " bin/Debug/"
20-
21- let binFolder baseDir =
22- baseDir + " bin/"
23-
24- let projectFolder baseDir =
25- baseDir + " *.fsproj"
18+ let outputFolder baseDir = baseDir + " bin/Debug/"
19+ let binFolder baseDir = baseDir + " bin/"
20+ let projectFolder baseDir = baseDir + " *.fsproj"
21+ let assemblyInfo baseDir = baseDir + " AssemblyInfo.fs"
2622
2723let BuildTarget targetName baseDirectory =
2824 Target targetName ( fun _ ->
@@ -41,6 +37,17 @@ Target "Clean" (fun _ ->
4137 ]
4238)
4339
40+ Target " Update Assembly Version" ( fun _ ->
41+ CreateFSharpAssemblyInfo ( httpClientDir |> assemblyInfo) [
42+ Attribute.Title " HttpClient"
43+ Attribute.Description " An HTTP client for F#"
44+ Attribute.Guid " 4ead3524-8220-4f0b-b77d-edd088597fcf"
45+ Attribute.Product " Http.fs"
46+ Attribute.Version ( getBuildParam " nuget-version" )
47+ Attribute.FileVersion ( getBuildParam " nuget-version" )
48+ ]
49+ )
50+
4451BuildTarget " BuildClient" httpClientDir
4552
4653BuildTarget " BuildUnitTests" unitTestsDir
@@ -84,7 +91,6 @@ Target "Copy Release Files" (fun _ ->
8491 ]
8592)
8693
87- // BEFORE doing this, set the correct version in AssemblyInfo!
8894// note to self - call like this:
8995// packages\FAKE.3.14.0\tools\fake.exe build.fsx nuget-version=1.1.0 nuget-api-key=(my api key) nuget-release-notes="latest release"
9096Target " Upload to NuGet" ( fun _ ->
@@ -117,6 +123,7 @@ Target "All" (fun _ ->
117123
118124// Dependencies
119125" Clean"
126+ =?> ( " Update Assembly Version" , hasBuildParam " nuget-version" )
120127 ==> " BuildClient"
121128 ==> " BuildUnitTests" <=> " BuildIntegrationTests" <=> " BuildSampleApplication"
122129 ==> " Run Unit Tests" <=> " Run Integration Tests"
0 commit comments