在Jenkins上以管理员身份运行批处理文件?

问题描述 投票:10回答:4

我们正在Win8 x64上使用Jenkins来构建(msbuild),打包(cspack),运行(csrun)和测试(nunit)一个Azure云服务项目。 Azure云服务仿真器需要以管理员身份运行,并且我们需要绑定到端口80/443(因此不能使用“精简”仿真器)。

我们通过Jenkins运行的简单.bat文件进行上述操作。通常,没有用户登录到计算机,它会启动,并且Jenkin作为服务运行,可以持续监视我们的GIT存储库和有关故障的电子邮件。管理员手动登录到机器中只是为了维护(例如,应用补丁或重启机器等)

我们如何配置Jenkins以管理员身份运行该.bat,而无需人工干预?

使用桌面用户界面,我们可以右键单击命令提示符,以admin身份运行,确认UAC提示符,获取特权提升提示,然后运行.bat文件。

batch-file azure jenkins msbuild administrator
4个回答
21
投票
希望在新的Jenkins版本中,它可以作为标准的网络服务使用,但由于某些原因,它不能与我们的包装盒一起使用。

2
投票

在奴隶中创建蝙蝠文件。

    创建文件的快捷方式,然后右键单击快捷方式,属性->高级->检查运行方式管理员。
  1. 控制面板->系统和安全->操作中心->更改用户帐户控制设置,并将级别设置为“从不通知”。
  2. 在Jenkins上运行文件
  • 以某种方式,该文件将在从属服务器上执行,但在Jenkins上返回失败。

  • 0
    投票

    0
    投票
    我需要使用管理员特权控制台来运行pywinauto脚本(以python编写),以自动化一些需要管理员特权的应用程序。

    我尝试过的:

    根据我的经验,将Windows Jenkins从属服务器安装为服务,会引起更多问题,因此,我不走这条路。

      要创建一个新进程,它将打开一个新的管理员特权外壳并在其上运行命令。但是,以这种方式,詹金斯将不会显示其输出,例如在Blue Ocean中。
  • 对我有用的东西:
  • 只需手动打开管理员特权控制台以启动your_window_node.jnlp文件,然后此Jenkins从属将具有管理员特权。

  • © www.soinside.com 2019 - 2024. All rights reserved.