在詹金斯中隔离管道的秘密

时间:2018-08-08 08:11:54

标签: jenkins jenkins-pipeline devops

我们正在Jenkins中实现类似CI / CD的GitOps。我们将部署到Openshift / Kubernetes的位置。为了简单起见,假设我们只有2个存储库:

  1. 首先提供应用程序源代码,源代码中也有Jenkinsfile定义了构建。 (还将图像推送到存储库。)

  2. 我们有另一个存储库,其中定义了部署管道(jenkinsfile)。该管道将​​映像部署到生产环境(想想“ kubectl apply”)。

问题是管道(2)需要访问用于对生产进行身份验证(针对kubernetes api)的凭据。我们考虑将这些凭据存储在詹金斯中。我们不希望在同一Jenkins中的第一(1)条管道可以访问这些生产凭证。

我们如何用詹金斯解决这个问题? (如何存储这些凭据)

谢谢

1 个答案:

答案 0 :(得分:1)

仅从注释中捕获,实际上是在另一个线程(RRT)中来自@ https://stackoverflow.com/a/42721809/9705485的答案:

  

使用“文件夹和凭据绑定”插件,您可以在文件夹级别定义仅适用于该文件夹内作业的凭据。创建文件夹后,文件夹级别的存储将变为可用。

     

来源:https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs

添加范围凭证(此为dockerhub凭证)的另一个示例是https://liatrio.com/building-docker-jenkins-pipelines/