An Agile Development Environment
All agile methodologies preach delivering working software early and continuously. To achieve this an automated development environment is beneficial. It is also important to get a new project up and running quickly. To this end here is a suggested development environment made up of open source tools along with instructions for getting up and running.
Server Machine
- Use your perfered operationing system: Linux, Windows, etc. These instructions will be some what specific to Windows.
- Two gigs of RAM, a dual processor, and a fast harddrive are the minimum recommendations.
- Install Java 5 or higher: http://java.sun.com/javase/downloads/index_jdk5.jsp
Source Control Management
The first thing you will need on your development server is version control. SVN is the tool of choice!
- SVN 1 Click Setup is a great utility to install SVN and TortoiseSVN on windows.
- Apache HTTP Server Download
- This SVN chapter shows how to point Apache to your SVN repository: Chapter 6. Server Configuration. The basics are modify your httpd.conf file to
- uncomment the DAV modules
- add
LoadModule dav_svn_module modules/mod_dav_svn.so
- map the location
DAV svn
SVNPath c:/svnrepos
On the client machines you will need Subclipse and TortoiseSVN.
Continuously Integration Build System
Now we need to install Maven and create your own corporate maven repository.
- Download Maven
- Unzip to a desired location
- Add the bin directory to your system path
- Add the following to your httpd.conf file
Alias /maven2/ c:/WINDOWS/system32/config/systemprofile/.m2/repository/
Alias /maven2 c:/WINDOWS/system32/config/systemprofile/.m2/repository
Options Indexes
AllowOverride All
Order allow,deny
Allow from all
Alias /maven2 c:/WINDOWS/system32/config/systemprofile/.m2/repository
Options Indexes
AllowOverride All
Order allow,deny
Allow from all
Next we need to install and configure Continuum to automate your builds.
- Download Continuum
- Unzip to a desired location
- Add the following to your httpd.conf file
ProxyPass /continuum http://localhost:8091/continuum/
ProxyPassReverse /continuum http://localhost:8091/continuum/
Alias /working-directory/ c:/continuum/working-directory/
Alias /working-directory c:/continuum/working-directory/
Options Indexes
AllowOverride All
Order allow,deny
Allow from all
ProxyPassReverse /continuum http://localhost:8091/continuum/
Alias /working-directory/ c:/continuum/working-directory/
Alias /working-directory c:/continuum/working-directory/
Options Indexes
AllowOverride All
Order allow,deny
Allow from all
Note that you will need to add the
Database
For running junit tests the Hypersonic in memory database is excellent. It can be downloaded automatically by maven. To demo your applications to your customers MySQL is a great choice.
- Download and run
- mysql-essential-4.1.21-win32.msi
- mysql-gui-tools-5.0-r3-win32.msi
- Download and place in your app servers lib directory
- mysql-connector-java-3.1.13.zip
Application Server
To get up and running fast with JBoss AS + Portal you can start with the Taylor Tracker Bundle. It is preconfigured with various JBoss components. Just unzip it to the desired location. You will want at least two servers configured: QA and PM. The QA server will be used for running all your automated test cases and for demonstration to your customer. The PM server will run various project management and collaboration software like Taylor Tracker, JBoss Wiki, and JBoss Forum, etc.
Client Tools
On the client side us Eclipse. More information is available on the Taylor Installation page.
That is pretty much it! It is also a good idea to ghost this configuration so that you can stamp out new servers as needed. And don't forget to setup a backup schedule for the SVN repository and the MySQL database.
No hay comentarios:
Publicar un comentario