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

CircleCI部署任务未触发求助:CI分支未执行部署Job

排查CircleCI Deployment任务未触发的问题

我来帮你搞定这个CircleCI部署任务没触发的问题,仔细看了你的配置,发现几个核心问题,咱们一步步修复:

核心问题分析

你的配置在CircleCI 2.0规则下有几个关键错误,导致deployment任务根本不会被执行:

  1. 缺少Workflows配置
    CircleCI 2.0及以上版本中,单独定义的jobs不会自动运行,必须通过workflows来明确指定哪些job在什么条件下执行。你的配置里只有jobs定义,没有workflows,所以deployment job完全没被纳入执行流程。

  2. Deployment Job的机器配置错误
    machine模式下不能直接指定node/npm版本,你写的node和npm字段是无效的,CircleCI不会识别这种写法,会导致job配置解析失败,进而不触发任务。

  3. 分支过滤位置不正确
    在CircleCI 2.0中,分支过滤规则应该放在workflows的job配置里,而不是直接写在job定义内部,你原来的branch: ci写法不会生效。

  4. 缺少代码checkout步骤
    你的deployment job里没有拉取代码的步骤,直接cd website会找不到目录,就算任务触发了也会执行失败。

修复后的完整配置

下面是调整后的正确配置,我标注了关键修改点:

version: 2.1 # 升级到更稳定的2.1版本
jobs:
  build:
    machine: true
    steps:
      - run: echo "Skipping tests on non-gh-pages branches"
  deployment:
    machine: true # machine模式只需指定true,版本通过nvm安装
    steps:
      - checkout # 新增:必须先拉取代码仓库
      - run: |
          # 安装指定版本的node和npm
          nvm install 6.11.2
          nvm use 6.11.2
          npm install -g npm@3.10.10
      - run: git config --global user.email "<GITHUB_USERNAME>@users.noreply.github.com"
      - run: git config --global user.name "<YOUR_NAME>"
      - run: echo "machine github.com login <GITHUB_USERNAME> password $GITHUB_TOKEN" > ~/.netrc
      - run: cd website && npm install && GIT_USER=<GITHUB_USERNAME> npm run publish-gh-pages

# 新增:定义workflow,指定job的执行规则
workflows:
  version: 2
  build-and-deploy:
    jobs:
      - build:
          filters:
            branches:
              ignore: gh-pages # 在workflow里配置build的分支过滤
      - deployment:
          filters:
            branches:
              only: ci # 仅在ci分支运行deployment
          requires: # 可选:如果需要build完成后再部署,取消注释
            # - build

额外排查点

除了配置修改,你还需要检查以下内容:

  • CircleCI项目权限:在CircleCI的项目设置页面,确认ci分支没有被排除在构建之外,确保项目已正确关联GitHub仓库。
  • 环境变量验证:确认GITHUB_TOKEN已在CircleCI项目的环境变量中添加,且该token拥有仓库的读写权限(用于推送gh-pages分支)。
  • 构建日志检查:去CircleCI的构建页面查看workflow日志,确认deployment job是否被触发,如果还是没触发,看日志里是否有分支匹配失败的提示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:16:06