我想使用pip为我的python应用安装私有软件包。
我的软件包存储在 Azure DevOps (Visual Studio Team Services)上的git仓库中。
我看到了git is supported by pip,但是我无法确定Azure的URL的可行格式。
我想避免使用Credential Manager。我已经尝试了git + ssh(带密钥)和git + https(带个人访问令牌)。
是否可以使用Azure / VSTS做到这一点?
对于上下文,我引用了以下资源:
https://www.revsys.com/tidbits/using-private-packages-python/
Is it possible to use pip to install a package from a private github repository?
这是我的一些尝试:
git+https://myUsername:myAccessToken@myCompany.visualstudio.com/myProject/_git/myPackage.git
git+https://<myAccessToken>@visualstudio.com/<myCompany>/<myProject>.git@<ref>
git+https://<myUsername>:<myAccessToken>@<myCompany>.visualstudio.com/<myteam>/<myProject>.git@<ref>
git+https://<myUsername>:<myAccessToken>@visualstudio.com/<myCompany>/<myProject>.git@<ref>
git+https://<myUsername>:<myAccessToken>@visualstudio.com/<myCompany>/<myProject>.git@<ref>
git+ssh://myCompany@vs-ssh.visualstudio.com:v3/myCompany/<myProject>.git@<ref>
答案 0 :(得分:2)
有可能,请看一下现有的Request
因此,您需要执行以下步骤,
$(System.AccessToken)
以上是系统变量,您可以找到完整的详细信息here
您也可以使用Rest API like below for getting the access token
$url = "$($env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI)$env:SYSTEM_TEAMPROJECTID/_apis/build-release/definitions/$($env:SYSTEM_DEFINITIONID)?api-version=2.0"
Write-Host "URL: $url"
$pipeline = Invoke-RestMethod -Uri $url -Headers @{
Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"
}
Write-Host "Pipeline = $($pipeline | ConvertTo-Json -Depth 1000)"