Fredistrano - Déployez vos applications PHP en quelques clics

Tagged:  •    •    •  

Comme vous avez pu le lire dans un précédent billet, je base mes futurs développements sur CakePHP malgré un essai concluant de Ruby On Rails. Une des choses que je regrette du monde rails, c'est l'outils de déploiement Capistrano, il me fallait donc quelque chose d'équivalent pour CakePHP.

Point de départ

Au début j'avais pensé utiliser Capistrano, car j'avais lu qu'il permettait également de déployer des applications PHP, mais dans mon cahier des charges je devais pouvoir déployer aussi bien sur un serveur Linux que sur un serveur Windows, l'intranet de mon entreprise est sous Windows Server 2003 et dans ce cas avec Capistrano ce n'est plus possible.

Je me suis donc retroussé les manches et c'est ainsi qu'est né Fredistrano ;).

Attention, rien de comparable avec Capistrano, Fredistrano est une application web toute simple qui fait juste ce dont j'avais besoin, déployer une version d'une application depuis un serveur Subversion sur un serveur web de production.

Comment ça fonctionne ?

En gros, l'application va faire un export SVN du projet à déployer à la révision désirée dans un répertoire temporaire sur le serveur de production, puis elle va synchroniser le dossier temporaire avec le dossier de production de l'application (commande rsync) après avoir fait une sauvegarde de la version actuelle de prod. Une fois un projet bien configuré, on ne se pose plus de question lors des déploiements et si on se trompe et bien on déploie une version précédente. Si l'on a un doute, il est possible de lancer la synchronisation en mode simulation et ainsi voir quels fichiers seront impactés.

Pour fonctionner Fredistrano, il suffit de respecter les pré-requis suivants:

Intéressé(e)?

Voilà, si vous souhaitez plus d'informations sur le projet, vous trouverez tout ce dont vous aurez besoin (téléchargements, documentation, code source,...) dans cet espace dédié à Fredistrano (hébergé par GoogleCode).