Script Valley
Open Source Contribution: A Practical Guide
Writing Your First Pull RequestLesson 3.4

How CI/CD pipelines work in open source pull requests

GitHub Actions basics, CI checks on PRs, required status checks, failing CI interpretation, lint checks, test automation, PR merge blocking

What Happens When You Open a PR

Most mature open source projects run CI automatically on every PR. The CI suite typically runs linting, unit tests, integration tests, and sometimes security scans. A red CI badge means your PR cannot merge until you fix it.

Reading a GitHub Actions Failure

Click the red X on your PR to open the checks panel. Find the failing job. Click Details to see the full log. Scroll to the first error -- not the last. CI logs cascade: one failure produces dozens of downstream error messages, but fixing the root cause clears them all.

Common CI Failures for Contributors

# Missing dependency or different Node version
npm ci

# Lint errors
npm run lint -- --fix

# Test failure from your change
npm test -- --verbose

# Format check
npx prettier --write .
black .  # Python

Required vs Non-Required Checks

Some CI checks are required -- the merge button stays gray until they pass. Others are informational. Check the repo branch protection settings or CONTRIBUTING.md to know which failures you must fix before a PR can merge. Never ask a maintainer to merge over a failing required check -- fix it first.

Up next

Why pull requests get rejected and how to avoid it

Sign in to track progress