You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署时如何在Python脚本中直接访问BitBucket变量?

解决BitBucket变量在Python脚本中无法读取的问题

核心代码修正

你的Python代码里os.getenv()的参数存在错误——不需要加$符号,os.getenv()接收的是环境变量的名称,而非Shell中引用变量的语法格式。

修正后的代码:

import os

connection_parameters = {
    "account": os.getenv('account'),
    "user": os.getenv('user'),
    "password": os.getenv('password')
}

确认BitBucket变量注入逻辑

BitBucket的Repository/Deployment Variables默认会自动注入到Pipeline步骤的环境变量中,既然你能在yml里用expr正常读取,说明变量已经存在于运行环境中。只要修正Python代码的参数,就能直接读取到变量值。

如果需要验证变量是否正常注入,可以在Pipeline的脚本步骤中临时添加调试输出(注意不要泄露敏感信息):

pipelines:
  default:
    - step:
        name: 运行Python脚本
        script:
          - echo "调试:account变量值为 $account" # Shell语法需加$
          - python main.py

额外排查点

  • 确保BitBucket中配置的变量名称和Python代码中使用的完全一致(区分大小写)
  • 敏感变量(如password)在BitBucket中会被自动隐藏,但不影响Python读取
  • 若仍有问题,可在Python脚本中临时打印所有环境变量排查:print(dict(os.environ))(测试后务必删除该行)

内容的提问来源于stack exchange,提问作者Nairda123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 03:42:10