The code is already on GitHub β using Actions meant zero context switching, no new accounts, no webhooks to configure between separate services. Everything lives in one place: code, CI config, container registry (GHCR), and
secrets.
What I considered:
- CircleCI / Travis CI β great products, but another paid account, another dashboard, another integration to maintain. The value over Actions for a solo project isn't there.
- GitLab CI β arguably more powerful, but migrating to GitLab just for CI made no sense.
- Self-hosted Woodpecker/Drone β interesting, but I'm already running my own VPS with Coolify. Adding a CI server means more infra to babysit.
- Coolify's built-in CI β handles deploys well, but not deep enough for running integration tests against a real database.