依赖于私有AZ回购的Azure构建管道

时间:2019-08-14 18:15:24

标签: azure-devops azure-pipelines

我们在Azure存储库中有一个Angular项目,该项目在依赖项下的packages.json文件中引用了另一个私有Azure项目/存储库。该项目在本地为所有开发人员构建良好,但是在Azure管道中通过身份验证失败。将代码从私有Azure存储库中提取代码到另一个项目构建管道的正确方法是什么?

我将访问协议从ssh更改为https,并做了很多有关如何实现此目的的阅读。我已经阅读了有关个人访问令牌的信息,但这似乎不是一个好的解决方案。

"core-js": "^2.5.4",
"xxx": "git+https://xxx@dev.azure.com/xxx/xxx#master",
"date-fns": "^1.30.1",

注意:该错误表明是致命的:'https://dev.azure.com/ ...的身份验证失败,该身份不包括依赖项URL中提供的用户名。

1 个答案:

答案 0 :(得分:2)

同意您的。我还认为使用PAT令牌不是一种安全方式,因为它不能完全公开令牌。

如果要使用SSH,首先需要确保要安装的存储库在根目录下具有package.json。

然后,使用命令vssh-keygen -t rsa生成一对公钥/私钥。之后,您可以按照以下文档操作:Use SSH key authentication将其安装到您的组织中。

使用SSH克隆存储库,这将使您的客户端接受服务器表示的指纹。然后,进入存储库页面,获取用于克隆存储库的SSH URI,并将其添加到package.json文件的依赖项部分:

 "dependencies": {
    "testproj": "git+ssh://account@ssh.visualstudio.com:v3/{org name}/{project name}/{repos name}"
  }