• This repository has been archived on 01/Mar/2021
  • Stars
    star
    151
  • Rank 238,048 (Top 5 %)
  • Language
    C#
  • License
    MIT License
  • Created over 10 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

The C# task runner

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.

More Repositories

1

bullseye

🎯 A .NET library for running a target dependency graph.
C#
810
star
2

minver

🏷 Minimalistic versioning using Git tags.
C#
790
star
3

simple-exec

πŸƒ A .NET library that runs external commands.
C#
638
star
4

xbehave.net

βœ– An xUnit.net extension for describing each step in a test with natural language.
C#
382
star
5

liteguard

πŸ”’ The most simple, unambiguous, and lightweight .NET guard clause library.
C#
258
star
6

scriptcs-nancy

Nancy Script Pack for scriptcs
C#
35
star
7

dude

The portable C# script runner!
C#
20
star
8

simple-targets-csx

βŠ™ A minimalist target runner for C# scripts.
C#
17
star
9

netstandard-deck

A slide deck for "What is .NET Standard?".
JavaScript
7
star
10

bau-msbuild

A Bau plugin for running MSBuild
C#
7
star
11

dotnet-scripting-dialect

Draft proposal for .NET scripting "dialects"
6
star
12

stylecop-msbuild

Adds official StyleCop MSBuild targets to your project for running StyleCop analysis with every build.
5
star
13

blunt

Smoke testing for multi-targetting NuGet packages.
C#
5
star
14

adamralph.github.com

My website
CSS
3
star
15

h5h

An HTML5 highlighter
CSS
3
star
16

code-the-future-now

Code samples for https://sessionize.com/s/adamralph/code_the_future_now/21105
C#
2
star
17

bau-nuget

A Bau plugin for running NuGet commands
C#
2
star
18

cola

The portable LINQPad runner!
C#
2
star
19

domaindrivendesign

A .NET framework for building applications using Domain Driven Design.
C#
2
star
20

racer83

A recreation of one of the masterpieces of my youth
Visual Basic
2
star
21

netstandard-magic

C#
1
star
22

.github

Standard files for my repos
1
star
23

xbehave.github.io

HTML
1
star
24

nancy-deck

Slides for my talk 'Nancy, the super duper happy OSS .NET project'
JavaScript
1
star