Cake
·

Create a Web Deployment Package with Cake Build

This is simple tip to help you create Web Deployment Packages with Cake.

If you have a ASP.NET project and you want to create a Web Deployment package using Cake, you just need to use the MSBUILD Command with the right arguments.

Feel free to copy the following command and paste it in a Task from your Cake file.

MSBuild("PROJECT_NAME.csproj", settings =>
	settings.SetConfiguration(configuration)
	.UseToolVersion(MSBuildToolVersion.VS2015)
	.WithTarget("Package")
	.WithProperty("VisualStudioVersion", new string[]{"14.0"})
	.WithProperty("PackageLocation", new string[]{ packageDir.ToString()  })
	.WithProperty("PackageTempRootDir", new string[]{"root"})
	);

Here an example of a complete script (build.cake).

var target = Argument("target", "Default");
var configuration = Argument("configuration", "Release");
var packageDir = MakeAbsolute(Directory("./package"));

Information("BUILD DIR:" + packageDir);

Task("Default")
.Does(() =>
{
	MSBuild("PROJECT_NAME.csproj", settings =>
		settings.SetConfiguration(configuration)
		.UseToolVersion(MSBuildToolVersion.VS2015)
		.WithTarget("Package")
		.WithProperty("VisualStudioVersion", new string[]{"14.0"})
		.WithProperty("PackageLocation", new string[]{ packageDir.ToString()  })
		.WithProperty("PackageTempRootDir", new string[]{"root"})
		);
});

RunTarget(target);

Hope this helps.

Developer Insights

What I'm building, learning, and discovering each week.

Subscribe to newsletter

By signing up, you'll get my free weekly newsletter plus occasional updates about my courses. You can unsubscribe anytime.