2009-01-13 14 views
8

En un futuro cercano, tendré unas 2 semanas para moverme y mejorar nuestro entorno de desarrollo en el trabajo.Mejorando nuestro entorno de desarrollo en el trabajo

Desarrollamos principalmente un gran proyecto PHP/MySQL con 2-10 desarrolladores.

Por el momento tenemos un servidor de desarrollo, ejecutando Apache con mod_userdir, cada desarrollador tiene una carpeta/public_html en su hogar (accesible por Samba). Para VCS y Project Management/Issuetracking utilizamos Subversion y Trac. La prueba/implementación requiere algunos pasos manuales, no mucha automatización.

Mis planes para la nueva configuración incluyen los siguientes cambios en el material existente:

  • integración continua
  • Integrar CI a Trac, crear/encontrar un plugin que ofrece a iniciar acciones después del éxito o el fracaso de el progreso de construcción (es decir, desplegar la estadificación/vivo)
  • Crear implantación-scripts automatizados (un clic)
  • Integrar (Doxygen) -Documentación a la acumulación de progreso y de alguna manera en Trac
  • Añadir automatic versioning
  • Añadir otra capa de monitorización (Nagios local de vigilancia de nuestra producción-sistema-nagios)
  • Añadir una noche ejecutar MySQL esclavo de replicación, que puede luego por los desarrolladores pueden utilizar para probar cosas en los datos up2date
  • Revisión
  • la copia de seguridad previsto
  • Documento de cómo y por qué configurar todo de esta manera

¿tiene alguna tips sobre el tema/insinúa lo que se puede mejorar aún más? ¿Algo que deberíamos hacer de otra manera?

Respuesta

5

Me aseguraría de que usted escribe sus guiones implementación automatizada de tal manera que puedan ser utilizados por su herramienta de integración continua. Hudson (y sospecho que CruiseControl) envuelven estos scripts y proporcionan un ingenioso front-end.

Hundson es fácil de instalar y viene con un Trac plugin, SVN, CVS, plugins de Git y un plugin de Doxygen y otros para casi cualquier cosa que se te ocurra. Advertencia: no he usado todos estos complementos y es posible que no hagan exactamente lo que usted desea ...

Si tiene un presupuesto para el software de CI, entonces vale la pena mirar TeamCity (¿o está usando Bitten?).

Tienes una gran oportunidad, ¡así que buena suerte!

+0

Me gusta Hudson: sin embargo, la actitud subyacente de los programadores brilla. –

2

Mi única sugerencia no sería gastar mucho tiempo en el Documento

  • cómo y por qué configurar todo de esta manera

Este es el último elemento de la lista para la mejora nuestro entorno de desarrollo y todavía no lo he hecho.

Cada parte siempre se está modificando o mejorando para proporcionarnos una mejor funcionalidad o un uso más fácil. Sugiero tratar de mantener el "por qué" como comentarios tan cerca de donde realmente lo implemente como pueda. Este es el único lugar donde alguien que cambie su sistema lo necesitará.

Quizás también un gran diagrama que muestra enlaces y nombres de servidores físicos, pero aparte de eso, he encontrado que la documentación es una molestia.

Saludos

+0

A menudo es más productivo contar esto en una reunión, donde dibuja cosas en pizarras y luego fotografía las pizarras blancas. A continuación, envíe las fotos a todos los asistentes. Una hora puede ahorrarle días escribiendo :) –

Cuestiones relacionadas