{"id":36604958,"url":"https://github.com/spotinst/terraform-spotinst-ocean-controller","last_synced_at":"2026-01-12T08:43:57.179Z","repository":{"id":41255912,"uuid":"247719123","full_name":"spotinst/terraform-spotinst-ocean-controller","owner":"spotinst","description":"A Terraform module to install Ocean Controller.","archived":false,"fork":false,"pushed_at":"2024-09-18T08:05:17.000Z","size":179,"stargazers_count":12,"open_issues_count":0,"forks_count":17,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-09-19T08:05:31.790Z","etag":null,"topics":["netapp-public","ocean","owned-by-anurag-sharma","terraform"],"latest_commit_sha":null,"homepage":"https://registry.terraform.io/modules/spotinst/ocean-controller/spotinst","language":"HCL","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/spotinst.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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":"2020-03-16T14:09:30.000Z","updated_at":"2024-09-18T08:02:38.000Z","dependencies_parsed_at":"2023-12-18T18:27:20.578Z","dependency_job_id":"d49d3fc5-04d3-46c3-92fa-388c60019d4d","html_url":"https://github.com/spotinst/terraform-spotinst-ocean-controller","commit_stats":null,"previous_names":[],"tags_count":56,"template":false,"template_full_name":null,"purl":"pkg:github/spotinst/terraform-spotinst-ocean-controller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spotinst%2Fterraform-spotinst-ocean-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spotinst%2Fterraform-spotinst-ocean-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spotinst%2Fterraform-spotinst-ocean-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spotinst%2Fterraform-spotinst-ocean-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spotinst","download_url":"https://codeload.github.com/spotinst/terraform-spotinst-ocean-controller/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spotinst%2Fterraform-spotinst-ocean-controller/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28337599,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T06:09:07.588Z","status":"ssl_error","status_checked_at":"2026-01-12T06:05:18.301Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["netapp-public","ocean","owned-by-anurag-sharma","terraform"],"created_at":"2026-01-12T08:43:57.127Z","updated_at":"2026-01-12T08:43:57.173Z","avatar_url":"https://github.com/spotinst.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spot Ocean Controller Terraform Module\n\nA Terraform module to install Ocean Controller.\n\nIMPORTANT: Please note that Ocean Controller Version 1 will reach End-Of-Life on November 1, 2024. To take advantage of the benefits offered by Ocean Controller Version 2 and receive uninterrupted service and support, please upgrade to Version 2 at your earliest convenience. [spotinst/terraform-ocean-kubernetes-controller ](https://registry.terraform.io/modules/spotinst/kubernetes-controller/ocean)\n\n## Table of Contents\n\n- [Usage](#usage)\n- [Examples](#examples)\n- [Requirements](#requirements)\n- [Providers](#providers)\n- [Modules](#modules)\n- [Resources](#resources)\n- [Inputs](#inputs)\n- [Outputs](#outputs)\n- [Documentation](#documentation)\n- [Getting Help](#getting-help)\n- [Community](#community)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Usage\n\n```hcl\nmodule \"ocean-controller\" {\n  source = \"spotinst/ocean-controller/spotinst\"\n\n  # Credentials.\n  spotinst_token   = var.spotinst_token\n  spotinst_account = var.spotinst_account\n\n  # Configuration.\n  cluster_identifier = var.cluster_identifier\n}\n```\n\n## Examples\n\n- [Simple Installation](https://github.com/spotinst/terraform-spotinst-ocean-controller/tree/master/examples/simple-installation)\n- [Azure Installation](https://github.com/spotinst/terraform-spotinst-ocean-controller/tree/master/examples/azure-installation)\n\n\u003c!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK --\u003e\n## Requirements\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"requirement_terraform\"\u003e\u003c/a\u003e [terraform](#requirement\\_terraform) | \u003e= 0.13.0 |\n| \u003ca name=\"requirement_kubernetes\"\u003e\u003c/a\u003e [kubernetes](#requirement\\_kubernetes) | ~\u003e 2.0 |\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_kubernetes\"\u003e\u003c/a\u003e [kubernetes](#provider\\_kubernetes) | 2.2.0 |\n\n## Modules\n\nNo modules.\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [kubernetes_cluster_role.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/cluster_role) | resource |\n| [kubernetes_cluster_role_binding.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/cluster_role_binding) | resource |\n| [kubernetes_config_map.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/config_map) | resource |\n| [kubernetes_deployment.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/deployment) | resource |\n| [kubernetes_job.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/job) | resource |\n| [kubernetes_secret.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/secret) | resource |\n| [kubernetes_service_account.this](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/service_account) | resource |\n\n## Inputs\n\n| Name | Description | Type | Default                                                                                                                                                                                                                                                                                                                                                                                                                                | Required |\n|------|-------------|------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------:|\n| \u003ca name=\"input_acd_identifier\"\u003e\u003c/a\u003e [acd\\_identifier](#input\\_acd\\_identifier) | Specifies a unique identifier used by the Ocean AKS Connector when importing an AKS cluster | `string` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_aks_connector_enabled\"\u003e\u003c/a\u003e [aks\\_connector\\_enabled](#input\\_aks\\_connector\\_enabled) | Controls whether the Ocean AKS Connector should be deployed (requires a valid `acd_identifier`) | `bool` | `true`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_aks_connector_image\"\u003e\u003c/a\u003e [aks\\_connector\\_image](#input\\_aks\\_connector\\_image) | Specifies the Docker image name for the Ocean AKS Connector that should be deployed | `string` | `\"spotinst/ocean-aks-connector\"`                                                                                                                                                                                                                                                                                                                                                                                                       | no |\n| \u003ca name=\"input_aks_connector_job_name\"\u003e\u003c/a\u003e [aks\\_connector\\_job\\_name](#input\\_aks\\_connector\\_job\\_name) | Overrides the default job name for the Ocean AKS Connector | `string` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_aks_connector_version\"\u003e\u003c/a\u003e [aks\\_connector\\_version](#input\\_aks\\_connector\\_version) | Specifies the Docker version for the Ocean AKS Connector that should be deployed | `string` | `\"1.0.8\"`                                                                                                                                                                                                                                                                                                                                                                                                                              | no |\n| \u003ca name=\"input_base_url\"\u003e\u003c/a\u003e [base\\_url](#input\\_base\\_url) | Specifies the base URL to be used by the HTTP client | `string` | `\"\"`                                                                                                                                                                                                                                                                                                                                                                                                                                   | no |\n| \u003ca name=\"input_ca_bundle_secret_name\"\u003e\u003c/a\u003e [ca\\_bundle\\_secret\\_name](#input\\_ca\\_bundle\\_secret\\_name) | Overrides the default secret name for custom CA bundle | `string` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_cluster_identifier\"\u003e\u003c/a\u003e [cluster\\_identifier](#input\\_cluster\\_identifier) | Specifies the cluster identifier | `string` | n/a                                                                                                                                                                                                                                                                                                                                                                                                                                    | yes |\n| \u003ca name=\"input_config_map_name\"\u003e\u003c/a\u003e [config\\_map\\_name](#input\\_config\\_map\\_name) | Overrides the default configmap name | `string` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_controller_image\"\u003e\u003c/a\u003e [controller\\_image](#input\\_controller\\_image) | Specifies the Docker image name for the Ocean Controller that should be deployed | `string` | `\"gcr.io/spotinst-artifacts/kubernetes-cluster-controller\"`                                                                                                                                                                                                                                                                                                                                                                            | no |\n| \u003ca name=\"input_controller_version\"\u003e\u003c/a\u003e [controller\\_version](#input\\_controller\\_version) | Specifies the Docker version for the Ocean Controller that should be deployed | `string` | `\"1.0.101\"`                                                                                                                                                                                                                                                                                                                                                                                                                            | no |\n| \u003ca name=\"input_create_controller\"\u003e\u003c/a\u003e [create\\_controller](#input\\_create\\_controller) | Controls whether the Ocean Controller should be deployed (it affects all resources) | `bool` | `true`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_disable_auto_update\"\u003e\u003c/a\u003e [disable\\_auto\\_update](#input\\_disable\\_auto\\_update) | Controls whether the auto-update feature should be disabled | `bool` | `false`                                                                                                                                                                                                                                                                                                                                                                                                                                | no |\n| \u003ca name=\"input_enable_csr_approval\"\u003e\u003c/a\u003e [enable\\_csr\\_approval](#input\\_enable\\_csr\\_approval) | Controls whether the CSR approval feature should be enabled | `bool` | `false`                                                                                                                                                                                                                                                                                                                                                                                                                                | no |\n| \u003ca name=\"input_image_pull_policy\"\u003e\u003c/a\u003e [image\\_pull\\_policy](#input\\_image\\_pull\\_policy) | Specifies the image pull policy (one of: Always, Never, IfNotPresent) | `string` | `\"Always\"`                                                                                                                                                                                                                                                                                                                                                                                                                             | no |\n| \u003ca name=\"input_image_pull_secrets\"\u003e\u003c/a\u003e [image\\_pull\\_secrets](#input\\_image\\_pull\\_secrets) | Specifies a list of references to secrets in the same namespace to use for pulling the image | `list(string)` | `[]`                                                                                                                                                                                                                                                                                                                                                                                                                                   | no |\n| \u003ca name=\"input_node_selector\"\u003e\u003c/a\u003e [node\\_selector](#input\\_node\\_selector) | Specifies the node selector which must match a node's labels for the Ocean Controller resources to be scheduled on that node | `map(string)` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_proxy_url\"\u003e\u003c/a\u003e [proxy\\_url](#input\\_proxy\\_url) | Specifies the proxy server URL to communicate through | `string` | `\"\"`                                                                                                                                                                                                                                                                                                                                                                                                                                   | no |\n| \u003ca name=\"input_resources_limits\"\u003e\u003c/a\u003e [resources\\_limits](#input\\_resources\\_limits) | Specifies the definition of the maximum amount of compute resources allowed | `map(any)` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_resources_requests\"\u003e\u003c/a\u003e [resources\\_requests](#input\\_resources\\_requests) | Specifies the definition of the minimum amount of compute resources required | `map(any)` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_secret_name\"\u003e\u003c/a\u003e [secret\\_name](#input\\_secret\\_name) | Overrides the default secret name | `string` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_service_account_name\"\u003e\u003c/a\u003e [service\\_account\\_name](#input\\_service\\_account\\_name) | Overrides the default service account name | `string` | `null`                                                                                                                                                                                                                                                                                                                                                                                                                                 | no |\n| \u003ca name=\"input_spotinst_account\"\u003e\u003c/a\u003e [spotinst\\_account](#input\\_spotinst\\_account) | Specifies the Spot account ID | `string` | n/a                                                                                                                                                                                                                                                                                                                                                                                                                                    | yes |\n| \u003ca name=\"input_spotinst_token\"\u003e\u003c/a\u003e [spotinst\\_token](#input\\_spotinst\\_token) | Specifies the Spot Personal Access token | `string` | n/a                                                                                                                                                                                                                                                                                                                                                                                                                                    | yes |\n| \u003ca name=\"input_tolerations\"\u003e\u003c/a\u003e [tolerations](#input\\_tolerations) | Specifies a list of additional `toleration` objects, see: https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/pod#toleration | `list(any)` | \u003cpre\u003e[\u003cbr\u003e  {\u003cbr\u003e    \"effect\": \"NoExecute\",\u003cbr\u003e    \"key\": \"node.kubernetes.io/not-ready\",\u003cbr\u003e    \"operator\": \"Exists\",\u003cbr\u003e    \"toleration_seconds\": 150\u003cbr\u003e  },\u003cbr\u003e  {\u003cbr\u003e    \"effect\": \"NoExecute\",\u003cbr\u003e    \"key\": \"node.kubernetes.io/unreachable\",\u003cbr\u003e    \"operator\": \"Exists\",\u003cbr\u003e    \"toleration_seconds\": 150\u003cbr\u003e  },\u003cbr\u003e  {\u003cbr\u003e    \"key\": \"node-role.kubernetes.io/control-plane\",\u003cbr\u003e    \"operator\": \"Exists\"\u003cbr\u003e  }\u003cbr\u003e]\u003c/pre\u003e | no |\n| \u003ca name=\"namespace\"\u003e\u003c/a\u003e [namespace](#namespace) | Specifies the workload's namespace name | `string` | kube-system                                                                                                                                                                                                                                                                                                                                                                                                                            | no |\n\n## Outputs\n\nNo outputs.\n\u003c!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK --\u003e\n\n## Documentation\n\nIf you're new to [Spot](https://spot.io/) and want to get started, please checkout our [Getting Started](https://docs.spot.io/connect-your-cloud-provider/) guide, available on the [Spot Documentation](https://docs.spot.io/) website.\n\n## Getting Help\n\nWe use GitHub issues for tracking bugs and feature requests. Please use these community resources for getting help:\n\n- Ask a question on [Stack Overflow](https://stackoverflow.com/) and tag it with [terraform-spotinst](https://stackoverflow.com/questions/tagged/terraform-spotinst/).\n- Join our [Spot](https://spot.io/) community on [Slack](http://slack.spot.io/).\n- Open an issue.\n\n## Community\n\n- [Slack](http://slack.spot.io/)\n- [Twitter](https://twitter.com/spot_hq/)\n\n## Contributing\n\nPlease see the [contribution guidelines](CONTRIBUTING.md).\n\n## License\n\nCode is licensed under the [Apache License 2.0](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspotinst%2Fterraform-spotinst-ocean-controller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspotinst%2Fterraform-spotinst-ocean-controller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspotinst%2Fterraform-spotinst-ocean-controller/lists"}