"Who tests the testers? Making and testing pipelines"
summary
Shows a concrete failure: a one‑character typo in rules caused a needed job to skip, not failing tests. Describes using gitlab validators and linters (they catch schema but miss rules/needs logic), running full branch pipelines (accurate but slow), and local runners like gitlab-ci-local / gitlab-c-local (faster but imperfect). Presents a created tool, CI test, that statically diffs generated pipelines to flag surprising rule changes, and notes generated python pipelines help reuse but don’t eliminate the original class of bug.
AI-written summary · about
chapters (12)
- 0:00Introduction to pipelines
- 1:29What pipelines are
- 3:16Audience pipeline experience
- 8:16Why pipelines break
- 11:30Human errors in pipelines
- 12:55Linting CI configs
- 15:22End-to-end pipeline tests
- 17:10Locally testing pipeline jobs
- 18:59Static analysis for CI configs
- 21:08Generating pipelines with Python
- 26:23Choosing CI approach
- 27:07Summary
related talks
31mWho Tests the Testers? Making and Testing Pipelines
25mHow NOT to Build a Pipeline
21mBuild your JS Pipeline in Incremental Fashion
39mRemove your Testing Bottleneck with CI/CD Pipelines
07m"Testers belong in production…"
39mModern Data Pipelines Testing Techniques: A Visual Guide
27mExploring a DevOps Transformation Like a Tester
17mShift-Left Security in Practice with Gitlab
