ocp-vpc
cloud-native-toolkit/ocp-vpc/ibm
Module to provision an openshift cluster on IBM Cloud
IBM Cloud OpenShift VPC cluster Provisions an IBM Cloud OpenShift VPC cluster using a provided VPC instance and COS instance. Note: This module follows the Terraform conventions regarding how provider configuration is defined within the Terraform template and passed into the module - https://www.terraform.io/docs/language/modules/develop/providers.html. The default provider configuration flows through to the module. If different configuration is required for a module, it can be explicitly passed in the providers block of the module - https://www.terraform.io/docs/language/modules/develop/providers.html#passing-providers-explicitly. Software dependencies The module depends on the following software components: Command-line tools - terraform - v13 - kubectl Terraform providers - IBM Cloud pr
| Name | Type | Description | Default |
|---|---|---|---|
| ibmcloud_api_key | string | The IBM Cloud api token | required |
| vpc_name | string | Name of the VPC instance that will be used | required |
| resource_group_name | string | The name of the IBM Cloud resource group where the cluster will be created/can b | required |
| cos_id | string | The crn of the COS instance that will be used with the OCP instance | required |
| vpc_subnet_count | number | Number of vpc subnets | required |
| vpc_subnets | list(object({ label = stri | List of subnets with labels | required |
| region | string | The IBM Cloud region where the cluster will be/has been installed. | required |
| common_tags | list(string) | Common tags that should be added to the instance | [] |
| ocp_version | string | The version of the OpenShift cluster that should be provisioned (format 4.x) | "4.10" |
| login | bool | Flag indicating that after the cluster is provisioned, the module should log int | false |
| name_prefix | string | The prefix name for the service. If not provided it will default to the resource | "" |
| kms_key_id | string | The id of the root key in the KMS instance that will be used to encrypt the clus | null |
| tags | list(string) | Tags that should be added to the instance | [] |
| kms_enabled | bool | Flag indicating that kms encryption should be enabled for this cluster | false |
| kms_id | string | The crn of the KMS instance that will be used to encrypt the cluster. | null |
| name | string | The name of the cluster that will be created within the resource group | "" |
| worker_count | number | The number of worker nodes that should be provisioned for classic infrastructure | 3 |
| flavor | string | The machine type that will be provisioned for classic infrastructure | "bx2.4x16" |
| ocp_entitlement | string | Value that is applied to the entitlements for OCP cluster provisioning | "cloud_pak" |
| kms_private_endpoint | bool | Flag indicating that the private endpoint should be used to connect the KMS syst | true |
| sync | string | Value used to order dependencies | "" |
| exists | bool | Flag indicating if the cluster already exists (true or false) | false |
| disable_public_endpoint | bool | Flag indicating that the public endpoint should be disabled | false |
| force_delete_storage | bool | Attribute to force the removal of persistent storage associtated with the cluste | false |
workers — List of objects containing data for all workers server_url — The url used to connect to the api server. If the cluster has public endpoints enabled this will be username — The username of the admin user for the clusterpassword — The password of the admin user for the clusterregion — Region containing the cluster.platform — Configuration values for the cluster platformresource_group_name — Name of the resource group containing the cluster.config_file_path — Path to the config file for the cluster.sync — Value used to sync downstream modulestotal_worker_count — The total number of workers for the cluster. (subnets * number of workers)token — The admin user token used to generate the clusterid — ID of the cluster.name — Name of the cluster.