Как заблокировать кнопку «Выполнить» в TeamCity - PullRequest
17 голосов
/ 25 марта 2011

Я сделал сборку в TeamCity, которая развертывает код на работающем сервере.В качестве меры предосторожности я хочу отключить эту кнопку «Выполнить» может быть нажата по ошибке. Поэтому я хочу иметь дополнительный уровень проверки «Я уверен», я хочу нажать кнопку «Выполнить».Возможно ли это сделать?Заранее спасибо!

Ответы [ 7 ]

16 голосов
/ 28 марта 2011

Не думаю, что есть способ отключить кнопку запуска.

Подход, который я использовал, заключается в том, чтобы иметь свойство, которое передается в скрипт сборки, которое должно быть истинным для запуска скрипта, оно ложно или не установлено, тогда скрипт сборки выдает ошибку. Затем в конфигурации сборки на странице «Свойства и переменные среды» я установил для свойства значение false. Теперь, когда мне нужно запустить скрипт, я должен использовать кнопку " Выполнить пользовательскую сборку " (бит "| ..." рядом с кнопкой запуска), затем я устанавливаю значение в true, прежде чем начинать сборку. кнопка.

5 голосов
/ 07 июля 2011

Другой, более простой вариант - добавить требование к агенту в свою сборку таким образом, чтобы его мог выполнить только агент рабочего сервера (например, env.COMPUTERNAME равно MyProductionServer01), а затем отключить агент с пометкой о «блокировке» производства.строить.Это предотвратит фактический запуск сборки, если вы случайно нажмете кнопку «Выполнить».

4 голосов
/ 30 марта 2011

Вы не можете отключить кнопку запуска, но вы можете установить разрешения, чтобы люди по-прежнему могли просматривать проект без возможности его запуска (в частности, роль «Запуск сборки»).

Что касается подтверждения, в TeamCity нет ничего встроенного, чтобы выполнить это, но я верю, что можно было бы написать небольшой плагин, чтобы получить такую ​​функциональность.

Информация о плагине:

http://confluence.jetbrains.net/display/TCD6/Developing+TeamCity+Plugins

3 голосов
/ 01 сентября 2012

Действительно, невозможно скрыть кнопку «Выполнить», если конфигурация сборки не помещена в другой проект, в котором пользователь не имеет права запускать сборки.

В системе отслеживания проблем TeamCity есть связанный запрос функции .

Что касается запроса подтверждения, прямой поддержки по-прежнему нет , но, поскольку в TeamCity 7.0 можно добавить параметр в режиме «prompt», это приведет к появлению диалогового окна «Выполнить пользовательскую сборку» при нажатии кнопки «Run» нажмите.

1 голос
/ 16 августа 2013

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

Так что в нормальных ситуациях нет риска запускаслучайно.

0 голосов
/ 25 марта 2011

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

0 голосов
/ 25 марта 2011

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

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