SCM Manager est gestionnaire de dépots Mercurial, Git et SVN qui est ecris en java.
Il permet gérer les dépots via une interface web : https://bitbucket.org/sdorra/scm-manager/wiki/Home

J'ai choisis d'installer SCM Manager sur une Ubuntu Server 12.04 car c'est une version LTS (Long Term Support).

A partir d'une installation toute fraiche d'ubuntu avec les paquets :
  • OpenSSH Server
  • LAMP Server
  • Mail Server
  • Tomcat Java Server

vous pouvez commencer par la mettre à jour :

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
$ sudo reboot


sudo apt-get install git

Il nous faut oracle-java, on va utiliser PPA,ce sont des dépôts de paquets logiciels offerts aux individus et aux équipes de développeurs désireux de proposer facilement leurs logiciels pour les utilisateurs d'Ubuntu : http://doc.ubuntu-fr.org/ppa

$ sudo apt-get install python-software-properties

Si on a un proxy (comme moi) :

$ export HTTPS_PROXY=http://proxy:8080
$ export HTTP_PROXY=http://proxy:8080
$ export http_proxy=http://proxy:8080
$ export https_proxy=http://proxy:8080


$ sudo -E add-apt-repository ppa:linaro-maintainers/toolchain

L'option -E donnée à la commande sudo permet de préserver l'environnement de l'utilisateur et donc la configuration proxy
 
$ sudo -E add-apt-repository ppa:webupd8team java
$ sudo apt-get update

$ sudo -E apt-get install oracle-java6-installer

ou
En configurant le proxy dans /etc/wgetrc
sudo apt-get install oracle-java6-installer

Pour vérifier l'installation
$ java -version
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)


Par défaut, c'est la version 6 de tomcat qui est installé, on peut verrifier son état par :
$ sudo service tomcat6 status
 * Tomcat servlet engine is running with pid 1024


Changer la version de java utilisée en modifiant le fichier /etc/default/tomcat7.
Changer ou ajouter la variable JAVA_HOME en fonction de votre configuration : http://doc.ubuntu-fr.org/tomcat
JAVA_HOME=/usr/lib/jvm/java-6-oracle

Pour ensuite pouvoir se connecter aux consoles d'administration, il faut ajouter un utilisateur dans le fichier
/etc/tomcat7/tomcat-users.xml juste avant </tomcat-users> :
<user username="<utilisateur>" password="<mot_de_passe>" roles="admin,manager"/>

On redémarre le service

$ sudo service tomcat6 restart
* Stopping Tomcat servlet engine tomcat6
...done.
* Starting Tomcat servlet engine tomcat6
...done.
Téléchargez la dernière version de SCM Manager sur https://bitbucket.org/sdorra/scm-manager/wiki/download
Prenez la version Web application archive

$ wget http://maven.scm-manager.org/nexus/content/repositories/releases/sonia/scm/scm-webapp/1.24/scm-webapp-1.24.war

Renomez le

$ mv scm-webapp-1.24.war scm.war

Déplacez le dans le répertoire webapps de tomcat

 $ sudo mv scm.war /var/lib/tomcat6/webapps/

D'après https://bitbucket.org/sdorra/scm-manager/wiki/faq il faut modifier ce fichier

/var/lib/tomcat6/webapps/scm/WEB-INF/classes/scm.properties pour définir

scm.home = /var/scm


On crée le répertoire

$ sudo mkdir /var/scm

$ sudo chown tomcat6:tomcat6 /var/scm/ -R

On redémarre le service
$ sudo service tomcat6 restart

On peut aller faire un tour sur http://localhost:8080/scm

login et mot de passe par défauts à CHANGER sont : scmadmin