我在使用Jenkins中的Powershell插件尝试使用Powershell -ExecutionPolicy Unrestricted add-appxpackage <path to appx>
安装appx时遇到问题,并记录以下错误:
add-appxpackage : Deployment failed with HRESULT: 0x80073CF9, Install failed.
Please contact your software vendor. (Exception from HRESULT: 0x80073CF9)
Deployment Add operation rejected on package
<path to appx> install request because the Local
System account is not allowed to perform this operation.
NOTE: For additional information, look for [ActivityId]
。
据我了解,此问题主要是因为Windows上的Jenkins服务安装为NT Authority\System
。 (如果我使用psexec.exe
打开以Authority \ System运行的命令提示符,我会遇到同样的问题。)然后我尝试添加net localgroup "Administrators" NT Authority\System /add
,希望该组可能会以管理员身份添加,并让我安装appx,所以我可以运行测试,但没有成功。现在我卡住了,我不确定是否真的有办法通过Jenkins安装appx或者不是OR如果有办法通过Jenkins作为管理员调用Powershell脚本。我已经通过了几个SO链接,但似乎没有一个能解决我面临的问题。任何指针都会受到赞赏。
答案 0 :(得分:1)
不要尝试将系统添加到管理员组,由于某种原因,它是一个受限制的帐户,不需要管理员权限。
而是将Jenkins服务更改为以具有您正在尝试执行的操作的权限的用户身份运行。这可能意味着您需要专门为Jenkins服务创建一个帐户。
有几种方法可以更改服务帐户,this answer提供以下解决方案:
sc.exe config "Service Name" obj= "DOMAIN\User" password= "password"