// the find
defunkt/cijoe
CI Joe is a fun Continuous Integration server. Unmaintained.
CI Joe is a single-file-ish Sinatra app that runs your test command on a git push and reports pass/fail through a web page or a /ping endpoint. It's from 2009-2011 and explicitly unmaintained, so this is really only relevant if you're studying a minimal CI server design or need something absurdly simple for a personal project on old Ruby.
The core idea is genuinely elegant: it doesn't care what language or framework you use, it just checks the exit code of whatever command you configure via git config. The git-hooks-as-extension-points design (after-reset, build-failed, build-worked) is a clean way to let users bolt on notifications or environment setup without touching the codebase. The whole thing is small enough to read in one sitting, which makes it a decent reference for 'what's the minimum viable CI server.'
It does a hard git reset against the remote on every build, which will silently destroy unpushed commits if you point it at the wrong repo — that's a data-loss footgun baked into the design. No maintenance since 2011: no HTTPS support mentioned, HTTP basic auth for triggering builds is weak by modern standards, and it predates any concept of containerized or parallel builds (it explicitly runs one build at a time with a naive queue). Dependencies (Sinatra, whatever gem versions from deps.rip) are over a decade stale and likely won't install cleanly on current Ruby without real effort.