Cómo hacer una continuous integration en las twigs de características

En nuestra compañía usamos git flow y usamos continuous integration.

Eso significa:

  • Cuando alguien se compromete con el develop , nuestro server de desarrollo se desarrolla para desarrollar.domain.com
  • Cuando alguien se compromete con el master , construimos para la producción

Esto funciona muy bien, pero no para las funciones.

A menudo tenemos múltiples funciones, que requieren ser probadas por el rest de la compañía.

Entonces quiero decir:

"Build /feature/my-feature/ to feature_1.domain.com ", por lo que cualquier persona en nuestra networking interna puede acceder a esa function muy fácilmente.

¿Cómo puedes hacer esto?

Posibles soluciones que podría pensar

Desarrollar una herramienta propia :

Estamos considerando build nuestra propia herramienta que se autentique con Github, y luego busque el repository y la solución de compilation en una URL determinada.

Eso parece realmente extraño, parece piratear la continuous integration.

Característica alterna :

La respuesta más común parece ser el uso de combinaciones de funciones, pero eso no facilita que otras personas prueben / activen o desactiven funciones.

Tecnologías: Git (GitHub), CruiseControl, Sourcetree, .NET

Solo lanzando algo por ahí … Agregue un proyecto de ccnet llamado BuildToFeature_X. Use los parameters de ccnet para controlar qué se construye y dónde. Los parameters serían:

  1. FeatureNumber: el dominio para publicar en. Usaste 1 en tu ejemplo.
  2. URL de sucursal: qué twig de control de versiones se va a completar y comstackr.

El proyecto ccnet comtesting la URL de sucursal y la crea en feature_ [FeatureNumber] .domain.com.

http://cruisecontrolnet.org/projects/ccnet/wiki/Parameters