Pipeline filtered out by workflow:rules CI/CD Origin: Build & delivery Last updated 25 Oct 2026

GitLab CI: No pipeline created — pipeline filtered out by workflow:rules / "The rules configuration prevented any jobs from being added to the pipeline"

Your workflow:rules or job-level rules: evaluated to "never" for this event, so GitLab created no pipeline or no jobs.

Exact message you may see pipeline filtered out by workflow:rulesThe rules configuration prevented any jobs from being added to the pipelineNo stages / jobs for this pipelinePipeline cannot be created: filtered out by workflow rulesno jobs run for this merge request
Seen on: GitLab CI

Meaning

Rules are evaluated top to bottom and the first match wins; if nothing matches the default is "never" for jobs with rules. Merge request pipelines need $CI_PIPELINE_SOURCE == "merge_request_event"; branch pipelines need $CI_COMMIT_BRANCH. Combine them carefully to avoid duplicate pipelines.

Common causes

  • No rule matches the event (push vs merge request vs schedule)
  • Rules mix only/except and rules
  • Variable name typo ($CI_COMMIT_BRANCH)
  • All jobs have when: never for this case
  • Tag pipelines missing $CI_COMMIT_TAG rule

⚡ Quick fix

  1. Add an explicit rule for every event you need
  2. Debug with CI/CD → Editor → Validate pipeline source
  3. Use workflow:rules to prevent duplicates

Detailed fix by platform

GitLab CI

  1. Echo variables in a debug job: script: - env | grep CI_ to see what is available

Code examples

Branch and merge request pipelines

yaml
workflow:
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
    - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS
      when: never
    - if: $CI_COMMIT_BRANCH

How to diagnose

  1. Event — Push, MR, tag or schedule?
  2. Rules — Does any rule match?
  3. Variables — Correct names?

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

Where this error sits

Origin: Build & delivery. Errors that are often confused with or caused by this one (click to open):

.gitlab-ci.yml invalid — GitLab CI: Found errors in your .gitlab-ci.yml: jobs:build config contains unknown keys: scripts (CI/CD).gitlab-ci.yml invalidCannot connect to the Docker daemon (GitLab) — GitLab CI: Cannot connect to the Docker daemon at tcp://docker:2375. Is the docker daemon running? (CI/CD)Cannot connect to the…failed to pull image (GitLab) — GitLab CI: ERROR: Job failed: failed to pull image "registry.example.com/app:latest" with specified policies [always]: access forbidden (CI/CD)failed to pull image …Job depends on artifacts that have expired — GitLab CI: This job could not start because it could not retrieve the needed artifacts (dependencies: build). (CI/CD)Job depends on artifa…This job is stuck because you don't have any active runners — GitLab CI: This job is stuck because you don't have any active runners online or available with any of these tags assigned to them (CI/CD)This job is stuck bec…Uploading artifacts: too large archive — GitLab CI: ERROR: Uploading artifacts as "archive" to coordinator... too large archive id=123 responseStatus=413 Request Entity Too Large (CI/CD)Uploading artifacts: …workflow not triggering — GitHub Actions: workflow does not run on push / pull_request / workflow_dispatch button missing (CI/CD)workflow not triggeri…Pipeline …

Explore the map of this error Full error map →

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.

💬 What worked for others

No tips yet — did something else fix this for you?

Share what worked for you

Tips are checked by an editor before they appear. Links are removed.