Azure构建管道依赖于使用SSH的私有AZ存储库

sqyvllje  于 2022-11-25  发布在  其他
关注(0)|答案(1)|浏览(155)

找到一个解决方案来使用私有存储库Azure build pipeline with dependency on private AZ repo与帮助ssh密钥
我能够为我的机器设置ssh并成功克隆repo
但是如何在Azure管道中配置ssh?
从这个链接尝试解决方案Azure build pipeline with dependency on private AZ repo,它只适用于本地

gzszwxb4

gzszwxb41#

你可以按照以下步骤配置管道(YAML),以将Git存储库从Azure存储库克隆到Azure管道中的代理。
1.如果尚未生成现有的SSH密钥对,请参考此处,在本地计算机上使用**ssh-keygen**命令生成SSH密钥对。

1.生成SSH密钥对后,将SSH公钥添加到Azure DevOps上的用户设置SSH公钥页面。请参阅此处。

1.尝试在本地机器上通过SSH克隆Git仓库,以确保SSH可以按预期工作。
1.将SSH私钥上载到Azure DevOps上项目中的安全文件。

1.在Azure管道中,你可以使用Install SSH Key task从安全文件下载SSH私钥并将其安装在代理上。成功安装SSH私钥后,在同一作业的后续任务中,你可以使用SSH克隆Git存储库(例如git clone git@ssh.dev.azure.com:v3/{organization}/{project}/{repositoryName})。
以下是YAML管道的一个示例,作为参考:

jobs:
- job: build
  displayName: 'Build'
  pool:
    vmImage: windows-latest
  steps:
  . . .

  - task: InstallSSHKey@0
    displayName: 'Install SSH Private Key'
    inputs:
      knownHostsEntry: '$(SSHknownHost)'  // The value is the content of 'known_hosts' file.
      sshKeySecureFile: 'id_rsa'
  
  - task: Bash@3
    displayName: 'Clone Repository'
    inputs:
      targetType: inline
      script: |
        echo 'Clone Repository via SSH'
        git clone git@ssh.dev.azure.com:v3/{organization}/{project}/{repositoryName}

  . . .

相关问题