#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 является оптимальным с точки зрения времени, пропускной способности и общих усилий по управлению.