python - 检查python脚本是否由jenkins触发
问题描述
我的项目中有一个 python 脚本。根据是手动运行还是通过Jenkins运行,我需要做出不同的响应。到目前为止,我想出的唯一解决方案是通过 Jenkins 设置一个环境变量并在脚本中检查这个 var。
有没有人遇到过类似的问题并且可以以不同的方式解决它?
解决方案
如果您只想避免设置环境变量,但仍更喜欢使用现有的环境变量,您可能需要使用https://plugins.jenkins.io/envinject/#EnvInjectPlugin-BuildCauses,它会在环境变量中公开以下变量:BUILD_CAUSE =MANUALTRIGGER BUILD_CAUSE_MANUALTRIGGER=true 在手动触发的情况下。它在内部检查哪些原因触发了构建,可能有很多,例如 SCMTriggerCause、TimerTriggerCause 等。
推荐阅读
- rest - REST API 中下载的正确 http 动词是什么?
- r - 当数据集过滤为零观察值时,按周获得零计数并分组
- angularjs - 如何访问AngularJS中两个网页之间的过滤对象数组?
- wolfram-mathematica - 如何检查符号是否已定义
- android - “应用名称”不支持此处插入图片
- php - php 7 从 xsd 构建 xml
- php - 自定义“前缀”分隔符
- node.js - Babel 导入文件 - 未捕获的异常:错误:找不到模块 './channel'
- python - 将“set”对象转换回其查询集对象
- sql-server - 仅在 sql server 中获取最小记录