我正在使用 Powershell DSC 设置 Windows Server 2012 R2 盒子。作为配置过程的一部分,我将配置 jfrog.exe 并作为服务帐户执行配置命令:
jfrog rt config --url=$localArtifactoryInstance --user=$username --apikey=$apikey
Run Code Online (Sandbox Code Playgroud)
此命令按预期在服务帐户的主目录 (C:\Users\$serviceAccount.jfrog.jfrog-cli.conf) 中创建 .jfrog.jfrog-cli.conf,其中包含 URL/用户名/apiKey。
配置后,此服务帐户负责将工件从一个存储库“提升”到另一个存储库:
jfrog rt move '$devRepo/(Org)/(Org.Common.Configuration)/Org.Common.Configuration.1.0.0.nupkg' '$prodRepo/{1}/{2}/'
Run Code Online (Sandbox Code Playgroud)
该命令被拒绝并返回 401:
[Error] Artifactory response: 401 Unauthorized
{
"errors": [
{
"status": 401,
"message": "Bad authentication. Provided username or password are incorrect."
}
]
}
Run Code Online (Sandbox Code Playgroud)
但是,当我将jfrog-cli.conf 中已配置的相同 API 密钥添加到命令中时:
jfrog rt move '$devRepo/(Org)/(Org.Common.Configuration)/Org.Common.Configuration.1.0.0.nupkg' '$prodRepo/{1}/{2}/' --ApiKey $apiKey
Run Code Online (Sandbox Code Playgroud)
成功了,我可以通过 Artifactory UI 验证是否成功。