我们在 Win8 x64 上使用 Jenkins 来构建 (msbuild)、打包 (cspack)、运行 (csrun) 和测试 (nunit) azure 云服务项目。 Azure云服务模拟器需要以管理员身份运行,并且我们需要绑定(bind)到端口80/443(因此不能使用“lite”模拟器)。
我们通过 Jenkins 运行的简单 .bat 文件执行上述操作。通常情况下,没有用户登录到机器,它会启动,Jenkin 作为一项服务运行,持续监控我们的 GIT 存储库和故障电子邮件。管理员手动登录机器只是为了维护(例如应用补丁或重新启动机器等)
我们如何配置 Jenkins 以管理员身份运行该 .bat,无需人工交互?
使用桌面 UI,我们可以右键单击命令提示符,以管理员身份运行,确认 UAC 提示符,获取提升的权限提示符并运行 .bat 文件。
最佳答案
我们的解决方案是以单独的本地管理员用户身份运行 Jenkins 的服务。安装Jenkins后,开始=>“服务”=>滚动到Jenkins服务=>右键单击=>属性=>“登录”=>“此帐户”=>指定本地管理员帐户。
希望在新的 Jenkins 版本中它可以作为标准网络服务工作,但由于某种原因它不能与我们的盒子一起工作。
关于batch-file - 在 Jenkins 上以管理员身份运行批处理文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27413261/