https://github.com/joelp172/uptime-robot-operator
Kubernetes operator for managing UptimeRobot monitors declaratively. Automatic drift detection, all monitor types supported, GitOps-friendly.
https://github.com/joelp172/uptime-robot-operator
gitops go kubebuilder kubernetes monitoring operator uptimerobot
Last synced: 19 days ago
JSON representation
Kubernetes operator for managing UptimeRobot monitors declaratively. Automatic drift detection, all monitor types supported, GitOps-friendly.
- Host: GitHub
- URL: https://github.com/joelp172/uptime-robot-operator
- Owner: joelp172
- License: apache-2.0
- Created: 2026-02-01T15:59:36.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-02-13T22:38:15.000Z (about 1 month ago)
- Last Synced: 2026-02-14T00:52:04.337Z (about 1 month ago)
- Topics: gitops, go, kubebuilder, kubernetes, monitoring, operator, uptimerobot
- Language: Go
- Homepage:
- Size: 564 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# Uptime Robot Operator
[](https://github.com/joelp172/uptime-robot-operator/actions/workflows/build.yml)
[](https://codecov.io/gh/joelp172/uptime-robot-operator)
[](https://github.com/joelp172/uptime-robot-operator/releases/latest)
[](LICENSE)
[](https://goreportcard.com/report/github.com/joelp172/uptime-robot-operator)
Manage [UptimeRobot](https://uptimerobot.com/?red=joelpi) monitors as Kubernetes resources. Automatic drift detection, self-healing, and GitOps-ready.
## Features
- Declarative monitor configuration via CRDs
- Drift detection and automatic correction
- All monitor types: HTTPS, Keyword, Ping, Port, Heartbeat, DNS
- Maintenance window scheduling
- Alert contact management
- **Adopt existing monitors** - Migrate monitors created outside Kubernetes without losing history
- **Prometheus metrics** - API performance, reconciliation duration, error tracking
## Security
All images are:
- **Signed with Cosign** — Keyless signing via GitHub Actions OpenID Connect (OIDC)
- **Scanned for vulnerabilities** — Trivy scanning; critical/high severity blocks the build
- **SBOM included** — Software Bill of Materials (SBOM) in SPDX and CycloneDX formats
See [SECURITY.md](SECURITY.md) for verification instructions and deployment best practices.
## Quick Start
Install the operator:
```bash
kubectl apply -f https://github.com/joelp172/uptime-robot-operator/releases/latest/download/install.yaml
```
Create your first monitor:
```bash
# Store your API key
kubectl create secret generic uptimerobot-api-key \
--namespace uptime-robot-system \
--from-literal=apiKey=YOUR_API_KEY
# Configure account
kubectl apply -f - <