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

Bitbucket Pipeline中curl输出文件丢失及Heroku部署问题

Bitbucket Pipeline curl下载文件丢失问题解决办法

核心原因

你当前用的是parallel并行步骤,Bitbucket Pipeline的并行步骤是完全独立的运行环境,Run build步骤里下载的file.json不会自动同步到Zip the sources步骤,这就是文件找不到的关键原因。

两种修复方案

方案1:取消并行,合并成单一步骤(最简单直接)

把构建和打包的逻辑合并到同一个步骤里,这样下载的文件就能被后续的tar命令包含:

branches:
  development:
    - step:
        name: Build & Package
        caches:
          - node
        script:
          # 先确保目标目录存在,避免curl因目录不存在失败
          - mkdir -p ./filefolder
          - curl -X GET "https:myurl.com/file.json" -o ./filefolder/file.json
          - export NODE_OPTIONS=--max-old-space-size=3072
          - npm install
          - npm run build
          - npm test
          - mkdir heroku
          - tar -czf ../tmp/123.tar.gz .
          - cd heroku
          - mv ../../tmp/123.tar.gz .
        artifacts:
          - heroku/**

方案2:保留并行,用artifacts传递文件

如果必须保留并行结构,需要在Run build步骤里配置artifacts输出下载的文件,让Zip the sources步骤能获取到:

branches:
  development:
    - parallel:
        - step:
            name: Run build
            caches:
              - node
            script:
              - mkdir -p ./filefolder
              - curl -X GET "https:myurl.com/file.json" -o ./filefolder/file.json
              - export NODE_OPTIONS=--max-old-space-size=3072
              - npm install
              - npm run build
              - npm test
            artifacts:
              # 把下载的文件标记为输出产物
              - filefolder/file.json
        - step:
            name: "Zip the sources"
            script:
              - mkdir heroku
              # 此时artifacts已经被自动下载到当前目录,打包会包含filefolder/file.json
              - tar -czf ../tmp/123.tar.gz .
              - cd heroku
              - mv ../../tmp/123.tar.gz .
            artifacts:
              - heroku/**

额外要检查的点

  • 一定要加mkdir -p ./filefolder:curl不会自动创建目录,如果目录不存在,curl看起来执行成功,但实际没写入文件
  • 确认tar命令的路径:tar -czf ../tmp/123.tar.gz .是打包当前目录所有内容,确保filefolder在当前目录下,会被包含进去
  • 最后验证Heroku部署时是否正确解压了tar包,确保文件被放到了预期路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 16:05:58