Création d'un workflow de développement WordPress professionnel avec Vagrant

En tant que développeurs, nous savons tous que créer un flux de travail de développement WordPress local durable et uniforme peut s'avérer difficile et complexe. Des programmes tels que MAMP, WAMP et XAMPP facilitent théoriquement l’installation d’un serveur Web local, mais pour ceux qui l’ont essayé, vous savez qu’il peut être truffé de bugs et loin d’être idéal.. 

Avec des outils tels que Git et Capistrano, il est relativement simple de déployer des modifications d'un référentiel vers un serveur, mais les modifications préalables peuvent être chaotiques, en particulier pour les équipes..

C'est là qu'intervient Vagrant. Créé par Mitchell Hashimoto, Vagrant est essentiellement un outil de gestion de machines virtuelles. Il permet de créer par programmation une méthode permettant de créer et de configurer des machines virtuelles reproduisant l'environnement de production d'une application. Du site Web vagabond:

Vagrant fournit des environnements de travail faciles à configurer, reproductibles et portables, basés sur une technologie standard et contrôlés par un seul flux de travail cohérent, afin de maximiser la productivité et la flexibilité de votre équipe..

Dans cet article, nous utiliserons VirtualBox et Ubuntu pour créer un environnement WordPress portable compatible entre plusieurs plates-formes et pouvant être facilement déployé dans presque tous les environnements en direct..

Commencer

Pour commencer, nous devrons installer deux programmes, VirtualBox et Vagrant avec un plugin Vagrant helper.

Installez VirtualBox

Allez sur https://www.virtualbox.org/wiki/Downloads et téléchargez la dernière version pour votre système d'exploitation. Extrayez et installez VirtualBox et vous êtes prêt à commencer.

Installer vagabond

Rendez-vous sur http://www.vagrantup.com/downloads.html et téléchargez et installez la dernière version de Vagrant pour votre système d'exploitation. Une fois installé, nous devrons installer le plug-in Vagrant Hosts Updater. Ce plug-in modifiera votre fichier hosts pour permettre un accès facile à votre machine virtuelle. Tapez ceci dans le terminal:

$ vagrant plugin installe vagrant-hostsupdater

Lancer votre propre machine virtuelle

Nous devons maintenant construire notre machine virtuelle. Dans des circonstances normales, vous devez créer votre propre Vagrantfile et faites beaucoup de scripts Ruby personnalisés pour qu'une machine fonctionne correctement avec WordPress. Mon coéquipier, Trevor Maglione, a créé une configuration WordPress Vagrant qui effectue tout le travail difficile pour vous. Nous vous recommandons de découper ce référentiel, puis de le cloner sur votre ordinateur afin que vous puissiez conserver votre propre version. Il est disponible publiquement sur Bitbucket:

https://bitbucket.org/axocomm/vagrant-wordpress-lemp

$ git clone [référentiel mon-cloné] / chemin-souhaité-du-projet / $ cd / chemin-souhaité du projet / 

Une fois cloné sur votre ordinateur, vous devez déplacer le fichier. Vagrantfile.sample dans un fichier nommé Vagrantfile et éditez-le:

Remplacez la valeur de la ligne 12 par votre projet, par exemple:

config.vm.hostname = 'mon projet'

Remarque: Si vous prévoyez d’exécuter simultanément plusieurs ordinateurs virtuels errants, vous voudrez également modifier la valeur de l’adresse IP indiquée à la ligne 34 pour chaque nouvel ordinateur virtuel que vous exécutez. Remplacez 192.168.3.10 par 192.168.3.11 sur votre deuxième VM, 192.168.3.12 sur votre troisième VM, etc..

Démarrer votre VM

Maintenant, allez dans votre terminal et allez dans le répertoire où se trouve votre référentiel cloné et tapez:

$ vagabond

Remarque: Pour les utilisateurs Windows, vous devez être sur la ligne de commande avec «autorisations administratives». Pour exécuter cette commande, utilisez l'invite de commande avec privilèges élevés ou exécutez CYGWIN en tant qu'administrateur. Ceci est essentiel pour que le plugin hosts updater fonctionne.

Vous verrez maintenant que Vagrant télécharge une copie d’Ubuntu. Actuellement, il utilise 12.04, nous prévoyons de le mettre à jour vers 14.04 dans un avenir proche. Vagrant utilise ensuite Puppet pour installer les packages nécessaires à l’exécution d’un site WordPress pleinement fonctionnel sur une pile LEMP (Linux Nginx MySQL PHP5-FPM). Ce processus devrait prendre moins de cinq minutes. 

Si vous n'êtes pas sur une machine Windows, il vous sera demandé votre mot de passe (sudo) pour entrer des entrées dans votre fichier hosts..

Nous sommes maintenant prêts! Accédez à votre navigateur Web et tapez le nom du projet dans votre navigateur Web. Si vous l'avez nommé mon projet dans votre Vagrantfile, allez à http://myproject.dev/. Assurez-vous de taper http: // ou vous pouvez confondre votre navigateur. Vous devriez maintenant voir l'écran d'installation de WordPress.

Conclusion

Vous avez maintenant une version locale de WordPress qui fonctionne avec vagrant. Vous pouvez maintenant éditer les fichiers localement et ils seront automatiquement poussés vers votre machine virtuelle via des dossiers partagés sans délai.

Quand vous avez fini de travailler pour la journée, tapez simplement $ arrêt vagabond suspendre votre VM et taper $ vagabond pour le reprendre. Si vous rencontrez des problèmes avec la machine virtuelle, essayez de le réapprovisionner avec marionnette:

$ relogement vagabond - provision