¿Cómo están configurando las configuraciones de compilation las personas al usar Git y Git-flow? Tengo varias tareas que quiero completar:
- Commit: comstack, ejecuta análisis de código estático, testing de unidad, package
- Prueba de integración: ejecuta testings de integración
- Implementar para probar: implementa la aplicación en un entorno de testing
- Prueba funcional: ejecutar testings funcionales de extremo a extremo
- Implementación para control de calidad: extracción manual en un entorno de control de calidad que ejecuta testings de humo
Con las twigs principales de master, development, release, tengo curiosidad de cómo las personas las asignan a los processs de compilation.
Actualmente tenemos
- Construcción CI
- El VCS Root tiene una especificación de twig que incluye develop, feature / *, release / *, hotfix / * y master
- Un activador de compromiso de VCS para todas las twigs
- Extraiga las twigs de funciones de compilation de requestes y los resultados de compilation de enlaces y apruebe
- Auto-merge master -> desarrollar
- Notas de lanzamiento comstackdas
- Una instantánea de CI Build
- Genera notas de la versión de confirmaciones y las confirma
- Implementar a Dev Build
- Una instantánea de CI Build
- Progtwigdo para implementar dos veces al día
- Solo se desarrolla la twig de desarrollo
- Implementar a UAT Build
- Paso manual
- Una instantánea de CI Build
- Solo release / *, hotfix / * o master pueden implementarse en UAT
- Implementar a Prod
- Paso manual
- Una instantánea en Implementar a UAT Build
- Solo el maestro puede implementarse aquí (cuando la versión o hoftix está cerrado, el maestro debe implementarse en UAT primero para realizar testings de detección de humo)
Teamcity auto-merge no permite comodines, por lo que estamos trabajando en nuestro propio método para mantener las sucursales sincronizadas
- master -> develop, release / *, hotfix / *
- desarrollar -> característica / *
Este es mi flujo de trabajo:
Sucursal por function (dymitruk.com)
está adaptado de nvie's