Jenkinsfile 是否可以使用 ssh 部署密钥对 repo 进行内联检出?
Jenkinsfile inline checkout of a repo using ssh deploy keys possible?
我正在检查 Jenkinsfile 中的内联回购协议,如下所示 installing/running :
checkout([$class: 'GitSCM', branches: [[name: '*/develop']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: '../myRepoFolder']], userRemoteConfigs: [[credentialsId: '92312d0c-12301230-12931293-f92124', url: 'https://github.com/MyOrg/my-repo']]])
container('node') {
dir('../myRepoFolder'){
//run some command on folder - npm ci, npm start etc...
}
}
这有一段时间工作正常,但后来我们从使用 https git url 的标准身份验证切换到使用部署密钥的 ssh 身份验证 - 因此上述内联结帐不再有效
我有一个 Jenkins 凭证 (deploy-key
) 设置,我的私钥设置有 my-repo
。我如何修改 Jenkins checkout()
命令以使用 ssh 以与上述相同的方式检查我的存储库?
使用 SSH 凭据和 SSH URL:
checkout([$class: 'GitSCM', branches: [[name: '*/develop']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: '../myRepoFolder']], userRemoteConfigs: [[credentialsId: '<gitSshCredentials>', url: '<gitRepoSshURL>']]])
我正在检查 Jenkinsfile 中的内联回购协议,如下所示 installing/running :
checkout([$class: 'GitSCM', branches: [[name: '*/develop']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: '../myRepoFolder']], userRemoteConfigs: [[credentialsId: '92312d0c-12301230-12931293-f92124', url: 'https://github.com/MyOrg/my-repo']]])
container('node') {
dir('../myRepoFolder'){
//run some command on folder - npm ci, npm start etc...
}
}
这有一段时间工作正常,但后来我们从使用 https git url 的标准身份验证切换到使用部署密钥的 ssh 身份验证 - 因此上述内联结帐不再有效
我有一个 Jenkins 凭证 (deploy-key
) 设置,我的私钥设置有 my-repo
。我如何修改 Jenkins checkout()
命令以使用 ssh 以与上述相同的方式检查我的存储库?
使用 SSH 凭据和 SSH URL:
checkout([$class: 'GitSCM', branches: [[name: '*/develop']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: '../myRepoFolder']], userRemoteConfigs: [[credentialsId: '<gitSshCredentials>', url: '<gitRepoSshURL>']]])