-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
paths.cake
64 lines (55 loc) · 1.4 KB
/
paths.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
64
public class BuildPaths
{
public BuildDirectories Directories { get; private set; }
public static BuildPaths GetPaths(
ICakeContext context
)
{
if (context == null)
{
throw new ArgumentNullException("context");
}
var rootDir = context.MakeAbsolute(context.Directory("./"));
var solutionDir = rootDir;
var artifactsDir = rootDir.Combine("artifacts");
// Directories
var buildDirectories = new BuildDirectories(
artifactsDir,
rootDir,
solutionDir);
return new BuildPaths
{
Directories = buildDirectories
};
}
}
public class BuildFiles
{
public FilePath VersionProperties { get; private set; }
public BuildFiles(
FilePath versionProperties
)
{
VersionProperties = versionProperties;
}
}
public class BuildDirectories
{
public DirectoryPath Artifacts { get; }
public DirectoryPath Root { get; }
public DirectoryPath Solution { get; }
public ICollection<DirectoryPath> ToClean { get; }
public BuildDirectories(
DirectoryPath artifactsDir,
DirectoryPath rootDir,
DirectoryPath solutionDir
)
{
Artifacts = artifactsDir;
Root = rootDir;
Solution = solutionDir;
ToClean = new[] {
Artifacts
};
}
}