Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
The C# task runner
C# JavaScript Shell Other
branch: dev

This branch is 5 commits behind bau-build:dev

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
assets
comparison
src
.gitattributes
.gitignore
.travis.yml
CONTRIBUTING.md
README.md
bau.bat
bau.sh
baufile.csx
copy.debug.bat
copy.release.bat
edit-stylecop-settings.cmd
how_to_build.md
license.txt
mono.csx
scriptcs_packages.config

README.md

Bau

The C# task runner.

Build Status Build Status Gitter chat NuGet Status

Bau is a community driven, cross platform, pluggable task runner built on the scriptcs + NuGet ecosystem.

The core Bau library is a script pack providing task definition, dependencies between tasks and task running.

Extensions are provided by plugins, taking advantage of Bau's modular, pluggable architecture.

Task definition
// baufile.csx
Require<Bau>().Do(() => Console.WriteLine("Hello world!")).Run();
Dependencies between tasks
// baufile.csx
string message;

Require<Bau>()
    .DependsOn("world")
    .Do(() => Console.WriteLine(message))
.Task("world")
    .DependsOn("hello")
    .Do(() => message += " world!")
.Task("hello")
    .Do(() => message = "Hello")
.Run();

Tasks can be defined in any order, can depend on any number of other tasks DependsOn("foo", "bar"), can be referenced multiple times with multiple calls to Task("baz") and can have multiple actions assigned to them with multiple calls to Do().

Running tasks
scriptcs baufile.csx

Powered by scriptcs and Roslyn.

Sponsors

Our build server is kindly provided by CodeBetter and JetBrains.

YouTrack and TeamCity

Where can I get it

Bau is available as a NuGet package. For update notifications, follow @baubuild.

To build manually, clone or fork this repository and see 'How to build'.

Can I help to improve it and/or fix bugs?

Absolutely! Please feel free to raise issues, fork the source code, send pull requests, etc.

No pull request is too small. Even whitespace fixes are appreciated. Before you contribute anything make sure you read CONTRIBUTING.md.

Come and chat to fellow users and developers at the Bau JabbR chat room or Gitter chat.

What do the version numbers mean?

Bau uses Semantic Versioning. The current release is 0.x which means 'initial development'. Version 1.0 will follow the release of scriptcs version 1.0.


Bau logo designed by Vanja Pakaski.

Something went wrong with that request. Please try again.