2008-11-26 14 views
10

Para mi aplicación web que se ejecuta en LAMP, necesito poder implementar migraciones de base de datos y cambios de código en varios servidores y poder probar la implementación más tarde, todo esto hecho automáticamente por los scripts.¿Qué herramientas/idiomas usas para el despliegue de aplicaciones web PHP?

Actualmente estoy dividido entre utilizar directamente mi herramienta de compilación (Phing) con algunas tareas especiales de implementación/prueba, o scripts de shell, o un lenguaje de scripts como Ruby o Python.

El problema es que creo que una herramienta de compilación se debe utilizar para compilar, no para implementar. También creo que los guiones de shell son difíciles de mantener y no son muy legibles.

¿Tiene algún buen consejo sobre este tema?

Respuesta

4

Para proyectos PHP, Phing es el camino a seguir. El despliegue es definitivamente uno de los usos previstos, teniendo en cuenta que en PHP no hay ningún proceso de compilación "real", ya que los scripts no se compilan.

Desde el sitio oficial:

Si usted se encuentra escribiendo a medida secuencias de comandos para manejar los envases, despliegue, o las pruebas de sus aplicaciones , entonces nosotros sugerimos buscar en el marco Phing.

Phing puede hacer todo cáscara/Python/scripts Ruby puede hacer, y se puede ampliar en PHP, que es su principal atractivo para los desarrolladores de PHP. ¿Por qué querrías usar ruby ​​/ python si eres un desarrollador de PHP?

+1

En realidad, estoy dispuesto a usar la mejor herramienta para el trabajo, no usar PHP en todas partes simplemente porque lo estoy usando para mi aplicación. Puede ser conveniente para algunos desarrolladores que solo conocen PHP. Excavaré más en Phing para ver si se ajusta a mis necesidades. – Franck

+0

Lo he usado principalmente como herramienta de implementación y funciona muy bien. Actualizaciones de SVN, permisos de directorio, corrector de prueba, lo que quieras, se ajusta a la ley :) –

0

¿Qué he usado?

  • SVN post-commit hook
  • script de shell script CGI a rsync
  • Perl para svn switch a través de sistemas

no parece como cualquiera de estos sería aceptable para usted, aunque , teniendo en cuenta su afirmación "También creo que los guiones de shell son difíciles de mantener y no son muy legibles".

+0

realidad Voy a utilizar rsync y SVN ganchos pero con secuencias de comandos shell como poco como sea posible. :) – Franck

2

Para implementar aplicaciones web, PHP u otras, con un solo clic, puede usar fredistrano.

3

Rasmus Lerdorf (creador de PHP) lanzó una herramienta de implementación llamada WePloy.

0

guión personal que utiliza SVN Exportar + rsync

Cuestiones relacionadas