Version 9, last updated by Rob Chekaluk at Feb 17 19:30 2010 UTC
Installing Assembla Build Agent
Using Installation Script
Elastic Server Installation
Manual Installation
This page describes scripted and manual steps for setting up a build server. These steps are specific to Debian (5.0 Lenny), so for other systems/distributions the package names and commands may be different.
Using Installation Script
This script has been tested on Debian Lenny, and may require manual modification for other distributions. Feel free to send us any modifications you needed for any particular distribution.
- Install all frameworks, packages, gems, eggs, etc. that will be needed to successfully run your application.
- Install the installation script onto an existing server.
- Run the installation script:
setup.sh cgi - Assign a DNS name for this server if you have not already done so.
- Allow port 44200 through your firewall.
Elastic Server Installation
See our Elastic Server bundles listed here.
Manual Installation
Follow these installation steps:
- Install all frameworks, packages, gems, eggs, etc. that will be needed to successfully run your application.
- Install the following packages: sudo, ruby (1.8), rubygems (>= 1.3.2), ruby-dev (ruby1.8-dev), apache2, git, subversion
- Install the following gems: json, capistrano (2.5.5), echoe
- Create deploy user:
useradd -s /bin/bash -m -g www-data deploy; passwd deploy - Get the sources of the webservice and deploy script:
su deploy cd /tmp git clone git://git.assembla.com/server-tools.git cp -rf server-tools/assembla /home/deploy/ mkdir /home/deploy/assembla/tmp rm /home/deploy/assembla/deploy*.rb rm /home/deploy/assembla/config.ru - Adjust permissions and remove temporary files:
chown -R deploy:www-data /home/deploy/assembla rm -rf server-tools - Setup ssh key for deploy user:
cd /home/deploy sudo -u deploy ssh-keygen -q -t dsa cd .ssh cat id_dsa.pub >> authorized_keys - Add new apache config
/etc/apache2/conf.d/assembla:
ScriptAlias /assembla/ /home/deploy/assembla/cgi-bin/ <Directory "/home/deploy/assembla/cgi-bin"> AllowOverride None Options +ExecCGI Order allow,deny Allow from all </Directory>
and restart apache:
/etc/init.d/apache2 reload - Run
visudoand add this line to enable the apache user to run commands as the deploy user:
www-data ALL=(deploy)NOPASSWD: /usr/bin/ssh-keygen,/home/deploy/assembla/bin/deploy.sh,/home/deploy/assembla/bin/save_config.sh - Assign a DNS name for this server if you have not already done so
- Allow port 44200 through your firewall.