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

如何通过Bitbucket Pipeline将完整构件文件夹上传至Downloads?

解决Bitbucket Pipeline上传文件夹到Downloads的问题

Bitbucket的Downloads API并不支持直接上传整个文件夹,所以咱们得换个思路:先把覆盖率报告文件夹打包成压缩文件,再上传这个压缩包。下面是具体的修改方案:

步骤说明

  1. 确保构件传递完整:首先在测试步骤的artifacts配置里,要加上斜杠匹配文件夹下的所有内容,这样整个unit-test-cover-report文件夹才能完整传递到后续的上传步骤。
  2. 打包文件夹:在上传步骤里,先用zip命令把整个文件夹压缩成一个zip包(如果你的测试镜像没有预装zip,可能需要先安装,不过大多数测试镜像都会包含这个工具)。
  3. 上传压缩包:用curl上传生成的zip文件到Bitbucket Downloads。

修改后的bitbucket-pipelines.yml代码

pipelines:
  default:
    - step:
        name: unit tests cover report
        image: aztec2docker/polymer-testing-docker
        artifacts:
          - unit-test-cover-report/**  # 确保传递整个文件夹的所有内容
        script:
          - npm i
          - npm run test-cover
    - step:
        name: upload coverage report
        script:
          # 把覆盖率报告文件夹打包成zip
          - zip -r unit-test-cover-report.zip unit-test-cover-report/
          # 上传zip包到Bitbucket Downloads
          - curl -X POST --user "${BB_AUTH_STRING}" "https://api.bitbucket.org/2.0/repositories/${BITBUCKET_REPO_OWNER}/${BITBUCKET_REPO_SLUG}/downloads" --form files=@"unit-test-cover-report.zip"

额外说明

  • 如果你的镜像里没有zip命令,可以在上传步骤的开头先安装(基于Debian/Ubuntu的镜像):
    apt-get update && apt-get install -y zip
    
  • 上传完成后,用户就能在仓库的Downloads页面下载这个zip包,解压后就能看到完整的覆盖率报告文件夹内容了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:57:10