如何从Jenkins向PIP安装提供Artifactory凭据

eqoofvh9  于 2023-08-03  发布在  Jenkins
关注(0)|答案(1)|浏览(109)

我有一个artifactory存储库,需要凭证才能下载/安装。当我在本地从命令行运行pip install ...时,它会提示我输入凭据,我可以很好地输入我的artifactory凭据。我不知道如何在Jenkins上运行相同的脚本来为artifactory提供这些凭证。
Jenkins似乎有几个插件用于管理凭据,如https://jfrog.com/help/r/jfrog-integrations-documentation/configuring-jenkins-artifactory-plug-in?tocId=hB8yvLfVD7HRdvBLjM9adQ,但这些插件只能从管道脚本本身工作,我不知道如何将其线程到pip。
我实际上有两个选择:(1)从artifactory作为pip仓库安装,或者(2)通过git+ssh://...从git仓库安装。这两个选项都不清楚如何将凭证从管道脚本传递到pip install命令。
如何将ssh或artifactory凭据从Jenkins传递到pip install

zqdjd7g9

zqdjd7g91#

基于pip docs,你可以使用简单的auth和用户名-密码jenkins凭证:

stage('Example') {
  environment { 
    PIP_CREDS = credentials('my-predefined-secret-text') 
  }
  steps {
    sh pip install https://$PIP_CREDS@pypi.company.com/simple
  }
}

字符串
如果您使用特殊字符-您可以使用.netrc文件和secretFile jenkins credentals或从用户名-密码credentals中的$PIP_CREDS_USR $PIP_CREDS_PSW变量构建它:

withCredentials([file(credentialsId: 'PIP_NETRC', variable: 'my-netrc')]){
  sh "cp $my-netrc /path/to/netrc/file/location" 
}


你也可以设置.netrc路径与$my-netrc变量为pip(检查pip文档)

相关问题