Heroku Pipelines en AWS?

La organización para la que estoy trabajando está migrando de Heroku a AWS, y nos falta la última pieza del rompecabezas: replicar tuberías de Heroku en AWS.

Las tuberías de Heroku son geniales, nos permiten:

  • tener múltiples etapas de desarrollo: testings, puesta en escena y producción, cada etapa con sus propios entornos vars. La etapa de testing puede tener múltiples aplicaciones.
  • conectarse a Github: autoenviar a la aplicación de producción cualquier cambio realizado en la twig principal, crear automáticamente aplicaciones en la etapa de testing cuando hacemos una request de extracción ("Revisar aplicaciones", muy útil)
  • Pruebas automatizadas: no realizamos testings unitarias, realizamos testings de funcionalidad de alto nivel contra el website: cada vez que se crea una request de extracción y se crea una aplicación en la etapa de testing, se ejecuta un script CLI desde el file composer.json . que utiliza Browserstack y nos envía un correo electrónico con los resultados

Hasta ahora, he encontrado estas alternativas, pero no creo que ninguna de ellas cumpla con todos los requisitos descritos anteriormente:

  • AWS CodePipeline (características faltantes que necesitamos)
  • Servicio de flujo de trabajo simple de Amazon (SWF) (características que faltan que necesitamos)
  • lambdoku (solo para Lambda, queremos usar EC2)
  • Harrow / Capistrano

El último elemento de la list, Harrow, parece estar lo más cerca posible de lo que necesitamos, y tengo curiosidad por saber si alguien que ha tenido los mismos requisitos (o muy similares) que yo lo usé y estaba contento con él. Tengo la sensación de que esto es lo que Heroku usa detrás de escena.

Para la producción, vamos a usar un par de EC2 detrás de un equilibrador de carga. Para las testings y la puesta en escena, podemos usar un EC2 con múltiples entornos virtuales dentro de él (es decir, Docker) o usar un t2.nano para cada aplicación de ensayo y estadificación.

Para resumir mi pregunta: ¿cuál es la mejor herramienta, de código abierto o comercial, que puede replicar las tuberías de Heroku?