Cake (C# Make) is a cross platform build automation system.
C# Other
Permalink
Failed to load latest commit information.
.github (GH-850) Added Issue and PR Templates Apr 29, 2016
build Added signing of artifacts. Jan 11, 2017
nuspec Added missing files to Cake.CoreCLR.nuspec. Sep 18, 2016
src Store & Load DTD locally Jan 12, 2017
tests/integration Fixed problems with spaces in #l and #r directives Jan 12, 2017
.editorconfig (maint) Added .cake file to EditorConfig Dec 11, 2015
.gitattributes (GH-669) Added .gitattributes file Jan 11, 2017
.gitignore Added support for custom #load schemes. Dec 5, 2016
.gitlab-ci.yml Added GitLabs CI Jan 14, 2017
.travis.yml Ports Cake to .NET Core. Aug 12, 2016
CODEOFCONDUCT.md Update CODEOFCONDUCT.md Sep 2, 2016
CONTRIBUTING.md Updated CONTRIBUTING.md Mar 10, 2016
GitReleaseManager.yaml (GH-1045) Change label order for GitReleaseManager Jul 14, 2016
GitVersion.yml (build) Adding sha to ignore for GitVersion Sep 25, 2016
LICENSE Cake joins the .NET Foundation Jun 9, 2016
README.md Adjusted to new Jenkins server Jan 15, 2017
ReleaseNotes.md (build) Updated version and release notes. Nov 9, 2016
appveyor.yml Ports Cake to .NET Core. Aug 12, 2016
bitbucket-pipelines.yml Ports Cake to .NET Core. Aug 12, 2016
build.cake Added signing of artifacts. Jan 11, 2017
build.ps1 (build) Updated Cake tool to version 0.17.0 Nov 9, 2016
build.sh Added execute bit to build.sh Jan 11, 2017
global.json Ports Cake to .NET Core. Aug 12, 2016
signclient.filter Added signing of artifacts. Jan 11, 2017
signclient.json Added signing of artifacts. Jan 11, 2017

README.md

Cake

NuGet MyGet Chocolatey homebrew

Source Browser

Cake (C# Make) is a build automation system with a C# DSL to do things like compiling code, copy files/folders, running unit tests, compress files and build NuGet packages.

Continuous integration

Build server Platform Build status Integration tests
AppVeyor Windows AppVeyor branch AppVeyor branch
Travis Linux / OS X Travis build status
TeamCity Windows TeamCity Build Status
Bitrise OS X Bitrise Build Status Build Status
Bitrise Linux Bitrise Build Status Build Status
Jenkins Windows Jenkins
Bamboo Windows Bamboo Build Status Bamboo Build Status
Visual Studio Team Services Windows VSTS Build Status
MyGet Build Services Windows MyGet Build Status  
Bitbucket Pipelines Linux Build Status Build Status
GitLabs Linux build status  

Code Coverage

Coverage Status

Table of Contents

  1. Documentation
  2. Example
  3. Contributing
  4. Get in touch
  5. License

Documentation

You can read the latest documentation at http://cakebuild.net/.

Example

This example downloads the Cake bootstrapper and executes a simple build script. The bootstrapper is used to bootstrap Cake in a simple way and is not in required in any way to execute build scripts. If you prefer to invoke the Cake executable yourself, take a look at the command line usage.

This example is also available on our homepage: http://cakebuild.net/docs/tutorials/setting-up-a-new-project

1. Install the Cake bootstrapper

The bootstrapper is used to download Cake and the tools required by the build script.

Windows
Invoke-WebRequest http://cakebuild.net/download/bootstrapper/windows -OutFile build.ps1
Linux
curl -Lsfo build.sh http://cakebuild.net/download/bootstrapper/linux
OS X
curl -Lsfo build.sh http://cakebuild.net/download/bootstrapper/osx

2. Create a Cake script

Add a cake script called build.cake to the same location as the bootstrapper script that you downloaded.

var target = Argument("target", "Default");

Task("Default")
  .Does(() =>
{
  Information("Hello World!");
});

RunTarget(target);

3. Run it!

Windows
# Execute the bootstrapper script.
./build.ps1
Linux / OS X
# Adjust the permissions for the bootstrapper script.
chmod +x build.sh

# Execute the bootstrapper script.
./build.sh

Contributing

So you’re thinking about contributing to Cake? Great! It’s really appreciated.

Make sure you've read the contribution guidelines before sending that epic pull request. You'll also need to sign the contribution license agreement (CLA) for anything other than a trivial change. NOTE: The .Net Foundation CLA Bot will provide a link to this CLA within the PR that you submit if it is deemed as required.

  • Fork the repository.
  • Create a branch to work in.
  • Make your feature addition or bug fix.
  • Don't forget the unit tests.
  • Send a pull request.

Get in touch

Follow @cakebuildnet

Join the chat at https://gitter.im/cake-build/cake

License

Copyright © Patrik Svensson, Mattias Karlsson, Gary Ewan Park and contributors. Cake is provided as-is under the MIT license. For more information see LICENSE.

Thanks

A big thank you has to go to JetBrains who provide each of the Cake Developers with an Open Source License for ReSharper that helps with the development of Cake.

The Cake Team would also like to say thank you to the guys at MyGet for their support in providing a Professional Subscription which allows us to continue to push all of our pre-release editions of Cake NuGet packages for early consumption by the Cake Community.

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.

Contribution License Agreement

By signing the CLA, the community is free to use your contribution to .NET Foundation projects.

.NET Foundation

This project is supported by the .NET Foundation.