git - 为什么直接在节点上运行 cmd 时 Jenkins 不能从 Git 获取?
问题描述
我有一个 Jenkins 管道作业,一开始就从 Git 获取 jenkinsfile。这项工作已经正常运行了很长时间,但今天它不起作用。
- 我直接运行命令但它失败了
- 然后我取消代理并再次运行,它变得OK
- 我像詹金斯一样运行了测试命令
我检查了http://:8080/pluginManager/advanced中的配置,没有代理配置。(实际上我在那里配置了 not-working-proxy 然后运行我的工作,Jenkins 报告“代理超时”,然后我删除了代理配置,它再次报告之前的错误)
然后我检查了 http://:8080/configure ,发现有一个“环境变量”选项,我确实有“https_proxy”。在我删除变量之前,我的 Jenkins 项目配置页面报告: 当我删除变量时,红色警报消息消失了。我似乎至少 Jenkins 主机能够重新识别该 Jenkins 服务器。
看来我已经解决了这个问题,但是当我再次运行该作业时,问题仍然存在:
似乎该错误与我在设置了代理变量的节点上直接运行命令时报告的错误相同。我现在已经删除了所有代理设置。
有什么工具可以用来调查或调试吗?例如,我可以运行任何 Groovy 脚本来弄清楚发生了什么?
注意:此 Git 存储库没有权限限制。实际上,我在那个 Git 实验室上创建了一个公共 Git 存储库,没有任何帐户的任何人都可以克隆该存储库,但这项工作仍然无法正常工作。
我已经实施了一种解决方法:
我没有在 http://:8080/configure 的“环境变量”部分中删除 http_proxy 和 https_proxy,而是保留了这两个变量,但将它们的值设置为空。然后我的工作就可以工作了。
似乎除了查看 Jenkins 插件管理器的“高级”选项卡和“配置系统”页面的“环境变量”部分之外,Jenkins 还试图从其他地方获取环境变量。可能来自 Node 或 Jenkins master 的 .bashrc 文件。
解决方案
推荐阅读
- arrays - 将 foreach 循环输出存储到数组
- c++ - 使用 OpenCV 显示图像时出现异常
- iis - IIS 10 错误 500.19 (0x80070021) - 锁冲突
- flutter - 如何在颤动中使用动画列表对最初渲染的项目进行动画处理
- git - Git如何在旧分支上工作时避免分离头
- opengl - 在 C++ Ogre 或 OpenGL 中,如何进行一次渲染并获得多个具有不同姿势的对象的图像?
- sql - 防止用户更改 PostgreSQL 上的默认权限
- java - Spring Boot - 将文件上传到服务器
- python - 如何删除由 PyCharm 创建的 virtualenv?
- azure - Kudu Azure App Zip Deploy via Powershell - 将文件传输到 wwwroot