当前位置: 首页 > wzjs >正文

慢慢网站建设深圳seo关键词优化

慢慢网站建设,深圳seo关键词优化,鞍山做网站优化,软件公司怎么找客户📄 Jenkins Pipeline 与 Python 脚本之间使用环境变量通信指南 ✅ 目标 在 Jenkins Pipeline 中设置环境变量在 Python 脚本中读取这些变量构造可访问的日志链接(artifact URL)用于钉钉/邮件通知中的日志路径拼接 🧩 一、Jenkin…

📄 Jenkins Pipeline 与 Python 脚本之间使用环境变量通信指南

✅ 目标

  • 在 Jenkins Pipeline 中设置环境变量
  • 在 Python 脚本中读取这些变量
  • 构造可访问的日志链接(artifact URL)
  • 用于钉钉/邮件通知中的日志路径拼接

🧩 一、Jenkinsfile 设置环境变量(Windows 批处理方式)

✅ 示例:在 bat 块中设置变量

stage('Send Notification') {steps {script {dir("${env.WORKSPACE_DIR}") {bat """@echo onset PYTHONIOENCODING=utf-8set LATEST_LOG_DIR=2025-06-23-19-48-33_android_10CF4809DD002B4set BUILD_URL=http://localhost:8080/job/AndroidSmokePipline/35/.venv\\Scripts\\python jenkins\\notification_sender.py"""}}}
}

💡 注意:

  • 使用 set VAR_NAME=value 设置变量
  • 变量只对当前命令行会话有效
  • Python 脚本必须在同一会话中执行才能读取到变量

🧩 二、Python 脚本中读取 Jenkins 环境变量

✅ 示例:在 [notification_sender.py] 中获取变量

import osdef get_environment_variables():"""获取 Jenkins 传入的环境变量"""env_vars = {"LATEST_LOG_DIR": os.getenv("LATEST_LOG_DIR"),"BUILD_URL": os.getenv("BUILD_URL"),"JOB_NAME": os.getenv("JOB_NAME"),"BUILD_NUMBER": os.getenv("BUILD_NUMBER"),"WORKSPACE": os.getenv("WORKSPACE"),"NODE_NAME": os.getenv("NODE_NAME")}missing_vars = [k for k, v in env_vars.items() if v is None or v == '']if missing_vars:print(f"⚠️ 缺少以下环境变量: {missing_vars}")return env_vars

✅ 使用示例:构造 artifact 日志链接

def build_log_url(build_url, log_dir):if not build_url or not log_dir:return "未知"return f"{build_url.rstrip('/')}/artifact/SuuntoTest/log/{log_dir}/"# 示例调用
env_vars = get_environment_variables()
log_url = build_log_url(env_vars["BUILD_URL"], env_vars["LATEST_LOG_DIR"])
print(f"测试日志访问地址: {log_url}")

📦 三、Jenkins 内置常用环境变量一览

Jenkins 环境变量含义示例值
BUILD_URL当前构建页面地址http://localhost:8080/job/MyJob/35/
JOB_NAME任务名称AndroidSmokePipline
BUILD_NUMBER构建编号35
WORKSPACEJenkins 工作空间根目录C:\ProgramData\Jenkins\.jenkins\workspace\AndroidSmokePipline
NODE_NAME当前执行节点名windows-agent-01

🔁 四、完整流程图

graph LRA[Jenkins Pipeline] --> B[bat 命令行]B --> C{设置环境变量}C --> D[`set LATEST_LOG_DIR=...`]C --> E[`set BUILD_URL=...`]D --> F[启动 Python 脚本]F --> G[Python 使用 `os.getenv()` 读取变量]G --> H[构造 artifact 日志链接]H --> I[发送钉钉/邮件通知]

🧪 五、调试建议

✅ 在 Jenkinsfile 中打印变量值:

bat """echo 当前环境变量:set
"""

✅ 在 Python 中打印所有环境变量:

import osdef print_all_env_vars():print("=== Jenkins 注入的环境变量 ===")for key, value in sorted(os.environ.items()):print(f"{key}={value}")

这样你可以看到 Jenkins 自动注入了哪些变量,以及你在 bat 中手动设置的变量是否生效。


📌 六、常见问题排查

问题原因解决方法
os.getenv("LATEST_LOG_DIR") 返回 NoneJenkinsfile 没有正确设置该变量检查 Jenkinsfile 中的 set LATEST_LOG_DIR=... 是否存在
❌ 构造出的日志链接不完整Jenkinsfile 或 Python 路径拼接错误确保使用 /artifact/ 路径,并且 Jenkins 成功归档了日志目录
✅ 如何查看当前所有可用变量?使用 setos.environ推荐在 Python 中打印全部环境变量调试

http://www.dtcms.com/wzjs/307467.html

相关文章:

  • 广东企业网站建设公司价格怎样建网站?
  • 汕头网站建设托管天眼查企业查询入口
  • 彩妆做推广的网站国内最新的新闻
  • 一个人看的日本在线视频观看网站优化推广外包
  • 网站给假冒伪劣产品做推广站长统计入口
  • 个人旅游网站模板软件怎么推广
  • 网络公司排行惠州百度seo哪里强
  • 茂名网站建设公司企业网站建设哪家好
  • 中山高端网站建设价格十大互联网平台
  • 企业网站管理系统破解版百度关键词热度查询
  • 电商网站开发视频网址提交百度
  • 怎么做网站教程 用的工具网络推广培训
  • 成都学生网站制作seo优化方法网站快速排名推广渠道
  • 中英文网站怎么实现网络营销能干什么工作
  • 电子商务网站建设与管理的实验报告关键词seo优化公司
  • 沈阳网站设计外包新浪疫情实时数据
  • 政府网站建设先进个人网络营销师月薪
  • 怎么查询网站ftp地址semester at sea
  • 商丘加盟小吃网站大连做优化网站哪家好
  • 中央政府网站长沙seo管理
  • 网站建设优化哪家专业seo引流什么意思
  • 鸡西做网站产品营销策划方案怎么做
  • 小程序开发平台哪家比较被大家认可seo工程师是做什么的
  • 石家庄网站建设多少钱网络上市场推广
  • 江苏省建设厅新疆办网站首页百度收录查询方法
  • 呼和浩特做网站的外贸谷歌推广怎么样
  • 大连公司做网站注册商标查询官网入口
  • 二手书哪个网站做的好关键词推广怎么做
  • 个人网站建设流程图一套完整的运营方案
  • 程序员给别人做的网站违法怎么去做网络推广