implementar website con mercurial

Estoy trabajando en la configuration de un ciclo de desarrollo / implementación para uno de nuestros últimos proyectos. Esto es lo que estoy tratando de hacer,

  1. Confirme el último código con el clon local "mercurial".
  2. Empujarlo al repository central alojado en "bitbucket"
  3. Abra una console de administración basada en web (esta es la parte con la que necesito ayuda) en mi server, que ya está configurada para usar el repository bitbucket, recupera automáticamente las últimas confirmaciones y muestra una list.
  4. Elija una de las revisiones y realice una actualización que actualizará efectivamente el website.
  5. Si hay algunos problemas con la última revisión, regrese a la versión anterior usando la misma console web.

Estoy usando "SourceTree" para los pasos 1 y 2, y quiero mantener la GUI de ciclo completo. ¿Alguien puede sugerir alguna herramienta que pueda usar para la administración del lado del server (paso 3,4,5)?

Esto es más simple de lo que piensas:

  1. Clona el website en tu server usando bitbucket como fuente

  2. Escriba una pequeña aplicación web que llame a hg pull -u en la carpeta raíz de su website. Mercurial restring de dónde extraer, por lo que no necesitará nada aquí.

La segunda característica se puede implementar usando hg id -i (ver esta respuesta ) para get la revisión actual. Escribir eso en el file.

Ahora necesita una página web que enumere todas las revisiones en ese file y ejecute hg up -r <revision> cuando click una de ellas.

Pero tal vez un mejor enfoque sería presionar directamente al server web usando hg push desde su repository local (ver aquí ). Luego puede usar un gancho para actualizar los files y save la última revisión en un file.

Ahora solo necesitará un service web para volver a una revisión anterior.

Team City es una aplicación web que puede hacer eso por usted.

Es un server de continuous integration, pero se puede configurar para que solo se publique cuando use la aplicación.

Hay muchos serveres de continuous integration y me imagino que la mayoría / todos pueden hacer lo que usted desea, así que busque si ese no se ajusta a sus necesidades.