2016-10-26 2 views
0

У нас есть ветви на основе TFS. У нас есть основной выпуск и исправление.Стратегия ветвления TFS с сборками команд и развертывания осьминогов

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

Мы разрабатываем ветку dev tfs, и у нас есть сборка Teamcity, которая нацеливает ветвь Dev, а затем запускает развертывание осьминогов для развертывания в среде Dev. Но как только тестирование будет завершено, нам необходимо объединить код с Главным ветвием и его филиалом Main, который мы разворачиваем в тестовую среду, а затем на стадию, а затем на производство.

Как определить сборку и развертывание в этом случае?

+0

Кажется, ваша проблема менее связана с TFS. На стороне TFS вам просто нужно контролировать исходные ветви и выполнять слияние между ветвями. Возможно, вам понадобится создать две конфигурации сборки, чтобы указать две ветви TFS (dev и main) в Root of TeamCity для соответствия вашим требованиям. –

ответ

0

К сожалению, ваша стратегия ветвление будет означать, что некоторые сборки будут идти только в одной среде:

  1. код новая функция в Dev
  2. Построить Dev ветвь (артефакт # 1)
  3. Deploy # 1 Деву среда
  4. Слияние Main
  5. построить главный филиал (артефакт # 2)
  6. Deploy # 2 в среде тестирования
  7. Deploy # 2 в промежуточной среде
  8. Deploy # 2 в производственной среде
  9. Отрасль/Merge Освободить отделение для поддержки

Так Octopus вам нужно иметь канал для Дев, который будет разрешается только перейти в среду Dev, а Channel по умолчанию - Test-> Staging-> Production. Чтобы поддерживать каналы, вам нужно будет отличать номера версий друг от друга или использовать расширения SemVer.

Смежные вопросы