{"id":13542744,"url":"https://github.com/alexandrevilain/temporal-operator","last_synced_at":"2025-04-13T02:20:23.542Z","repository":{"id":37087827,"uuid":"484799656","full_name":"alexandrevilain/temporal-operator","owner":"alexandrevilain","description":"Temporal Kubernetes Operator","archived":false,"fork":false,"pushed_at":"2024-11-22T17:06:05.000Z","size":3263,"stargazers_count":164,"open_issues_count":53,"forks_count":37,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-11-25T08:45:08.432Z","etag":null,"topics":["k8s","kubernetes","kubernetes-operator","operator","temporal"],"latest_commit_sha":null,"homepage":"https://temporal-operator.pages.dev/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexandrevilain.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/contributing/local-development.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":"https://www.paypal.com/donate/?business=H7MLC4Y344XD2\u0026no_recurring=0\u0026item_name=If+you+want+to+support+my+open-source+work%21\u0026currency_code=EUR"}},"created_at":"2022-04-23T16:30:07.000Z","updated_at":"2024-11-22T17:06:00.000Z","dependencies_parsed_at":"2023-10-27T15:29:09.834Z","dependency_job_id":"f04012da-e138-4655-952d-8f73acd7a26d","html_url":"https://github.com/alexandrevilain/temporal-operator","commit_stats":{"total_commits":608,"total_committers":30,"mean_commits":"20.266666666666666","dds":0.587171052631579,"last_synced_commit":"abf68cf4a1a7f630c58d13bcdf57c1c27c480cf9"},"previous_names":[],"tags_count":50,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrevilain%2Ftemporal-operator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrevilain%2Ftemporal-operator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrevilain%2Ftemporal-operator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrevilain%2Ftemporal-operator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexandrevilain","download_url":"https://codeload.github.com/alexandrevilain/temporal-operator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654637,"owners_count":21140334,"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":["k8s","kubernetes","kubernetes-operator","operator","temporal"],"created_at":"2024-08-01T11:00:16.795Z","updated_at":"2025-04-13T02:20:23.537Z","avatar_url":"https://github.com/alexandrevilain.png","language":"Go","funding_links":["https://www.paypal.com/donate/?business=H7MLC4Y344XD2\u0026no_recurring=0\u0026item_name=If+you+want+to+support+my+open-source+work%21\u0026currency_code=EUR"],"categories":["Tools","Go"],"sub_categories":[],"readme":"# temporal-operator\n\nThe Kubernetes Operator to deploy and manage [Temporal](https://temporal.io/) clusters.\n\nUsing this operator, deploying a Temporal Cluster on Kubernetes is as easy as deploying the following manifest:\n\n```yaml\napiVersion: temporal.io/v1beta1\nkind: TemporalCluster\nmetadata:\n  name: prod\n  namespace: demo\nspec:\n  version: 1.24.3\n  numHistoryShards: 1\n  persistence:\n    defaultStore:\n      sql:\n        user: temporal\n        pluginName: postgres\n        databaseName: temporal\n        connectAddr: postgres.demo.svc.cluster.local:5432\n        connectProtocol: tcp\n      passwordSecretRef:\n        name: postgres-password\n        key: PASSWORD\n    visibilityStore:\n      sql:\n        user: temporal\n        pluginName: postgres\n        databaseName: temporal_visibility\n        connectAddr: postgres.demo.svc.cluster.local:5432\n        connectProtocol: tcp\n      passwordSecretRef:\n        name: postgres-password\n        key: PASSWORD\n```\n\n## Documentation\n\nThe documentation is available at: [https://temporal-operator.pages.dev/](https://temporal-operator.pages.dev/).\n\n### Quick start\n\nTo start using the Operator and deploy you first cluster in a matter of minutes, follow the documentation's [getting started guide](https://temporal-operator.pages.dev/getting-started/).\n\n## Examples\n\nSomes examples are available to help you get started:\n\n- [Temporal Cluster with PostgreSQL](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-postgres)\n- [Temporal Cluster with MySQL](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-mysql)\n- [Temporal Cluster with Cassandra](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-cassandra)\n- [Temporal Cluster with PostgreSQL \u0026 advanced visibility using ElasticSearch](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-postgres-es)\n- [Temporal Cluster with mTLS using cert-manager \u0026 PostgreSQL as datastore](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-mtls)\n- [Temporal Cluster with mTLS using istio \u0026 PostgreSQL as datastore](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-mtls-istio)\n- [Temporal Cluster with mTLS using linkerd \u0026 PostgreSQL as datastore](https://github.com/alexandrevilain/temporal-operator/blob/main/examples/cluster-mtls-linkerd)\n\n\n## Compatibility matrix\n\nThe following table shows operator compatibility with Temporal and Kubernetes.\nPlease note this table only reports end-to-end tests suite coverage, others versions *may* work.\n\n| Temporal Operator      | Temporal           | Kubernetes     |\n|------------------------|--------------------|----------------|\n| v0.21.x                | v1.20.x to v1.25.x | v1.27 to v1.31 |\n| v0.20.x                | v1.19.x to v1.24.x | v1.26 to v1.30 |\n| v0.19.x                | v1.19.x to v1.23.x | v1.25 to v1.29 |\n| v0.18.x                | v1.19.x to v1.23.x | v1.25 to v1.29 |\n| v0.17.x                | v1.18.x to v1.22.x | v1.25 to v1.29 |\n| v0.16.x                | v1.18.x to v1.22.x | v1.24 to v1.27 |\n| v0.15.x                | v1.18.x to v1.21.x | v1.24 to v1.27 |\n| v0.14.x                | v1.18.x to v1.21.x | v1.24 to v1.27 |\n| v0.13.x                | v1.18.x to v1.20.x | v1.24 to v1.27 |\n| v0.12.x                | v1.18.x to v1.20.x | v1.23 to v1.26 |\n| v0.11.x                | v1.17.x to v1.19.x | v1.23 to v1.26 |\n| v0.10.x                | v1.17.x to v1.19.x | v1.23 to v1.26 |\n| v0.9.x                 | v1.16.x to v1.18.x | v1.22 to v1.25 |\n\n## Roadmap\n\n### Features\n\n- [x] Deploy a new temporal cluster.\n- [x] Ability to deploy multiple clusters.\n- [x] Support for SQL datastores.\n- [x] Deploy Web UI.\n- [x] Deploy admin tools.\n- [x] Support for Elastisearch.\n- [x] Support for Cassandra datastore.\n- [x] Automatic mTLS certificates management (using cert-manager).\n- [x] Support for integration in meshes: istio \u0026 linkerd.\n- [x] Namespace management using CRDs.\n- [x] Cluster version upgrades.\n- [x] Cluster monitoring.\n- [x] Complete end2end test suite.\n- [x] Archival.\n- [ ] Auto scaling.\n- [ ] Multi cluster replication.\n\n## Contributing\n\nFeel free to contribute to the project ! All issues and PRs are welcome!\nTo start hacking on the project, you can follow the [local development](https://temporal-operator.pages.dev/contributing/local-development/) documentation page.\n\n## License\n\nTemporal Operator is licensed under Apache License Version 2.0. [See LICENSE for more information](https://github.com/alexandrevilain/temporal-operator/blob/main/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrevilain%2Ftemporal-operator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexandrevilain%2Ftemporal-operator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrevilain%2Ftemporal-operator/lists"}