Fix GitLab CI "jobs config should contain at least one visible job"
Lint errors on .gitlab-ci.yml and how to debug invalid pipeline syntax fast.
Problem
Pushing the pipeline returns `Unable to create pipeline — jobs config should contain at least one visible job`.
Root cause
Every job in your file is hidden (prefixed with `.`) or excluded by `rules:` / `only:`. GitLab needs at least one visible, runnable job.
Solution
Lint the file
Open CI/CD → Editor in GitLab and use the pipeline editor — it shows exactly which jobs are filtered out.
Fix common cases
- Remove the leading dot from a job name to un-hide it.
- Loosen `rules: if:` so the branch matches.
- Make sure included templates actually define a non-hidden job.
Frequently asked questions
Related fixes
GitLab CI/CD
5 minFix GitLab CI Job Stuck on "pending"
Pipeline waits forever for a runner. The fix is almost always tags, scope, or capacity.
#runners#tags#pipelines
GitLab CI/CD
5 minGitLab CI Cache Not Being Restored Between Jobs
Why your `node_modules` or `.cache/` keeps re-downloading and how to make the cache actually hit.
#cache#performance
Weekly digest
One DevOps fix in your inbox each week
Short, practical, no fluff. Real errors, real fixes — straight from production postmortems.