-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.cake
63 lines (47 loc) · 1.92 KB
/
build.cake
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
var target = Argument("target", "Lib:Test");
var configuration = Argument("configuration", "Release");
// DEFINITIONS
// ////////////////////////////////////////////////////////////////////
var sourceDir = Directory("./sources");
var testProject = sourceDir + File("Capsule.Test/Capsule.Test.csproj");
var coreLibProject = sourceDir + File("Capsule.Core/Capsule.Core.csproj");
var testSupportProject = sourceDir + File("Capsule.Testing/Capsule.Testing.csproj");
var generatorProject = sourceDir + File("Capsule.Generator/Capsule.Generator.csproj");
var releaseDir = Directory("./release/lib");
// TASKS
//////////////////////////////////////////////////////////////////////
Task("Lib:Test")
.Does(() =>
{
DotNetTest(testProject, new DotNetTestSettings {
Configuration = configuration,
Filter = "FullyQualifiedName~AutomatedTests",
Loggers = new [] { "junit;LogFilePath=test-results.xml;MethodFormat=Class;FailureBodyFormat=Verbose" }
});
});
Task("Lib:Build")
.IsDependentOn("Lib:Test")
.Does(() =>
{
var version = Argument<string>("lib-version");
CleanDirectory(releaseDir);
var libSettings = new DotNetPackSettings {
Configuration = configuration,
OutputDirectory = releaseDir,
IncludeSource = true,
IncludeSymbols = true,
SymbolPackageFormat = "snupkg",
MSBuildSettings = new DotNetMSBuildSettings().SetVersion(version) };
DotNetPack(coreLibProject, libSettings);
DotNetPack(testSupportProject, libSettings);
DotNetPack(generatorProject, new DotNetPackSettings {
Configuration = configuration,
OutputDirectory = releaseDir,
IncludeSource = false,
IncludeSymbols = false,
SymbolPackageFormat = null,
MSBuildSettings = new DotNetMSBuildSettings().SetVersion(version) });
});
// EXECUTION
//////////////////////////////////////////////////////////////////////
RunTarget(target);