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

Bitbucket自定义手动部署流水线未正确加载Staging环境变量

Bitbucket自定义流水线任务未加载Staging部署变量的解决方案

可能的原因及解决步骤

1. 核对部署环境变量的配置

  • 进入仓库的Settings > Pipelines > Deployments,确认staging环境已创建,且添加了与仓库级开发变量同名的部署变量(比如FIREBASE_PROJECT=app-staging)。Bitbucket的规则是:部署级变量会覆盖同名的仓库级变量,若变量名称不一致则不会触发覆盖。
  • 检查部署级变量的取值是否正确,避免误填为开发环境的值。

2. 检查staging.sh脚本的变量引用逻辑

  • 打开scripts/staging.sh,确认脚本中是通过环境变量调用配置,而非硬编码开发环境信息。例如:
    正确写法:
    firebase deploy --project "$FIREBASE_PROJECT" --only hosting
    
    错误写法(硬编码dev项目):
    firebase deploy --project app-dev --only hosting
    
  • 若脚本依赖其他变量,需确保这些变量已在staging部署环境中正确配置。

3. 验证自定义流水线的触发上下文

  • 手动运行manualStagingDeploy任务时,确认Bitbucket触发界面显示的关联环境为staging,而非默认的开发环境。若有环境选择选项,务必选中staging。

4. 日志排查变量注入情况

  • 在staging.sh开头添加调试语句,输出关键变量值:
    echo "DEBUG: FIREBASE_PROJECT = $FIREBASE_PROJECT"
    
  • 重新运行任务后,查看流水线日志的开头部分,确认Injecting environment variables区域是否加载了staging环境的变量,同时检查调试语句的输出是否符合预期。

5. 确认部署环境名称的大小写匹配

Bitbucket的部署环境名称大小写敏感,需确保bitbucket-pipelines.yml中deployment: staging的取值与仓库配置的部署环境名称完全一致(比如不能是Staging或STAGING)。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 22:38:16