{"id":20390448,"url":"https://github.com/checkly/checkly-operator","last_synced_at":"2025-04-12T11:21:34.103Z","repository":{"id":37080613,"uuid":"480889397","full_name":"checkly/checkly-operator","owner":"checkly","description":"Kubernetes checkly operator","archived":false,"fork":false,"pushed_at":"2024-12-04T22:28:23.000Z","size":251,"stargazers_count":10,"open_issues_count":14,"forks_count":4,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-11T16:07:35.694Z","etag":null,"topics":["checkly","golang","k8s","kubernetes","operator"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/checkly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-12T16:29:34.000Z","updated_at":"2024-12-04T22:28:26.000Z","dependencies_parsed_at":"2023-07-19T01:14:10.250Z","dependency_job_id":"ff14f35e-f92b-4da8-af8f-978ba3e9ce7e","html_url":"https://github.com/checkly/checkly-operator","commit_stats":null,"previous_names":["imgarena/checkly-operator"],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/checkly%2Fcheckly-operator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/checkly%2Fcheckly-operator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/checkly%2Fcheckly-operator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/checkly%2Fcheckly-operator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/checkly","download_url":"https://codeload.github.com/checkly/checkly-operator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248558130,"owners_count":21124223,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["checkly","golang","k8s","kubernetes","operator"],"created_at":"2024-11-15T03:24:57.029Z","updated_at":"2025-04-12T11:21:34.083Z","avatar_url":"https://github.com/checkly.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# checkly-operator\n\n[![Build and push](https://github.com/checkly/checkly-operator/actions/workflows/main-merge.yaml/badge.svg)](https://github.com/checkly/checkly-operator/actions/workflows/main-merge.yaml)\n\nA kubernetes operator for [checklyhq.com](https://checklyhq.com).\n\nThe operator can create checklyhq.com checks, groups and alert channels based of kubernetes CRDs and Ingress object annotations.\n\n## Documentation\nPlease see our [docs](docs/README.md) for more details on how to install and use the operator.\n\n## Get involved\n\nJoin us on the **#checkly-k8s-operator** channel in the [Checkly community Slack](https://www.checklyhq.com/slack), where we're discussing everything related to the project. If you're interested in contributing, be sure to check out [CONTRIBUTING.md](CONTRIBUTING.md) for more details.\n\n## Development\n### direnv\n\nWe're using [direnv](https://direnv.net/) to manage environment variables for this project (or export them manually and you can skip this step). Make sure you generate a checkly API key and you get the account ID as well.\n\n```\ntouch .envrc\necho \"export CHECKLY_API_KEY=foorbarbaz\" \u003e .envrc\necho \"export CHECKLY_ACCOUNT_ID=randomnumbers\" \u003e\u003e .envrc\ndirenv allow .\n```\n\n### Makefile\n\nMake sure your current kubectl context is set to the appropriate kubernetes cluster where you want to test the operator, then run\n\n```bash\nkubectl apply -f config/crd/bases/k8s.checklyhq.com_apichecks.yaml\nkubectl apply -f config/crd/bases/k8s.checklyhq.com_groups.yaml\nkubectl apply -f config/crd/bases/k8s.checklyhq.com_alertchannels.yaml\nmake run\n```\n\nIf you update any of the types for the CRD, run\n```bash\nmake manifests\n```\nand re-apply the CRD.\n\n### Testing the controller\n\n#### Unit and integration tests\n* Make sure your kubectl context is set to your local k8s cluster\n* Run `USE_EXISTING_CLUSTER=true make test`\n* To see coverage run `go tool cover -html=cover.out`\n\n#### Running locally\nSee [docs](docs/README.md) for details.\n\n## Source material\n\nSources used for kick starting this project:\n* https://sdk.operatorframework.io/docs/building-operators/golang/tutorial/\n* https://kubernetes.io/blog/2021/06/21/writing-a-controller-for-pod-labels/\n* https://github.com/checkly/checkly-go-sdk\n* https://docs.okd.io/latest/operators/operator_sdk/golang/osdk-golang-tutorial.html\n* https://sdk.operatorframework.io/docs/building-operators/golang/advanced-topics/#external-resources\n* https://book.kubebuilder.io/cronjob-tutorial/writing-tests.html\n\n\n### Versions\n\nWe're using the following versions of packages:\n* operator-sdk 1.37.0\n* golang 1.22\n\nTested with K8s `v1.29`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcheckly%2Fcheckly-operator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcheckly%2Fcheckly-operator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcheckly%2Fcheckly-operator/lists"}