Getting Started
Get up and running with BuildButler — cloud, self-hosted, or Jenkins self-contained.
BuildButler supports three deployment models.
| Cloud | Self-Hosted | Jenkins Self-Contained | |
|---|---|---|---|
| Hosted by | BuildButler | You | You (inside Jenkins) |
| Database | BuildButler-managed or your own Postgres | Your own Postgres | Your own Postgres |
| Dashboard | app.buildbutler.dev | Your own server | Inside Jenkins UI |
| CI support | All supported CI systems | All supported CI systems | Jenkins only |
| Internet required | Yes | No | No |
Cloud
BuildButler manages the backend for you. CI systems send build data to api.buildbutler.dev and you view results at app.buildbutler.dev.
By default, BuildButler provisions a shared database. If you want full data ownership, you can connect your own Postgres instance under Settings → Database — BuildButler will use it instead.
Step 1 — Create your account
Sign up at app.buildbutler.dev/login.
Step 2 — Generate an API key
Go to Settings → API Keys and create a new key. You'll need this when connecting your CI system.
Step 3 — Connect your CI system
See Step 3 in the self-hosted guide — the integration options are identical. The only difference is your API endpoint is https://api.buildbutler.dev.
Step 4 — (Optional) Bring your own database
Go to Settings → Database and enter the connection string for any accessible Postgres instance. BuildButler will migrate and use it going forward.
Self-Hosted
Run the BuildButler server on your own infrastructure. All CI integrations work the same way — they just point to your server instead of api.buildbutler.dev.
See the Self-Hosted Installation guide for full setup instructions including Docker Compose, SSL, and configuration options.
Step 1 — Run the server
Docker
npm
The server starts at http://your-server:3000. Open it in a browser and register your first account.
Step 2 — Generate an API key
Go to Settings → API Keys and create a new key. You'll use this when connecting your CI system.
Step 3 — Connect your CI system
Every integration needs to know two things: your server URL and your API key. The server URL is http://your-server:3000 (or your HTTPS domain if behind a reverse proxy).
| CI System | Integration | Where to set the server URL |
|---|---|---|
| Jenkins | Plugin (.hpi) | Manage Jenkins → BuildButler → Server URL |
| TeamCity | Plugin (.zip) | Administration → BuildButler → Server URL |
| GitHub Actions | CLI or webhook | api-url input / webhook URL |
| GitLab CI | CLI or webhook | API_URL variable / webhook URL |
| Buildkite | CLI or webhook | API_URL variable / webhook URL |
| Azure DevOps | Service Hook webhook | Webhook URL field |
Plugin-based (Jenkins, TeamCity) — install the plugin into your CI server and set the Server URL to your BuildButler instance. No per-pipeline changes needed.
CLI reporter (@buildbutler/ci) — add one step to your pipeline YAML. Set API_URL to your server and API_KEY to your key:
Webhooks — register a webhook pointing at your server instead of api.buildbutler.dev. For example, a GitHub org webhook would be:
| CLI reporter | Org-level webhook | |
|---|---|---|
| Setup effort | One step per pipeline | One webhook per org |
| Stage details | ✅ Full per-job stages | ✅ From webhook payload |
| Test results (JUnit) | ✅ Via TEST_RESULTS_GLOB | ❌ Not available |
| Agent info | ✅ Runner details | ✅ From webhook payload |
CI setup guides:
Step 4 — Configure your workspace
- Notifications — Slack and email alerts for build failures
- JIRA — tag failures with JIRA tickets and see live ticket status
- AI Provider — enable natural language queries over your build data
Jenkins Self-Contained
The Jenkins Local plugin is a fully self-contained option for Jenkins users. It stores all CI data in your own PostgreSQL database and surfaces analytics directly inside the Jenkins UI — no external services, no internet required.
Step 1 — Provision a PostgreSQL database
Set up a Postgres 13+ instance that your Jenkins server can reach. Any hosting works — self-hosted, RDS, Cloud SQL, etc.
Step 2 — Download the plugin
Download the Jenkins Local .hpi from the Downloads page.
Step 3 — Install and configure
Install the .hpi in Jenkins (Manage Jenkins → Plugins → Advanced → Deploy Plugin), then go to Manage Jenkins → BuildButler and enter your database connection string.
See the Jenkins Local setup guide for full instructions.