DEV Community

Alex Spinov
Alex Spinov

Posted on

Dagger Has a Free CI/CD Engine — Write Pipelines in Code, Not YAML

Dagger lets you write CI/CD pipelines in real programming languages instead of YAML.

What You Get for Free

  • Pipelines as code — write in Go, Python, TypeScript, or any language
  • Runs anywhere — local machine, GitHub Actions, GitLab CI, CircleCI, Jenkins
  • Container-native — every step runs in a container, fully reproducible
  • Caching — automatic layer caching, 10x faster than traditional CI
  • Interactive debuggingdagger call --interactive drops into a shell
  • Dagger Cloud — free tier with pipeline visualization and caching

Quick Start

# Install
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh

# Initialize a module
dagger init --sdk=python

# Write your pipeline in Python instead of YAML
# dagger/src/main.py:
import dagger

@dagger.function
async def build(src: dagger.Directory) -> dagger.Container:
    return (
        dagger.container()
        .from_("node:20")
        .with_directory("/app", src)
        .with_workdir("/app")
        .with_exec(["npm", "install"])
        .with_exec(["npm", "test"])
    )

# Run locally (same as CI!)
dagger call build --src=.
Enter fullscreen mode Exit fullscreen mode

Why Developers Are Ditching YAML Pipelines

YAML CI configs are painful:

  • No IDE support — no autocomplete, no type checking, no debugging
  • Copy-paste reuse — no functions, no loops, no real abstractions
  • Works in CI, fails locally — or vice versa

Dagger solves all of this. Write once, run anywhere — with your language's full power.

A DevOps engineer maintained 47 YAML pipeline files across 12 repos. After converting to Dagger with Go, they reduced it to 3 shared modules — and developers could finally debug CI failures locally instead of push-and-pray.


Need Custom Data Solutions?

I build production-grade scrapers and data pipelines for startups, agencies, and research teams.

Browse 88+ ready-made scrapers on Apify → — Reddit, HN, LinkedIn, Google, Amazon, and more.

Custom project? Email me: spinov001@gmail.com — fast turnaround, fair pricing.

Top comments (0)