Phabricator – Partie 2

Phabricator – Partie 2

Cet article fait partie d’une série que je réalise sur l’outil Phabricator. Vous pourriez être intéressé de lire le premier article ici avant de vous lancer dans celui-ci ! Ce billet traite des subtilités que vous devriez maîtriser pour l’installation de Phabricator à des fins de test. Je ne prétends pas ici pouvoir vous aider à installer le progiciel pour un environnement de production avec toute la sécurité qui va avec. Vous aurez besoin de la documentation officielle pour ce faire.

Pré-requis

Avant tout, il vous faudra vous assurer de disposer au minimum d’un serveur virtuel qui vous permet d’installer deux ou trois choses. Pour ma part, je suis parti sur la base d’une VM tournant sous Ubuntu et disposant de 2 Go de RAM, 1 vCPU ainsi que 50 Go de stockage, que j’ai loué chez DigitalOcean. Le prix et la qualité du service y sont très intéressants, toutefois vous pourriez être tenté par une solution plus « locale » afin d’éviter le désagrément des clouds internationaux. Cela dit, c’est largement suffisant pour débuter, mais vous serez probablement heureux d’apprendre – pour ceux dont l’utilisation est intensive – que Phabricator peut être installé de manière à atteindre une haute disponibilité. Au vu de leur expérience chez Facebook, les créateurs n’aurait pas pu penser un outil sans cela.

Il vous faudra également un nom de domaine (ou un sous-domaine) que vous pourrez utiliser pour accéder à votre serveur. C’est toujours plus agréable que d’utiliser une adresse IP. Pour ma part, j’ai choisi « git.powerjpm.info ».

Installer les bases

Une fois votre serveur configuré avec les bases (appliquer les mises à jour, installer un certificat SSH et configurer le firewall un minimum, par exemple avec ufw), il vous faudra installer les applications nécessaires à faire tourner Phacility, à savoir principalement un serveur Web, PHP, MySQL et Git. Pour les plus pressés, voici un moyen rapide de tout installer, grâce à la procédure d’installation créée par Phacility:

$ mkdir /opt/phacility
$ cd /opt/phacility
$ curl https://secure.phabricator.com/source/phabricator/browse/master/scripts/install/install_ubuntu.sh > install_ubuntu.sh
$ chmod +x install_ubuntu.sh
$ ./install_ubuntu.sh
$ systemctl restart apache2

Assurez-vous ensuite de configurer votre nom de domaine au niveau Apache, par exemple en créant votre VirtualHost sous /etc/apache2/sites-available/monsite.conf (adaptez la configuration selon vos paramètres):

<VirtualHost *>
	  # Change this to the domain which points to your host.
	  ServerName git.powerjpm.info
	
	  # Change this to the path where you put 'phabricator' when you checked it
	  # out from GitHub when following the Installation Guide.
	  #
	  # Make sure you include "/webroot" at the end!
	  DocumentRoot /opt/phacility/phabricator/webroot
	  LimitRequestBody 33000000
	 
	  <Directory "/opt/phacility/phabricator/webroot">
	    Require all granted
	  </Directory>
	
	  RewriteEngine on
	  RewriteRule ^(.*)$          /index.php?__path__=$1  [B,L,QSA]
	</VirtualHost>

Enfin, activez le VirtualHost via les deux commandes suivantes (en partant du principe que votre fichier de VirtualHost Apache s’appelle « monsite.conf »):

$ a2ensite monsite.conf
$ systemctl reload apache2

Créer une base de données

Une fois votre serveur Web disponible et les fichiers d’installation de Phabricator récupérés, il va vous falloir une base de données MySQL exploitable. Pour ce faire, lancez les commandes suivantes. L’installateur de Phacility fera la suite. N’oubliez pas d’adapter les commandes selon vos besoins, notamment pour les noms d’utilisateur, de base de données et de mots de passe:

$ mysql
mysql> CREATE USER 'phabricator'@'%' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'phabricator'@'%';
mysql> exit

Lancer l’installation de Phabricator

Vous voilà paré pour lancer l’installation de Phabricator. Dernière ligne droite, positionnez-vous dans le répertoire d’installation du progiciel et exécutez les commandes suivantes (à adapter selon votre installation):

$ cd /opt/phacility/phabricator/
$ ./bin/config set mysql.user phabricator  # Le user mysql créé
$ ./bin/config set mysql.pass password     # Le mot de passe créé
$ ./bin/storage upgrade

Et voilà, plus qu’à aller chercher un café et prendre son mal en patience pendant que Phabricator s’installe. Vous aurez ensuite l’occasion de passer à l’interface Web pour le configurer. Je ne traiterai pas de configuration dans cette série (du moins pas pour l’instant) car l’essentiel est déjà disponible dans la documentation officielle. De plus, Phabricator vous notifiera des points non conformes à régler.

Ressources supplémentaires

Pour les personnes que cela intéresse, vous pouvez également retrouver la liste des commandes que j’ai effectuées (extraite de mon historique et un peu nettoyé pour ne pas vous ennuyer avec 50’000 « cd » et « ls ») ici:

Photo d’entête: communauté Phabricator, le logo et le nom du progiciel sont soumis au TradeMark.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.