Как мне сделать историческую непрерывную интеграцию с TeamCity? - PullRequest
2 голосов
/ 06 апреля 2011

Я только начинаю работать с CI и пытаюсь создать метрики для моей кодовой базы.Есть ли способ заставить TeamCity запускать сборку для каждой ревизии моего исходного кода в моем SVN-репозитории с самого начала?Теперь я могу только узнать, как делать сборки, а не из r1.

Я также хотел бы знать, можно ли создавать каждую ревизию, а не только один раз за каждый период опроса.

1 Ответ

2 голосов
/ 08 апреля 2011

Хорошо, вот способ сделать это (не очень простой, но он мог бы по крайней мере сделать это): Если, например, у вас есть исходный код в subversion, вы можете использовать дамп svnadmin в скрипте, чтобы перенести ревизию за ревизией в новый репозиторий.

Если вы делаете это с соответствующим интервалом и позволяете teamcity прослушивать изменения в новом репо, teamcity должна запускать новую сборку для каждой ревизии.

Думая об этом, еще одно теоретическое решение без дампов будет:

  1. Создайте новую копию конфигурации вашей сборки (A)
  2. Укажите на новую пустую папку в вашем репо (при условии, что svn здесь)
  3. Создайте еще одну конфигурацию сборки (B) со сценарием командной строки, который для каждого выполнения берет следующую ревизию из вашего существующего репозитория и объединяет ее в новую пустую папку.
  4. Добавление триггера изменений в копию конфигурации сборки A
  5. Добавьте cron-триггер в конфигурацию сборки B, которая запускается с соответствующим интервалом.

Я не проверял ничего из этого, но, эй, что может пойти не так? ; -)

...