Я думаю, что вы на самом деле задаете два разных вопроса здесь;одна касается управления правами доступа к сборкам TeamCity, а другая - логистикой управления артефактами.
Что касается разрешений, я предполагаю, что вы подразумеваете под "только люди с определенной ролью / разрешением могут запускать сценарий развертывания".в производство », и вы ответили Жюльену, что вы, вероятно, не хотите, чтобы разработчики развертывали непосредственно в производство, но вы делаете хотите, чтобы они могли видеть другие сборки в проекте.Возможно, это также похоже на сценарий Жюльена, когда ИТ-специалисты затем переводят процесс в автономный режим из TeamCity (либо это, либо просто ИТ-отдел делает то, что делают ИТ-специалисты, и настаивает на том, что они должны использовать отдельный, совершенно неэффективный процесс, потому что «это именно то, как мы это делаем»)."- не начинайте меня!)
Проблема в том, что все разрешения в TeamCity применяются к проекту , а не к build , поэтому еслиу вас есть один проект со всеми вашими сборками, нет возможности применить детализацию разрешений к разработчикам по сравнению с производственными сборками.Ранее я имел дело с этим двумя способами:
- Обращайтесь с этим социально.Каждый знает, каковы их обязанности, и вы не управляете тем, что вам не предназначено.Если вы это сделаете, это проверяется и прослеживается обратно к вам.Работайте нормально, когда есть зрелость, четкое представление об обязанностях, а не требование соответствия, которое запрещает это.
- Создайте отдельные проекты.Мне не нравится делать это, но решает проблему.Вы по-прежнему можете использовать артефакты из другого проекта, а это означает, что вы просто получите один проект, содержащий сборки, развертываемые в средах, к которым вы готовы получить доступ ко всем разработчикам, и другой проект в чувствительных средах.Недостатком является то, что в случае сбоя производственной сборки те люди, от которых вы, вероятно, нуждаетесь в поддержке, не смогут получить к ней доступ *
Что касается управления артефактами, то нет проблем с их сохранением всборка разработки, просто определите политику очистки, которая сохраняет артефакты только от последних сборок X, если вас беспокоит емкость.Многим людям нужна уверенность, что они развертывают один и тот же скомпилированный вывод в каждой среде, что означает, что после того, как вы его создадите, вы захотите сохранить его для дальнейшего использования.
Как только вы получите эти артефакты из вашего развертывания dev,вы можете повторно развернуть их в других средах с помощью отдельных сборок.У вас возникнут проблемы с конфигурационными преобразованиями (при условии, что вы их используете), но прочитайте эту серию из 2 частей , чтобы найти некоторые идеи о том, как решить эту проблему (я еще не освоил это вподробно, но я верю, что он на правильном пути).
Это отвечает на ваш вопрос?Чего-то еще не хватает?