Depuis peu je m’intéresse aux méthodes agile et en particulier à Scrum. Voici donc un petit tutoriel pour installer IceScrum,  un logiciel open source principalement sous licence GNU Affero GPL V3, qui est la référence en ce domaine.

Pour ceux qui ne connaissent pas Scrum je vous conseille la lecture de cet ouvrage : Scrum – 3e éd. : Le guide pratique de la méthode agile la plus populaire (Etudes, développement, intégration)

Installation d’iceScrum sur Ubuntu

Dans un premier temps on installe le SGDB mysql et le serveur d’applis Tomcat (si ce n’est pas encore fait) :

sudo apt-get install tomcat7 tomcat7-common mysql-client mysql-server libmysql-java

Ensuite créons la base de données mysql :

mysql -u root -p -e "create database icescrum"

Maintenant téléchargeons le war, décompressons le dans le bon répertoire :

wget http://www.icescrum.org/downloads/icescrum_R6_13.3_war.zip
sudo unzip icescrum_R6_13.2_war.zip -d /var/lib/tomcat7/webapps/

Maintenant il faut éditer le fichier de config de Tomcat :

sudo gedit /usr/share/tomcat7/bin/setenv.sh

Ajoutez y ceci :

CATALINA_OPTS="-XX:MaxPermSize=512m -Xmx1024m"
CATALINA_OPTS="$CATALINA_OPTS -Dicescrum_config_location=/etc/tomcat7/icescrum.groovy"
CATALINA_OPTS="$CATALINA_OPTS -Duser.timezone=UTC"
CATALINA_OPTS="$CATALINA_OPTS -Dicescrum.log.dir=/var/lib/tomcat7/basedir/icescrum/"

De même il faut éditer ce fichier et remplacer la ligne commençant par <Connector port= »8080″ par ceci

<Connector port= »8080″ protocol= »org.apache.coyote.http11.Http11NioProtocol » connectionTimeout= »2000″ maxThreads= »500″ URIEncoding= »UTF-8″/>

sudo gedit /etc/tomcat7/server.xml

Maintenant occupons nous de la config d’iceScrum :

sudo gedit /etc/tomcat7/icescrum.groovy

Collez y ceci :

//Server URL - IMPORTANT - URL du serveur tel qu'il sera vu par les clients
grails.serverURL = "http://le-libriste.fr:8080/icescrum"
 
//Logging (for debug purposes)
icescrum.debug.enable = false
icescrum.securitydebug.enable = false
 
//Working directory
icescrum.baseDir = "/var/lib/tomcat7/basedir/icescrum/"
 
//MySQL
dataSource.dialect = "org.hibernate.dialect.MySQL5InnoDBDialect"
dataSource.driverClassName = "com.mysql.jdbc.Driver"
dataSource.url = "jdbc:mysql://localhost:3306/icescrum?useUnicode=true&characterEncoding=utf8"
dataSource.username = "root"
dataSource.password = "root"
 
//Mail server (These exemple values aren't set by default)
grails.mail.host = "smtp.gmail.com"
grails.mail.port = 465
grails.mail.username = "prenom.nom_AT_gmail.com"
grails.mail.password = "password"
 
//Project
icescrum.project.import.enable = true
icescrum.project.export.enable = true
icescrum.project.creation.enable = true
icescrum.project.private.enable = true
icescrum.project.private.default = false
 
//Users
icescrum.gravatar.secure = false
icescrum.gravatar.enable = false
icescrum.registration.enable = true
icescrum.login.retrieve.enable = true
 
//Alerts
icescrum.auto_follow_productowner = true
icescrum.auto_follow_stakeholder  = true
icescrum.auto_follow_scrummaster  = true
icescrum.alerts.errors.to = "dev_AT_icescrum.org"
icescrum.alerts.subject_prefix = "[icescrum]"
icescrum.alerts.enable = true
icescrum.alerts.default.from = "webmaster_AT_icescrum.org"
 
//Attachments
icescrum.attachments.enable = true

Dans ce fichier de config nous avons déclaré des répertoires qu’il faut créer :

sudo mkdir -p /var/lib/tomcat7/basedir/icescrum
sudo chown -R tomcat7:tomcat7 /var/lib/tomcat7/basedir/

Relançons tomcat et …

sudo service tomcat7 restart

allez à l’url http://le-libriste.fr:8080/icescrum
En cas de problème vous pouvez consulter la log suivante :/var/log/tomcat7/catalina.out