Оптимизированная альтернатива хранению файлов в jenkins

#jenkins #jenkins-pipeline #jenkins-groovy

#дженкинс #jenkins-конвейер #дженкинс-заводной

Вопрос:

Конвейер jenkins в настоящее время выполняет сборку и развертывание, сохраняет некоторые файлы, разархивирует их и выполняет сквозные тесты для этих файлов таким образом:

 // build and deploy code 
stash([
    name: 'end-to-end-tests',
    includes: <a bunch of files>
])
unstash('end-to-end-tests')
// code to run tests using npm run test:end-to-end-tests
  

В интересах ускорения этого конвейера, есть ли способ обойти тайник? Мне нужно end-to-end-tests позже запустить мои тесты с помощью соответствующей команды npm, но как я могу использовать это без сохранения (если это возможно)?

Комментарии:

1. stash / unstash используется, когда две операции выполняются на отдельных узлах / рабочих пространствах, но вам необходимо повторно использовать файлы. Если вы можете использовать тот же узел / рабочую область, вам не нужно использовать stash / unstash. В противном случае вам необходимо передать файл (ы) тем или иным способом. Stash удобен, но вы могли бы использовать внешний репозиторий файлов / артефактов (Nexus, Artifactory / NFS / S3 / …)

2. Мы рассмотрели множество альтернатив, включая проверки с зеркалами, и, по нашему опыту, stash / unstash является оптимальным с точки зрения времени, пропускной способности и общих усилий по управлению.