Blind Snake Build System

Current Build

Beta 1.0 is now available for download

About the project

The Blind Snake system is written in Python and is able to build many projects without any customization whatsoever. It eliminates the need for Makefiles or build.xml files.

The system is configureable with persistent variables, extensible (in Python or Ant), and observant: it tries to determine the current state of the build to avoid doing work again.

It currently supports (among others) the following features:

* Self documenting: build help prints all tasks, and build help <task> prints the relevant python docstrings or Ant description on the task.

* Automatic detection of tasks defined in or build.xml files in current projects.

* Windows and Linux support

* Fast deployment loop -- about 2 seconds to create and deploy a 18MB war file

* Project dependency

* Automatic inference of Java CLASSPATH for use during building and for arbitrary user operations

* Compilation of only projects that need compilation

* Creation of jars, with or without dependent libraries included in an unpacked format

* Creation of war files for use with Weblogic

* Optimization of war and jar file creation to be many times faster than the corresponding ant tasks.

* Automatic optimized deployment to a configurable directory, for use with Weblogic

* Automatic project detection type, to prevent deployment of non-web based projects

* Intelligent automatic cleaning that is appropriate for most projects

* Compliation of jython files into Java classes, to support the use of applets written in Jython

* Keystore creation and signing of jars, to create signed applets Logo