Skip to content

Instantly share code, notes, and snippets.

@jlouros
Last active July 14, 2019 06:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jlouros/def8b01afa58c623077220bf0f6881ac to your computer and use it in GitHub Desktop.
Save jlouros/def8b01afa58c623077220bf0f6881ac to your computer and use it in GitHub Desktop.
Cake build sample file
// arguments
string target = Argument("target", "Default");
string configuration = Argument("configuration", "Release");
// define directories.
ConvertableFilePath mainSln = File("./src/Example.sln");
ConvertableDirectoryPath buildDir = Directory("./src/Example/bin") + Directory(configuration);
// tasks
Task("Clean")
.Does(() =>
{
CleanDirectory(buildDir);
});
Task("Restore-NuGet-Packages")
.IsDependentOn("Clean")
.Does(() =>
{
NuGetRestore(mainSln);
});
Task("Build")
.IsDependentOn("Restore-NuGet-Packages")
.Does(() =>
{
if(IsRunningOnWindows())
{
// Use MSBuild
MSBuild(mainSln, settings => settings.SetConfiguration(configuration));
}
else
{
// Use XBuild
XBuild(mainSln, settings => settings.SetConfiguration(configuration));
}
});
// task targets
Task("Default")
.IsDependentOn("Build");
// execution
RunTarget(target);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment