Недавно я был назначен ответственным за всю работу, связанную с Дженкинсом, на моей работе, и мне было поручено хранить артефакты сборки из наших декларативных конвейеров в месте, где:
- Они доступны каждому в команде
- Они могут храниться в течение длительных периодов времени
В идеале они должны быть видны на интерфейсе Jenkins, где они появляются при использовании стандартной команды archiveArtifacts. Я знаю, что это сохраняет их в каталоге JENKINS_HOME. Проблема в том, что мне нужно отказаться от старых сборок, чтобы избежать нехватки места, и артефакты удаляются вместе с ними. Кроме того, у меня нет доступа к серверу, на котором работает Jenkins, потому что он управляется отдельной командой, поэтому я не могу зайти в JENKINS_HOME.
Я изучил несколько ARM, таких как Nexus и Artifactory, но, насколько я понимаю, они должны использоваться только для полных версий. Я стараюсь сохранять артефакты после каждого нового слияния, которое может происходить несколько раз в день.
В настоящее время я сохраняю их в домашнем каталоге функционального пользователя, но я единственный, кто имеет к нему прямой доступ, так что это бесполезно. Я также изучил плагины, такие как ArtifactDeployer, который не поддерживает конвейеры и выполняет только команду cp, насколько я могу судить.