我想在管道中添加“创建工作项”步骤。它应该是在管道发生故障时创建错误单。我在自己的虚拟机上运行管道,因此我必须登录 Azure 并且我想为其使用服务主体:
az login --service-principal -u <app-id> -p <password-or-cert> --tenant <tenant>
我相信这一步效果很好,因为我收到了回复(如下面的屏幕截图所示)。接下来,我执行命令来创建错误单:
az boards work-item create --organization https://dev.azure.com/my_org --project "Project" --type Bug --title "title" --description "desc" --output json --assigned-to ...
此时我不断收到错误:
"TF401444: Please sign-in at least once as: credentials/of/tenant in a web browser to enable access to the service".
执行截图
我已经尝试使用我的帐户凭据进行登录
az login -u mail -p psw
它工作正常,并且创建了错误票证,但正如您可以猜到的那样,我不想继续使用我的登录凭据在管道中登录到 Azure。
我还尝试使用 PAT 来实现,命令如下:
echo $(PAT) | az login
但这需要我连接到虚拟机才能登录我的帐户并通知一条消息:
WARNING: A web browser has been opened at https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize. Please continue the login in the web browser. If no web browser is available or if the web browser fails to open, use device code flow with az login --use-device-code.
记录后,还创建了错误票证,但我不想每次执行都执行此操作,因为管道应该是自动化的。
你知道我怎样才能摆脱这个错误吗?
或者您对更好的日志记录有什么建议吗?