|
#load ".fake/build.fsx/intellisense.fsx" |
|
open Fake.Core |
|
open Fake.DotNet |
|
open Fake.IO |
|
open Fake.IO.FileSystemOperators |
|
open Fake.IO.Globbing.Operators |
|
open Fake.Core.TargetOperators |
|
|
|
Target.create "Contracts" (fun _ -> |
|
ignore <| DotNet.exec id "new" "classlib --name Contracts --no-restore" |
|
ignore <| DotNet.exec id "add" "Contracts/Contracts.csproj package Microsoft.Orleans.Core --no-restore" |
|
ignore <| DotNet.exec id "add" "Contracts/Contracts.csproj package Microsoft.Orleans.Core.Abstractions --no-restore" |
|
ignore <| DotNet.exec id "add" "Contracts/Contracts.csproj package Microsoft.Orleans.OrleansCodeGenerator.Build --no-restore" |
|
) |
|
|
|
Target.create "Grains" (fun _ -> |
|
ignore <| DotNet.exec id "new" "classlib --name Grains --no-restore" |
|
ignore <| DotNet.exec id "add" "Grains/Grains.csproj package Microsoft.Orleans.Core.Abstractions --no-restore" |
|
ignore <| DotNet.exec id "add" "Grains/Grains.csproj package Microsoft.Orleans.OrleansCodeGenerator.Build --no-restore" |
|
ignore <| DotNet.exec id "add" "Grains/Grains.csproj reference Contracts/Contracts.csproj" |
|
) |
|
|
|
Target.create "Silo" (fun _ -> |
|
ignore <| DotNet.exec id "new" "console --name Silo --no-restore" |
|
ignore <| DotNet.exec id "add" "Silo/Silo.csproj package Microsoft.Orleans.Server --no-restore" |
|
ignore <| DotNet.exec id "add" "Silo/Silo.csproj package Microsoft.Extensions.Logging.Console --no-restore" |
|
ignore <| DotNet.exec id "add" "Silo/Silo.csproj package OrleansDashboard --no-restore" |
|
ignore <| DotNet.exec id "add" "Silo/Silo.csproj reference Contracts/Contracts.csproj" |
|
ignore <| DotNet.exec id "add" "Silo/Silo.csproj reference Grains/Grains.csproj" |
|
) |
|
|
|
Target.create "Client" (fun _ -> |
|
ignore <| DotNet.exec id "new" "webapi --name Client --no-restore" |
|
ignore <| DotNet.exec id "add" "Client/Client.csproj package Microsoft.Orleans.Client --no-restore" |
|
ignore <| DotNet.exec id "add" "Client/Client.csproj package Microsoft.Extensions.Logging.Console --no-restore" |
|
ignore <| DotNet.exec id "add" "Client/Client.csproj reference Contracts/Contracts.csproj" |
|
) |
|
|
|
Target.create "Solution" (fun _ -> |
|
ignore <| DotNet.exec id "new" "sln --name Orleans2" |
|
ignore <| DotNet.exec id "sln" "Orleans2.sln add Contracts/Contracts.csproj" |
|
ignore <| DotNet.exec id "sln" "Orleans2.sln add Grains/Grains.csproj" |
|
ignore <| DotNet.exec id "sln" "Orleans2.sln add Silo/Silo.csproj" |
|
ignore <| DotNet.exec id "sln" "Orleans2.sln add Client/Client.csproj" |
|
) |
|
|
|
Target.create "SetupSilo" ignore |
|
Target.create "SetupClient" ignore |
|
|
|
"Contracts" |
|
==> "Grains" |
|
==> "Silo" |
|
==> "SetupSilo" |
|
|
|
"Contracts" |
|
==> "Grains" |
|
==> "Client" |
|
==> "SetupClient" |
|
|
|
"SetupSilo" ==> "Solution" |
|
"SetupClient" ==> "Solution" |
|
|
|
Target.create "Setup" ignore |
|
"Solution" ==> "Setup" |
|
|
|
Target.create "Clean" (fun _ -> |
|
!! "src/**/bin" |
|
++ "src/**/obj" |
|
|> Shell.cleanDirs |
|
) |
|
|
|
Target.create "Build" (fun _ -> |
|
DotNet.build id "" |
|
) |
|
|
|
Target.create "All" ignore |
|
|
|
"Clean" |
|
==> "Build" |
|
==> "All" |
|
|
|
Target.runOrDefault "All" |