2009-12-08 3 views
2

Quel serait un bon outil pour effectuer des déploiements automatisés d'applications basées sur LAMP (MySQL, PHP, Zend Framework) vers des environnements d'intégration et de transfert? Je cherche spécifiquement les outils qui gèrent les déploiements sur des hôtes distants. Je suppose que les outils de construction tels que phing et fourmi que je suppose pourraient être utilisés pour cela, mais je me demandais s'il y a quelque chose de mieux pour ce cas.Environnements d'intégration et de staging automatisés pour une application basée sur LAMP

+0

J'ai vu Capistrano (www.capify.org) être recommandé chaudement ici sur SO, également dans un contexte PHP même s'il est basé sur Ruby, mais je n'ai pas eu le temps de le vérifier moi-même. Recherche SO pour "Capistrano" sera probablement plus. –

+0

merci! va le vérifier –

Répondre

1

Pour l'intégration, en particulier pour l'intégration continue, j'aime phpUnderControl(qui est un outil pour les projets PHP, mais lui-même est basé sur CruiseControl, qui sait tout à fait dans le monde Java): il oeuvre:

  • aller chercher la dernière révision de SVN
  • lancement des tests automatisés (PHPUnit)
  • PHP_CodeSniffer
  • génération de la documentation PHP (phpDocumentor)
  • et fournit une interface agréable pour les utilisateurs de voir les résultats de chaque construction.

Et, pour commencer, voici un article qui explique comment définir phpUnderControl up: Getting started with phpUnderControl
(Chaque fois que je, ou certains collègues, ont installé phpuc, nous ne presque comme expliqué dans cet article, de ce Je me souviens)


pour la mise en scène, je vais généralement avec quelques tâches phing pour construire une archive tar.gz, que je déploie au serveur de mise en scène de temps en temps, en utilisant une autre tâche de phing à un goudron de l'archive, et créez les liens symboliques requis (ou des trucs comme ça)dix . L'idée étant que l'intégration continue se produit tout le temps, et doit être entièrement automatique, tandis que le déploiement à la mise en scène se fait seulement de temps en temps (une fois par semaine, par exemple), et peut être fait semi- automatiquement.

0

Configurez un serveur de construction, quelque chose comme CruiseControl est excellent pour cela et lancez vos propres scripts Nant personnalisés si nécessaire ou utilisez des tâches Exec pour prendre en charge le déploiement. Pour ces choses, comme les déploiements spécifiques, avec leurs problèmes de configuration et leurs complexités, il n'y a presque jamais quelque chose de prêt à l'emploi. Regardez cela de cette façon, en roulant vos propres scripts et fichiers de commandes, cela signifie que vous savez tout sur les étapes et que vous pouvez les configurer et les modifier comme vous le voulez, plutôt que de la fée magique, et quand les choses se cassent. aucune idée de l'endroit où le réparer.

Questions connexes