Jenkins 存储不是存储所有文件和文件夹



我有 Jenkinsfile,我试图隐藏 BuildApp 并将其解封到其他 docker 容器中以运行 npm 测试。 但似乎缺少node_modules,因此 npm 测试失败。

steps {
dir("/var/jenkins_home") {
unstash "app"
}
echo "Building app (CLOUD_ENV = ${env.CLOUD_ENV})"
sh 'yarn install'
stash name: "BuildApp", includes: "*"
sh "ls -la ${pwd()}"
}

这就是我试图隐藏的地方,我确实用"ls -la ${pwd((}"进行了调试 我看到node_modules在那里 但是当解开它们时

steps {
dir("/var/jenkins_home") {
unstash "BuildApp"
}
echo "Testing app (CLOUD_ENV = ${env.CLOUD_ENV})"
// unstash 'builtApp'
sh "ls -la ${pwd()}"
sh 'npm test > test.out'
archiveArtifacts artifacts: 'test.out', fingerprint: true
stash name: "testApp", includes: "*"
}

我做了"ls -la ${pwd((}",我可以看到node_modules文件夹不存在。

我做错了什么吗?

我想*只包含当前目录中的文件。在这种情况下,**应该可以解决问题,因为它也匹配路径分隔符。

同样在您的代码中,您unstash与执行ls不同的目录中。我看不出dir命令有任何理由,所以我建议删除它。

最新更新