0

我正在尝试构建一个 docker 映像作为我项目管道的一部分,并将一些凭据作为机密传递。妥协的路线是

DOCKER_BUILDKIT=1 docker build --secret id=ARTIFACTORY_USERNAME --secret id=ARTIFACTORY_PASSWORD -f "$DOCKERFILE" context

我收到以下错误

could not parse secrets: [id=ARTIFACTORY_USERNAME id=ARTIFACTORY_PASSWORD]: failed to stat ARTIFACTORY_USERNAME: stat ARTIFACTORY_USERNAME: no such file or directory

奇怪的是,如果我手动执行它,它可以在 Jenkins 执行它的同一台机器上工作。

詹金斯在开始执行和到达可能与此混淆的脚本之间有什么事情吗?

4

1 回答 1

0

听起来 Jenkins 代理没有设置环境变量。您可以执行 aprintenv或 anecho在您的管道中检查这一点。

但值得检查在管道中设置这些环境变量的逻辑。

于 2021-12-17T16:23:52.940 回答