GitLab CI手动触发流水线失效,定时任务正常,如何配置?
解决GitLab CI手动触发流水线的问题
你的配置里已经允许了web(手动点击触发)的流水线来源,但目前无法触发的核心原因是没有定义任何实际执行的Job——你只声明了tests和notifications两个阶段,但没有为这些阶段添加具体任务。
修复步骤:
在配置中添加至少一个属于已定义阶段的Job,比如给tests阶段加一个简单的测试任务:
workflow: rules: - if: '$CI_PIPELINE_SOURCE == "schedule"' - if: '$CI_PIPELINE_SOURCE == "web"' when: always default: tags: - t3a.large stages: - tests - notifications # 添加具体的Job示例 run_tests: stage: tests script: - echo "Running tests..." # 替换为你实际的测试命令 variables: ENVIRONMENT: value: "PROD" options: - "PROD" - "DEV" - "TEST" description: "Choose a stand. Default value 'PROD'"
额外检查点:
- 确认你的非主分支没有在项目设置的「CI/CD > 通用流水线」中被设置为禁止运行流水线
- 手动触发时,确保在Run Pipeline界面正确选择目标分支,必要时填写变量(
ENVIRONMENT有默认值,可直接提交)
添加Job之后,再次点击Run Pipeline就能正常触发流水线并执行任务了。
内容的提问来源于stack exchange,提问作者DrGlide
相关产品推荐
相关产品推荐

