Процедура развертывания SVN - PullRequest
1 голос
/ 26 августа 2010

Я работаю в среде, где мы используем SVN для наших исходных репозиториев.Например, мой репозиторий кода выглядит следующим образом:

//svn
 -folder1
   -file1
   -file2
-folder3
   -file4
   -file5

, но когда они развернуты на производственном / тестовом сервере => структура каталога сильно отличается, и только файлы должны быть помещены => в соответствующую папкуцелевой сервер

ex:

 //d/src/datastream
     -file1
     -file2
     -file3
     -file4

на целевом сервере не установлен svn.Прямо сейчас это было сделано как ручной процесс, копируя файлы.Теперь становится сложно отследить версию скопированных целевых файлов, как это делают разные разработчики.

Как этот процесс развертывания можно автоматизировать, помещая файлы в соответствующую целевую папку и отслеживая версии SVN?выталкивается.

Спасибо

Ответы [ 3 ]

2 голосов
/ 26 августа 2010

Вы можете написать скрипт, который сделает все это за вас.

Сценарий проверит ревизию хранилища вашей рабочей копии и запишет это (вместе с отметкой времени) в файл журнала на сервере. Затем скрипт скопирует каждый файл в целевой каталог. Каждый раз, когда новая версия «проталкивается» на сервер, в файле журнала будет новая запись, указывающая время обновления сервера и версию, с которой он был обновлен.

Вы должны быть в состоянии написать этот скрипт на любом языке, который вы выберете. Установленные инструменты командной строки Subversion могут упростить эту задачу.

Вы также можете включить блок комментария в заголовок ваших файлов и включить значения $Rev$ и $LastChangedDate$. Когда файл будет зафиксирован, svn обновит эти значения, чтобы при извлечении файла отображались ревизия и дата последнего изменения.

1 голос
/ 26 августа 2010

Может быть, это будет альтернативой:

  • Сделать SVN-тег , когда код должен быть развернут.

  • Экспорт кода из нужного тега в каталог

  • Копирование / перемещение / удаление файлов для соответствия внешнему виду на развернутом сервере

  • Сделать из него пакет tar

  • Скопировать архив на сервер

  • Поставить свой сайтв процессе обслуживания

  • Распаковка архива

  • Тесты?

  • Отключение режима обслуживания

Это можно очень просто автоматизировать с помощью сценария оболочки, которому вы можете передать в качестве параметра соответствующее имя тега SVN.

0 голосов
/ 26 августа 2010

Не очень много опыта в автоматизации развертывания, но, надеюсь, вы помечаете свои файлы каждый раз при развертывании.

Кроме того, вы можете проверить Хадсон , который используется для автоматизации таких вещей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...