Python 如何通过jenkins build重新启动apache2服务
在通过jenkins为我的django项目设置部署时,我陷入了必须重新启动apache2服务以反映客户端的新变化的困境。我不知道在运行Python 如何通过jenkins build重新启动apache2服务,python,django,apache,jenkins,Python,Django,Apache,Jenkins,在通过jenkins为我的django项目设置部署时,我陷入了必须重新启动apache2服务以反映客户端的新变化的困境。我不知道在运行systemctl reload apache2.service命令后如何提供用户密码 我尝试了以下选项,但没有运气 1) systemctl重新加载apache2.服务 结果: Failed to reload apache2.service: Interactive authentication required. See system logs and 's
systemctl reload apache2.service
命令后如何提供用户密码
我尝试了以下选项,但没有运气
1) systemctl重新加载apache2.服务
结果:
Failed to reload apache2.service: Interactive authentication required.
See system logs and 'systemctl status apache2.service' for details.
Build step 'Execute shell' marked build as failure
2) sudo systemctl重新加载apache2.服务
结果:
sudo: no tty present and no askpass program specified
Build step 'Execute shell' marked build as failure
3) 也不确定sshpass
在这种情况下是否有帮助
附加截图从詹金斯的工作
如前一条评论所述,您在此处的权限有问题 我假设您的Jenkins实例在用户“Jenkins”下运行,该用户无法执行admin(root)命令。因此,您需要通过SSH登录到机器中,并确保用户“jenkins”可以使用
sudo
执行此命令
您可以在此处找到有关编辑sudoers
文件的帮助:。我建议您只允许某些命令
如果您决定“jenkins”用户需要输入密码,请使用以下命令:
echo password | sudo -S systemctl reload apache2.service
当然,您应该以安全的方式存储该密码,并在构建中屏蔽它。可以帮助您解决此问题。看看这是否有助于解决问题。非常感谢:)