DeveloperDoc

Robot Rock for Developers

Introduction

Getting / Building the Source

  1. Please make sure you have the following tools installed on your Linux environment:
  2. svn checkout http://subversion.assembla.com/svn/cse403 OR download the .tar
  3. cd cse403/
  4. python setup.py install
  5. robotrock

Changes to run from main.py (source)

Building a Release

  1. From the main robotrock directory:

python setup.py sdist

This will create a dist directory, which will contain a tarball of the distribution.

You may wish to upload this latest .tar to the 'Files' tab of our Assembla site. If you do, please update the links to the latest tarball on DeveloperDoc and UserDoc.

Daily Build

We are using Cron for our daily build. The following commands should be placed in a bash script:

\#! /bin/bash

svn checkout http://subversion.assembla.com/svn/cse403 . > /dev/null

cd robotrock; python setup.py sdist

cd test; ./testall

Then a command to run the script can be placed in a crontab file (use crontab -e to edit the crontab file):

0 17 * * * script.sh

This will run the necessary script at 5pm every day (modify the 17 to alter the hour of day it runs)

The cron job is currently set up as described, running on attu.

Running tests

From the root directory:

  1. cd robotrock/test
  2. chmod 755 testall
  3. ./testall

Directory Layout

/root

/robotrock -- READMEs, LICENSE and setup/installation instructions.

/robotrock -- the main source tree for Robot Rock.

/musicians -- Directory containing musicians. See MusicianDirectory Layout for detailed information.

/scripts -- contains the entry point of the robotrock application. This gets installed into an appropriate bin directory

/images -- contains gui images

/soundfonts -- contains soundfont definition files, which provide sounds for various instruments

/test -- contains unit tests.

Bugs

Reasoning:

scoremarker.py

Adding an instrument and making it fully operational:

Adding Instrument