Simple continuous integration server written with NodeJS and CoffeeScript
HTML CoffeeScript JavaScript CSS
Latest commit 5329450 Apr 14, 2015 @ryankee Merge pull request #46 from ChrisPiechowicz/master
fixed: path.exists is undefined - now using fs.exists


Concrete is a minimalistic Continuous Integration server.


Note: I don't have a lot of time to maintain, so I'm looking for folks who'd like to contribute. Post an issue if you'd like to toss some time towards new features, issues, or pull requests.


Note: This project requires a MongoDB instance

npm install -g concrete
git clone git://
cd yourrepo
git config --add concrete.runner "coffee test/"
concrete .
open http://localhost:4567


Usage: concrete [-hpv] path_to_git_repo

  -h, --host     The hostname or ip of the host to bind to  [default: ""]
  -p, --port     The port to listen on                      [default: 4567]
  --help         Show this message
  -v, --version  Show version

Setting the test runner

git config --add concrete.runner "coffee test/"

Setting the branch

git config --add concrete.branch deploy

Adding HTTP Basic authentication

git config --add concrete.user username
git config --add concrete.pass password

Post build

After building Concrete will run .git/hooks/build-failed or .git/hooks/build-worked depending on test outcome. Like all git hooks, they're just shell scripts so put whatever you want in there.

Concrete is heavily inspired by CI Joe