Source

saturnalia / README.txt

Overview
========

This README.txt describes common operations with the saturnalia codebase.


The ./test-bin directory has scripts which adjust the PYTHONPATH to use
commands in place.  The ./sbin directory contains scripts which assume
all of the saturnalia libraries are installed on the system.


./test-bin/run-demo.sh
----------------------

Use this to launch a demo cluster on the local machine.  This requires
collectd debian package to be installed.

This will automatically build all necessary files including cython,
html, javascript, the client tools package, etc...

Useful options:

  --force - If any step fails, run-demo.sh will kill all the demo
            processes using killall.sh (see below).  This option, if
            present, is passed to killall.sh.


./test-bin/killall.sh
---------------------

This will kill all python processes which mention the source directory
in their commandline arguments.  For example, this would cleanly kill
a running demo.  It *should not* kill any other python processes (from
outside the source directory), so it should be safe.

Useful options:

  --force - By default, killall.sh will show a list of processes and
            prompt if you want to kill them.  With this option it will
            not prompt and just kill them.


./test-bin/build-client-package
-------------------------------

Use this to send a new user a "starting kit".

This script will create a tarball containing a new user's configuration
directory, new certificates, and a client tools distribution, along with
a helpful README.txt.

For usage run it with "--help".


cd ./client_package ; ./setup.py sdist
--------------------------------------

Use this to send existing users a new code release of the client tools.

This will build a new client tools tarball.  This is only the code for
our client tools, not a user's configuration or certificates.

The new tarball will live in:

  ./client_package/dist/saturnaliaclient-<VERSION>.tar.gz


Missing
=======

If you notice another important process all engineers should do the same
way, please add instructions here.  Some missing procedures:

* building (without running the demo)
* cleaning
* unit tests
* micro-benchmarks
* integration benchmarks
* integration tests
* deployment prep