Зависимость артефакта командного города получить последний артефакт сборки, а не последний

Мы используем Teamcity для сборки и развертывания нашего веб-приложения. Мы используем MSBuild для сборки приложения и MSDeploy для развертывания. Мы хотим использовать две разные конфигурации сборки: одну для сборки, а другую для развертывания.

Теперь у нас есть вопрос в teamcity, когда мы используем Artifact Dependency, как развернуть пакет сборки, который был последней сборкой в ​​​​конфигурации сборки, а не последней последней сборкой набора изменений. В случае более старой сборки набора изменений для развертывания после более позднего набора изменений teamcity, похоже, не использует более старую версию в зависимости от artifcat.

Заранее благодарю за любую помощь.

Сарат


person user3865301    schedule 28.04.2017    source источник


Ответы (2)


Параметры пользовательского интерфейса не позволяют загрузить последнюю сборку, если она была «исторической». Вы можете использовать REST API для загрузки файлов в сборке. script, так как это позволяет гибко выбирать сборки. например request .../app/rest/builds/buildType(id:)/artifacts/content/ должен предоставить вам файл из последней сборки, даже если она является исторической.

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

Чтобы убедиться, что конкретная сборка будет развернута, запустите сборку развертывания, вызвав Actions / Promote, стоя на развертываемой сборке: таким образом фактическое условие зависимости артефакта будет принудительно привязано к конкретной сборке. Любой можно развернуть любой билд, в том числе и не самый последний.

Также рассмотрите возможность использования рекомендуемого подхода и настроить зависимость Snapshot между сборками, чтобы получить визуализацию на вкладке Dependencies сборки и вкладках проекта/конфигурации Build Chains.

person Yaegor    schedule 29.04.2017
comment
Спасибо, Егор, извиняюсь, что не вернусь раньше. В качестве временной установки мы используем общую кассу для промежуточной и живой среды. Ваше решение кажется многообещающим, сейчас я не смогу его попробовать. Когда у меня будет время, я попробую ваш подход. Спасибо - person user3865301; 15.05.2017

Значение по умолчанию зависимости от артефакта — Build from same chain.

Вы можете установить Use last successful build для зависимости от артефакта конфигурации Build.

person Didier Aupest    schedule 28.04.2017
comment
В Teamcity 9.5 нет последней успешной сборки. Последняя успешная сборка, указанная в документации, относится к последней успешной сборке последнего набора изменений. Если после этого я выполняю сборку на один или два набора изменений старше, teamcity всегда игнорирует это. - person user3865301; 28.04.2017