тканевые роли

но я рассмотрел некоторые рабочие процессы для Mercurial, так как мы начинаем использовать его для нашей веб-разработки. Нам нужен автоматизированный способ распространения изменений, которые передаются в тестируемые и действующие экземпляры на несколько конечных точек. Вот схема идеи:

         +-------+
         |Dev    |
         |       |
         +-------+
             |  Push
             +--------+
                      |
                      V
+-------+   Push  +-------+
|Live   |<--------|Test   |
|server |         |server |
+-------+         +-------+
    |    +-------+    |    +-------+
    +--->|Live 1 |    +--->|Test 1 |
    |    |       |    |    |       |
    |    +-------+    |    +-------+
    |                 |
    |    +-------+    |    +-------+
    +--->|Live 2 |    +--->|Test 2 |
    |    |       |    |    |       |
    |    +-------+    |    +-------+
    |                 |
    |    +-------+    |    +-------+
    +--->|Live 3 |    +--->|Test 3 |
         |       |         |       |
         +-------+         +-------+

По сути, идея заключается в том, что все, что нам, как разработчикам, нужно было бы сделать, - это после того, как разработка достигла стабильного уровня, выполнить команду push (которая не обязательно должна быть простоhg push) к тестовому серверу, и оттуда он будет автоматически распространяться. Затем, как только тестирование будет завершено, мы переместим его из теста в живую (или, если бы это было проще, мы могли бы перейти из dev в живую), и это также распространялось бы на каждый из различных экземпляров.

Было бы неплохо, если бы мы могли довольно легко добавить новые тестовые и живые экземпляры (например, возможно, если IP-адреса были сохранены в базе данных, которая могла бы быть прочитана скриптом и т. Д.).

Каков будет лучший способ сделать это? Я знаю о ртутных крючках. Может быть, внутрипроцессный скрипт, который будет работать? Я также посмотрел втканьэто был бы хороший вариант?

Кроме того, какое программное обеспечение поддержки будет необходимо каждой конечной точке? Было бы проще всего, если бы хранилище Mercurial существовало на каждом сервере? Будет ли полезен доступ по SSH? И т.д...

Ответы на вопрос(1)

Ваш ответ на вопрос