{
  "name": "rke",
  "version": "1.7.5",
  "description": "A Pulumi provider dynamically bridged from rke.",
  "attribution": "This Pulumi package is based on the [`rke` Terraform Provider](https://github.com/rancher/terraform-provider-rke).",
  "repository": "https://github.com/rancher/terraform-provider-rke",
  "publisher": "rancher",
  "meta": {
    "moduleFormat": "(.*)(?:/[^/]*)"
  },
  "language": {
    "csharp": {
      "compatibility": "tfbridge20",
      "liftSingleValueMethodReturns": true,
      "respectSchemaVersion": true
    },
    "go": {
      "importBasePath": "github.com/pulumi/pulumi-terraform-provider/sdks/go/rke/rke",
      "rootPackageName": "rke",
      "liftSingleValueMethodReturns": true,
      "generateExtraInputTypes": true,
      "respectSchemaVersion": true
    },
    "java": {
      "basePackage": "",
      "buildFiles": "",
      "gradleNexusPublishPluginVersion": "",
      "gradleTest": ""
    },
    "nodejs": {
      "packageDescription": "A Pulumi provider dynamically bridged from rke.",
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/rancher/terraform-provider-rke)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> please consult the source [`terraform-provider-rke` repo](https://github.com/rancher/terraform-provider-rke/issues).",
      "compatibility": "tfbridge20",
      "disableUnionOutputTypes": true,
      "liftSingleValueMethodReturns": true,
      "respectSchemaVersion": true
    },
    "python": {
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/rancher/terraform-provider-rke)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> please consult the source [`terraform-provider-rke` repo](https://github.com/rancher/terraform-provider-rke/issues).",
      "compatibility": "tfbridge20",
      "respectSchemaVersion": true,
      "pyproject": {
        "enabled": true
      }
    }
  },
  "config": {
    "variables": {
      "debug": {
        "type": "boolean"
      },
      "logFile": {
        "type": "string"
      }
    }
  },
  "types": {
    "rke:index/ClusterAuthentication:ClusterAuthentication": {
      "properties": {
        "sans": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of additional hostnames and IPs to include in the api server PKI cert\n"
        },
        "strategy": {
          "type": "string",
          "description": "Authentication strategy that will be used in RKE k8s cluster\n"
        },
        "webhook": {
          "$ref": "#/types/rke:index%2FClusterAuthenticationWebhook:ClusterAuthenticationWebhook",
          "description": "Webhook configuration options\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "sans"
          ]
        }
      }
    },
    "rke:index/ClusterAuthenticationWebhook:ClusterAuthenticationWebhook": {
      "properties": {
        "cacheTimeout": {
          "type": "string",
          "description": "Controls how long to cache authentication decisions\n"
        },
        "configFile": {
          "type": "string",
          "description": "Multiline string that represent a custom webhook config file\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterAuthorization:ClusterAuthorization": {
      "properties": {
        "mode": {
          "type": "string",
          "description": "RKE mode for authorization. `rbac` and `none` modes are available. Default `rbac` (string)\n"
        },
        "options": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Authorization mode options\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterBastionHost:ClusterBastionHost": {
      "properties": {
        "address": {
          "type": "string",
          "description": "Address of Bastion Host\n"
        },
        "ignoreProxyEnvVars": {
          "type": "boolean",
          "description": "Ignore proxy env vars at Bastion Host?\n"
        },
        "port": {
          "type": "string",
          "description": "SSH Port of Bastion Host\n"
        },
        "sshAgentAuth": {
          "type": "boolean",
          "description": "SSH Agent Auth enable (bool)\n"
        },
        "sshCert": {
          "type": "string",
          "description": "SSH Certificate Key\n",
          "secret": true
        },
        "sshCertPath": {
          "type": "string",
          "description": "SSH Certificate Path (string)\n"
        },
        "sshKey": {
          "type": "string",
          "description": "SSH Private Key\n",
          "secret": true
        },
        "sshKeyPath": {
          "type": "string",
          "description": "SSH Private Key Path (string)\n"
        },
        "user": {
          "type": "string",
          "description": "SSH User to Bastion Host\n"
        }
      },
      "type": "object",
      "required": [
        "address",
        "user"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "address",
            "sshAgentAuth",
            "sshCertPath",
            "sshKeyPath",
            "user"
          ]
        }
      }
    },
    "rke:index/ClusterCertificate:ClusterCertificate": {
      "properties": {
        "certificate": {
          "type": "string"
        },
        "commonName": {
          "type": "string"
        },
        "config": {
          "type": "string"
        },
        "configEnvName": {
          "type": "string"
        },
        "configPath": {
          "type": "string"
        },
        "envName": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "description": "(Computed) The ID of the resource (string)\n"
        },
        "key": {
          "type": "string",
          "description": "TLS key for etcd service (string)\n"
        },
        "keyEnvName": {
          "type": "string"
        },
        "keyPath": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of virtualcenter config for Vsphere Cloud Provider config (string)\n"
        },
        "ouName": {
          "type": "string"
        },
        "path": {
          "type": "string",
          "description": "Audit log path. Default: `/var/log/kube-audit/audit-log.json` (string)\n"
        }
      },
      "type": "object",
      "required": [
        "certificate",
        "commonName",
        "config",
        "configEnvName",
        "configPath",
        "envName",
        "id",
        "key",
        "keyEnvName",
        "keyPath",
        "name",
        "ouName",
        "path"
      ]
    },
    "rke:index/ClusterCloudProvider:ClusterCloudProvider": {
      "properties": {
        "awsCloudConfig": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderAwsCloudConfig:ClusterCloudProviderAwsCloudConfig",
          "description": "Use aws_cloud_provider instead\n",
          "deprecationMessage": "Deprecated"
        },
        "awsCloudProvider": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderAwsCloudProvider:ClusterCloudProviderAwsCloudProvider",
          "description": "AWS Cloud Provider config\n"
        },
        "azureCloudConfig": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderAzureCloudConfig:ClusterCloudProviderAzureCloudConfig",
          "description": "Use azure_cloud_provider instead\n",
          "deprecationMessage": "Deprecated"
        },
        "azureCloudProvider": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderAzureCloudProvider:ClusterCloudProviderAzureCloudProvider",
          "description": "Azure Cloud Provider config\n"
        },
        "customCloudConfig": {
          "type": "string",
          "description": "Use custom_cloud_provider instead\n",
          "deprecationMessage": "Deprecated"
        },
        "customCloudProvider": {
          "type": "string",
          "description": "Custom Cloud Provider config\n"
        },
        "name": {
          "type": "string",
          "description": "Name of virtualcenter config for Vsphere Cloud Provider config (string)\n"
        },
        "openstackCloudConfig": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudConfig:ClusterCloudProviderOpenstackCloudConfig",
          "description": "Use openstack_cloud_provider instead\n",
          "deprecationMessage": "Deprecated"
        },
        "openstackCloudProvider": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudProvider:ClusterCloudProviderOpenstackCloudProvider",
          "description": "Openstack Cloud Provider config\n"
        },
        "vsphereCloudConfig": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudConfig:ClusterCloudProviderVsphereCloudConfig",
          "description": "Use vsphere_cloud_provider instead\n",
          "deprecationMessage": "Deprecated"
        },
        "vsphereCloudProvider": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudProvider:ClusterCloudProviderVsphereCloudProvider",
          "description": "Vsphere Cloud Provider config\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ]
    },
    "rke:index/ClusterCloudProviderAwsCloudConfig:ClusterCloudProviderAwsCloudConfig": {
      "properties": {
        "global": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderAwsCloudConfigGlobal:ClusterCloudProviderAwsCloudConfigGlobal",
          "description": "(list maxitems:1)\n"
        },
        "serviceOverrides": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterCloudProviderAwsCloudConfigServiceOverride:ClusterCloudProviderAwsCloudConfigServiceOverride"
          },
          "description": "(list)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderAwsCloudConfigGlobal:ClusterCloudProviderAwsCloudConfigGlobal": {
      "properties": {
        "disableSecurityGroupIngress": {
          "type": "boolean",
          "description": "Disables the automatic ingress creation\n"
        },
        "disableStrictZoneCheck": {
          "type": "boolean",
          "description": "Setting this to true will disable the check and provide a warning that the check was skipped\n"
        },
        "elbSecurityGroup": {
          "type": "string",
          "description": "Use these ELB security groups instead create new\n"
        },
        "kubernetesClusterId": {
          "type": "string",
          "description": "The cluster id we'll use to identify our cluster resources\n"
        },
        "kubernetesClusterTag": {
          "type": "string",
          "description": "Legacy cluster id we'll use to identify our cluster resources\n"
        },
        "roleArn": {
          "type": "string",
          "description": "IAM role to assume when interaction with AWS APIs\n"
        },
        "routeTableId": {
          "type": "string",
          "description": "Enables using a specific RouteTable\n"
        },
        "subnetId": {
          "type": "string",
          "description": "Enables using a specific subnet to use for ELB's\n"
        },
        "vpc": {
          "type": "string",
          "description": "The AWS VPC flag enables the possibility to run the master components on a different aws account, on a different cloud provider or on-premises. If the flag is set also the KubernetesClusterTag must be provided\n"
        },
        "zone": {
          "type": "string",
          "description": "The AWS zone\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderAwsCloudConfigServiceOverride:ClusterCloudProviderAwsCloudConfigServiceOverride": {
      "properties": {
        "key": {
          "type": "string",
          "description": "TLS key for etcd service (string)\n",
          "deprecationMessage": "Deprecated"
        },
        "region": {
          "type": "string",
          "description": "Region for S3 service (string)\n"
        },
        "service": {
          "type": "string",
          "description": "(string)\n"
        },
        "signingMethod": {
          "type": "string",
          "description": "(string)\n"
        },
        "signingName": {
          "type": "string",
          "description": "(string)\n"
        },
        "signingRegion": {
          "type": "string",
          "description": "(string)\n"
        },
        "url": {
          "type": "string",
          "description": "Registry URL (string)\n"
        }
      },
      "type": "object",
      "required": [
        "service"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "service",
            "signingMethod"
          ]
        }
      }
    },
    "rke:index/ClusterCloudProviderAwsCloudProvider:ClusterCloudProviderAwsCloudProvider": {
      "properties": {
        "global": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderAwsCloudProviderGlobal:ClusterCloudProviderAwsCloudProviderGlobal",
          "description": "(list maxitems:1)\n"
        },
        "serviceOverrides": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterCloudProviderAwsCloudProviderServiceOverride:ClusterCloudProviderAwsCloudProviderServiceOverride"
          },
          "description": "(list)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderAwsCloudProviderGlobal:ClusterCloudProviderAwsCloudProviderGlobal": {
      "properties": {
        "disableSecurityGroupIngress": {
          "type": "boolean",
          "description": "Disables the automatic ingress creation\n"
        },
        "disableStrictZoneCheck": {
          "type": "boolean",
          "description": "Setting this to true will disable the check and provide a warning that the check was skipped\n"
        },
        "elbSecurityGroup": {
          "type": "string",
          "description": "Use these ELB security groups instead create new\n"
        },
        "kubernetesClusterId": {
          "type": "string",
          "description": "The cluster id we'll use to identify our cluster resources\n"
        },
        "kubernetesClusterTag": {
          "type": "string",
          "description": "Legacy cluster id we'll use to identify our cluster resources\n"
        },
        "roleArn": {
          "type": "string",
          "description": "IAM role to assume when interaction with AWS APIs\n"
        },
        "routeTableId": {
          "type": "string",
          "description": "Enables using a specific RouteTable\n"
        },
        "subnetId": {
          "type": "string",
          "description": "Enables using a specific subnet to use for ELB's\n"
        },
        "vpc": {
          "type": "string",
          "description": "The AWS VPC flag enables the possibility to run the master components on a different aws account, on a different cloud provider or on-premises. If the flag is set also the KubernetesClusterTag must be provided\n"
        },
        "zone": {
          "type": "string",
          "description": "The AWS zone\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderAwsCloudProviderServiceOverride:ClusterCloudProviderAwsCloudProviderServiceOverride": {
      "properties": {
        "key": {
          "type": "string",
          "description": "TLS key for etcd service (string)\n",
          "deprecationMessage": "Deprecated"
        },
        "region": {
          "type": "string",
          "description": "Region for S3 service (string)\n"
        },
        "service": {
          "type": "string",
          "description": "(string)\n"
        },
        "signingMethod": {
          "type": "string",
          "description": "(string)\n"
        },
        "signingName": {
          "type": "string",
          "description": "(string)\n"
        },
        "signingRegion": {
          "type": "string",
          "description": "(string)\n"
        },
        "url": {
          "type": "string",
          "description": "Registry URL (string)\n"
        }
      },
      "type": "object",
      "required": [
        "service"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "service",
            "signingMethod"
          ]
        }
      }
    },
    "rke:index/ClusterCloudProviderAzureCloudConfig:ClusterCloudProviderAzureCloudConfig": {
      "properties": {
        "aadClientCertPassword": {
          "type": "string",
          "description": "The password of the client certificate for an AAD application with RBAC access to talk to Azure RM APIs\n",
          "secret": true
        },
        "aadClientCertPath": {
          "type": "string",
          "description": "The path of a client certificate for an AAD application with RBAC access to talk to Azure RM APIs\n"
        },
        "aadClientId": {
          "type": "string",
          "description": "The ClientID for an AAD application with RBAC access to talk to Azure RM APIs\n",
          "secret": true
        },
        "aadClientSecret": {
          "type": "string",
          "description": "The ClientSecret for an AAD application with RBAC access to talk to Azure RM APIs\n",
          "secret": true
        },
        "cloud": {
          "type": "string",
          "description": "The cloud environment identifier. Takes values from https://github.com/Azure/go-autorest/blob/ec5f4903f77ed9927ac95b19ab8e44ada64c1356/autorest/azure/environments.go#L13\n"
        },
        "cloudProviderBackoff": {
          "type": "boolean",
          "description": "Enable exponential backoff to manage resource request retries\n"
        },
        "cloudProviderBackoffDuration": {
          "type": "number",
          "description": "Backoff duration\n"
        },
        "cloudProviderBackoffExponent": {
          "type": "number",
          "description": "Backoff exponent\n"
        },
        "cloudProviderBackoffJitter": {
          "type": "number",
          "description": "Backoff jitter\n"
        },
        "cloudProviderBackoffRetries": {
          "type": "number",
          "description": "Backoff retry limit\n"
        },
        "cloudProviderRateLimit": {
          "type": "boolean",
          "description": "Enable rate limiting\n"
        },
        "cloudProviderRateLimitBucket": {
          "type": "number",
          "description": "(int)\n"
        },
        "cloudProviderRateLimitQps": {
          "type": "number",
          "description": "Rate limit QPS\n"
        },
        "loadBalancerSku": {
          "type": "string",
          "description": "Load balancer type (basic | standard). Must be standard for auto-scaling\n"
        },
        "location": {
          "type": "string",
          "description": "The location of the resource group that the cluster is deployed in\n"
        },
        "maximumLoadBalancerRuleCount": {
          "type": "number",
          "description": "Maximum allowed LoadBalancer Rule Count is the limit enforced by Azure Load balancer\n"
        },
        "primaryAvailabilitySetName": {
          "type": "string",
          "description": "The name of the availability set that should be used as the load balancer backendIf this is set, the Azure cloudprovider will only add nodes from that availability set to the loadbalancer backend pool. If this is not set, and multiple agent pools (availability sets) are used, thenthe cloudprovider will try to add all nodes to a single backend pool which is forbidden.In other words, if you use multiple agent pools (availability sets), you MUST set this field.\n"
        },
        "primaryScaleSetName": {
          "type": "string",
          "description": "The name of the scale set that should be used as the load balancer backend.If this is set, the Azure cloudprovider will only add nodes from that scale set to the loadbalancer backend pool. If this is not set, and multiple agent pools (scale sets) are used, thenthe cloudprovider will try to add all nodes to a single backend pool which is forbidden.In other words, if you use multiple agent pools (scale sets), you MUST set this field.\n"
        },
        "resourceGroup": {
          "type": "string",
          "description": "The name of the resource group that the cluster is deployed in\n"
        },
        "routeTableName": {
          "type": "string",
          "description": "(Optional in 1.6) The name of the route table attached to the subnet that the cluster is deployed in\n"
        },
        "securityGroupName": {
          "type": "string",
          "description": "The name of the security group attached to the cluster's subnet\n"
        },
        "subnetName": {
          "type": "string",
          "description": "The name of the Subnet that the cluster is deployed in\n"
        },
        "subscriptionId": {
          "type": "string",
          "description": "The ID of the Azure Subscription that the cluster is deployed in\n",
          "secret": true
        },
        "tenantId": {
          "type": "string",
          "description": "The AAD Tenant ID for the Subscription that the cluster is deployed in\n",
          "secret": true
        },
        "useInstanceMetadata": {
          "type": "boolean",
          "description": "Use instance metadata service where possible\n"
        },
        "useManagedIdentityExtension": {
          "type": "boolean",
          "description": "Use managed service identity for the virtual machine to access Azure ARM APIs\n"
        },
        "vmType": {
          "type": "string",
          "description": "The type of azure nodes. If not set, it will be default to standard.\n"
        },
        "vnetName": {
          "type": "string",
          "description": "The name of the VNet that the cluster is deployed in\n"
        },
        "vnetResourceGroup": {
          "type": "string",
          "description": "The name of the resource group that the Vnet is deployed in\n"
        }
      },
      "type": "object",
      "required": [
        "aadClientId",
        "aadClientSecret",
        "subscriptionId",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "aadClientId",
            "aadClientSecret",
            "cloudProviderRateLimitBucket",
            "subscriptionId",
            "tenantId"
          ]
        }
      }
    },
    "rke:index/ClusterCloudProviderAzureCloudProvider:ClusterCloudProviderAzureCloudProvider": {
      "properties": {
        "aadClientCertPassword": {
          "type": "string",
          "description": "The password of the client certificate for an AAD application with RBAC access to talk to Azure RM APIs\n",
          "secret": true
        },
        "aadClientCertPath": {
          "type": "string",
          "description": "The path of a client certificate for an AAD application with RBAC access to talk to Azure RM APIs\n"
        },
        "aadClientId": {
          "type": "string",
          "description": "The ClientID for an AAD application with RBAC access to talk to Azure RM APIs\n",
          "secret": true
        },
        "aadClientSecret": {
          "type": "string",
          "description": "The ClientSecret for an AAD application with RBAC access to talk to Azure RM APIs\n",
          "secret": true
        },
        "cloud": {
          "type": "string",
          "description": "The cloud environment identifier. Takes values from https://github.com/Azure/go-autorest/blob/ec5f4903f77ed9927ac95b19ab8e44ada64c1356/autorest/azure/environments.go#L13\n"
        },
        "cloudProviderBackoff": {
          "type": "boolean",
          "description": "Enable exponential backoff to manage resource request retries\n"
        },
        "cloudProviderBackoffDuration": {
          "type": "number",
          "description": "Backoff duration\n"
        },
        "cloudProviderBackoffExponent": {
          "type": "number",
          "description": "Backoff exponent\n"
        },
        "cloudProviderBackoffJitter": {
          "type": "number",
          "description": "Backoff jitter\n"
        },
        "cloudProviderBackoffRetries": {
          "type": "number",
          "description": "Backoff retry limit\n"
        },
        "cloudProviderRateLimit": {
          "type": "boolean",
          "description": "Enable rate limiting\n"
        },
        "cloudProviderRateLimitBucket": {
          "type": "number",
          "description": "(int)\n"
        },
        "cloudProviderRateLimitQps": {
          "type": "number",
          "description": "Rate limit QPS\n"
        },
        "loadBalancerSku": {
          "type": "string",
          "description": "Load balancer type (basic | standard). Must be standard for auto-scaling\n"
        },
        "location": {
          "type": "string",
          "description": "The location of the resource group that the cluster is deployed in\n"
        },
        "maximumLoadBalancerRuleCount": {
          "type": "number",
          "description": "Maximum allowed LoadBalancer Rule Count is the limit enforced by Azure Load balancer\n"
        },
        "primaryAvailabilitySetName": {
          "type": "string",
          "description": "The name of the availability set that should be used as the load balancer backendIf this is set, the Azure cloudprovider will only add nodes from that availability set to the loadbalancer backend pool. If this is not set, and multiple agent pools (availability sets) are used, thenthe cloudprovider will try to add all nodes to a single backend pool which is forbidden.In other words, if you use multiple agent pools (availability sets), you MUST set this field.\n"
        },
        "primaryScaleSetName": {
          "type": "string",
          "description": "The name of the scale set that should be used as the load balancer backend.If this is set, the Azure cloudprovider will only add nodes from that scale set to the loadbalancer backend pool. If this is not set, and multiple agent pools (scale sets) are used, thenthe cloudprovider will try to add all nodes to a single backend pool which is forbidden.In other words, if you use multiple agent pools (scale sets), you MUST set this field.\n"
        },
        "resourceGroup": {
          "type": "string",
          "description": "The name of the resource group that the cluster is deployed in\n"
        },
        "routeTableName": {
          "type": "string",
          "description": "(Optional in 1.6) The name of the route table attached to the subnet that the cluster is deployed in\n"
        },
        "securityGroupName": {
          "type": "string",
          "description": "The name of the security group attached to the cluster's subnet\n"
        },
        "subnetName": {
          "type": "string",
          "description": "The name of the Subnet that the cluster is deployed in\n"
        },
        "subscriptionId": {
          "type": "string",
          "description": "The ID of the Azure Subscription that the cluster is deployed in\n",
          "secret": true
        },
        "tenantId": {
          "type": "string",
          "description": "The AAD Tenant ID for the Subscription that the cluster is deployed in\n",
          "secret": true
        },
        "useInstanceMetadata": {
          "type": "boolean",
          "description": "Use instance metadata service where possible\n"
        },
        "useManagedIdentityExtension": {
          "type": "boolean",
          "description": "Use managed service identity for the virtual machine to access Azure ARM APIs\n"
        },
        "vmType": {
          "type": "string",
          "description": "The type of azure nodes. If not set, it will be default to standard.\n"
        },
        "vnetName": {
          "type": "string",
          "description": "The name of the VNet that the cluster is deployed in\n"
        },
        "vnetResourceGroup": {
          "type": "string",
          "description": "The name of the resource group that the Vnet is deployed in\n"
        }
      },
      "type": "object",
      "required": [
        "aadClientId",
        "aadClientSecret",
        "subscriptionId",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "aadClientId",
            "aadClientSecret",
            "cloudProviderRateLimitBucket",
            "subscriptionId",
            "tenantId"
          ]
        }
      }
    },
    "rke:index/ClusterCloudProviderOpenstackCloudConfig:ClusterCloudProviderOpenstackCloudConfig": {
      "properties": {
        "blockStorage": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudConfigBlockStorage:ClusterCloudProviderOpenstackCloudConfigBlockStorage",
          "description": "(list maxitems:1)\n"
        },
        "global": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudConfigGlobal:ClusterCloudProviderOpenstackCloudConfigGlobal",
          "description": "(list maxitems:1)\n"
        },
        "loadBalancer": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudConfigLoadBalancer:ClusterCloudProviderOpenstackCloudConfigLoadBalancer",
          "description": "(list maxitems:1)\n"
        },
        "metadata": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudConfigMetadata:ClusterCloudProviderOpenstackCloudConfigMetadata",
          "description": "(list maxitems:1)\n"
        },
        "route": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudConfigRoute:ClusterCloudProviderOpenstackCloudConfigRoute",
          "description": "(list maxitems:1)\n"
        }
      },
      "type": "object",
      "required": [
        "global"
      ]
    },
    "rke:index/ClusterCloudProviderOpenstackCloudConfigBlockStorage:ClusterCloudProviderOpenstackCloudConfigBlockStorage": {
      "properties": {
        "bsVersion": {
          "type": "string",
          "description": "(string)\n"
        },
        "ignoreVolumeAz": {
          "type": "boolean",
          "description": "(string)\n"
        },
        "trustDevicePath": {
          "type": "boolean",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudConfigGlobal:ClusterCloudProviderOpenstackCloudConfigGlobal": {
      "properties": {
        "authUrl": {
          "type": "string",
          "description": "(string)\n"
        },
        "caFile": {
          "type": "string",
          "description": "(string)\n"
        },
        "domainId": {
          "type": "string",
          "description": "Required if `domain_name` not provided. (string)\n",
          "secret": true
        },
        "domainName": {
          "type": "string",
          "description": "Required if `domain_id` not provided. (string)\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password (string)\n",
          "secret": true
        },
        "region": {
          "type": "string",
          "description": "Region for S3 service (string)\n"
        },
        "tenantId": {
          "type": "string",
          "description": "Required if `tenant_name` not provided. (string)\n",
          "secret": true
        },
        "tenantName": {
          "type": "string",
          "description": "Required if `tenant_id` not provided. (string)\n"
        },
        "trustId": {
          "type": "string",
          "description": "(string)\n",
          "secret": true
        },
        "userId": {
          "type": "string",
          "description": "Required if `username` not provided. (string)\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "Required if `user_id` not provided. (string)\n"
        }
      },
      "type": "object",
      "required": [
        "authUrl",
        "password"
      ]
    },
    "rke:index/ClusterCloudProviderOpenstackCloudConfigLoadBalancer:ClusterCloudProviderOpenstackCloudConfigLoadBalancer": {
      "properties": {
        "createMonitor": {
          "type": "boolean",
          "description": "(bool)\n"
        },
        "floatingNetworkId": {
          "type": "string",
          "description": "(string)\n"
        },
        "lbMethod": {
          "type": "string",
          "description": "(string)\n"
        },
        "lbProvider": {
          "type": "string",
          "description": "(string)\n"
        },
        "lbVersion": {
          "type": "string",
          "description": "(string)\n"
        },
        "manageSecurityGroups": {
          "type": "boolean",
          "description": "(bool)\n"
        },
        "monitorDelay": {
          "type": "string",
          "description": "(string)\n"
        },
        "monitorMaxRetries": {
          "type": "number",
          "description": "(int)\n"
        },
        "monitorTimeout": {
          "type": "string",
          "description": "(string)\n"
        },
        "subnetId": {
          "type": "string",
          "description": "(string)\n"
        },
        "useOctavia": {
          "type": "boolean",
          "description": "(bool)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudConfigMetadata:ClusterCloudProviderOpenstackCloudConfigMetadata": {
      "properties": {
        "requestTimeout": {
          "type": "number",
          "description": "(int)\n"
        },
        "searchOrder": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudConfigRoute:ClusterCloudProviderOpenstackCloudConfigRoute": {
      "properties": {
        "routerId": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudProvider:ClusterCloudProviderOpenstackCloudProvider": {
      "properties": {
        "blockStorage": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudProviderBlockStorage:ClusterCloudProviderOpenstackCloudProviderBlockStorage",
          "description": "(list maxitems:1)\n"
        },
        "global": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudProviderGlobal:ClusterCloudProviderOpenstackCloudProviderGlobal",
          "description": "(list maxitems:1)\n"
        },
        "loadBalancer": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudProviderLoadBalancer:ClusterCloudProviderOpenstackCloudProviderLoadBalancer",
          "description": "(list maxitems:1)\n"
        },
        "metadata": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudProviderMetadata:ClusterCloudProviderOpenstackCloudProviderMetadata",
          "description": "(list maxitems:1)\n"
        },
        "route": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderOpenstackCloudProviderRoute:ClusterCloudProviderOpenstackCloudProviderRoute",
          "description": "(list maxitems:1)\n"
        }
      },
      "type": "object",
      "required": [
        "global"
      ]
    },
    "rke:index/ClusterCloudProviderOpenstackCloudProviderBlockStorage:ClusterCloudProviderOpenstackCloudProviderBlockStorage": {
      "properties": {
        "bsVersion": {
          "type": "string",
          "description": "(string)\n"
        },
        "ignoreVolumeAz": {
          "type": "boolean",
          "description": "(string)\n"
        },
        "trustDevicePath": {
          "type": "boolean",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudProviderGlobal:ClusterCloudProviderOpenstackCloudProviderGlobal": {
      "properties": {
        "authUrl": {
          "type": "string",
          "description": "(string)\n"
        },
        "caFile": {
          "type": "string",
          "description": "(string)\n"
        },
        "domainId": {
          "type": "string",
          "description": "Required if `domain_name` not provided. (string)\n",
          "secret": true
        },
        "domainName": {
          "type": "string",
          "description": "Required if `domain_id` not provided. (string)\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password (string)\n",
          "secret": true
        },
        "region": {
          "type": "string",
          "description": "Region for S3 service (string)\n"
        },
        "tenantId": {
          "type": "string",
          "description": "Required if `tenant_name` not provided. (string)\n",
          "secret": true
        },
        "tenantName": {
          "type": "string",
          "description": "Required if `tenant_id` not provided. (string)\n"
        },
        "trustId": {
          "type": "string",
          "description": "(string)\n",
          "secret": true
        },
        "userId": {
          "type": "string",
          "description": "Required if `username` not provided. (string)\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "Required if `user_id` not provided. (string)\n"
        }
      },
      "type": "object",
      "required": [
        "authUrl",
        "password"
      ]
    },
    "rke:index/ClusterCloudProviderOpenstackCloudProviderLoadBalancer:ClusterCloudProviderOpenstackCloudProviderLoadBalancer": {
      "properties": {
        "createMonitor": {
          "type": "boolean",
          "description": "(bool)\n"
        },
        "floatingNetworkId": {
          "type": "string",
          "description": "(string)\n"
        },
        "lbMethod": {
          "type": "string",
          "description": "(string)\n"
        },
        "lbProvider": {
          "type": "string",
          "description": "(string)\n"
        },
        "lbVersion": {
          "type": "string",
          "description": "(string)\n"
        },
        "manageSecurityGroups": {
          "type": "boolean",
          "description": "(bool)\n"
        },
        "monitorDelay": {
          "type": "string",
          "description": "(string)\n"
        },
        "monitorMaxRetries": {
          "type": "number",
          "description": "(int)\n"
        },
        "monitorTimeout": {
          "type": "string",
          "description": "(string)\n"
        },
        "subnetId": {
          "type": "string",
          "description": "(string)\n"
        },
        "useOctavia": {
          "type": "boolean",
          "description": "(bool)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudProviderMetadata:ClusterCloudProviderOpenstackCloudProviderMetadata": {
      "properties": {
        "requestTimeout": {
          "type": "number",
          "description": "(int)\n"
        },
        "searchOrder": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderOpenstackCloudProviderRoute:ClusterCloudProviderOpenstackCloudProviderRoute": {
      "properties": {
        "routerId": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderVsphereCloudConfig:ClusterCloudProviderVsphereCloudConfig": {
      "properties": {
        "disk": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudConfigDisk:ClusterCloudProviderVsphereCloudConfigDisk",
          "description": "(list maxitems:1)\n"
        },
        "global": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudConfigGlobal:ClusterCloudProviderVsphereCloudConfigGlobal",
          "description": "(list maxitems:1)\n"
        },
        "network": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudConfigNetwork:ClusterCloudProviderVsphereCloudConfigNetwork",
          "description": "RKE k8s cluster network configuration (list maxitems:1)\n"
        },
        "virtualCenters": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudConfigVirtualCenter:ClusterCloudProviderVsphereCloudConfigVirtualCenter"
          },
          "description": "(List)\n"
        },
        "workspace": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudConfigWorkspace:ClusterCloudProviderVsphereCloudConfigWorkspace",
          "description": "(list maxitems:1)\n"
        }
      },
      "type": "object",
      "required": [
        "virtualCenters",
        "workspace"
      ]
    },
    "rke:index/ClusterCloudProviderVsphereCloudConfigDisk:ClusterCloudProviderVsphereCloudConfigDisk": {
      "properties": {
        "scsiControllerType": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderVsphereCloudConfigGlobal:ClusterCloudProviderVsphereCloudConfigGlobal": {
      "properties": {
        "datacenter": {
          "type": "string",
          "description": "(string)\n"
        },
        "datacenters": {
          "type": "string",
          "description": "(string)\n"
        },
        "datastore": {
          "type": "string",
          "description": "(string)\n"
        },
        "insecureFlag": {
          "type": "boolean",
          "description": "(bool)\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password (string)\n",
          "secret": true
        },
        "port": {
          "type": "string",
          "description": "Port used for SSH communication (string)\n"
        },
        "soapRoundtripCount": {
          "type": "number",
          "description": "(int)\n"
        },
        "user": {
          "type": "string",
          "description": "Registry user (string)\n",
          "secret": true
        },
        "vmName": {
          "type": "string",
          "description": "(string)\n"
        },
        "vmUuid": {
          "type": "string",
          "description": "(string)\n"
        },
        "workingDir": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "datacenters"
          ]
        }
      }
    },
    "rke:index/ClusterCloudProviderVsphereCloudConfigNetwork:ClusterCloudProviderVsphereCloudConfigNetwork": {
      "properties": {
        "publicNetwork": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderVsphereCloudConfigVirtualCenter:ClusterCloudProviderVsphereCloudConfigVirtualCenter": {
      "properties": {
        "datacenters": {
          "type": "string",
          "description": "(string)\n"
        },
        "name": {
          "type": "string",
          "description": "Name of virtualcenter config for Vsphere Cloud Provider config (string)\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password (string)\n",
          "secret": true
        },
        "port": {
          "type": "string",
          "description": "Port used for SSH communication (string)\n"
        },
        "soapRoundtripCount": {
          "type": "number",
          "description": "(int)\n"
        },
        "user": {
          "type": "string",
          "description": "Registry user (string)\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "datacenters",
        "name",
        "password",
        "user"
      ]
    },
    "rke:index/ClusterCloudProviderVsphereCloudConfigWorkspace:ClusterCloudProviderVsphereCloudConfigWorkspace": {
      "properties": {
        "datacenter": {
          "type": "string",
          "description": "(string)\n"
        },
        "defaultDatastore": {
          "type": "string",
          "description": "(string)\n"
        },
        "folder": {
          "type": "string",
          "description": "Folder for S3 service. Available from Rancher v2.2.7 (string)\n"
        },
        "resourcepoolPath": {
          "type": "string",
          "description": "(string)\n"
        },
        "server": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object",
      "required": [
        "datacenter",
        "server"
      ]
    },
    "rke:index/ClusterCloudProviderVsphereCloudProvider:ClusterCloudProviderVsphereCloudProvider": {
      "properties": {
        "disk": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudProviderDisk:ClusterCloudProviderVsphereCloudProviderDisk",
          "description": "(list maxitems:1)\n"
        },
        "global": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudProviderGlobal:ClusterCloudProviderVsphereCloudProviderGlobal",
          "description": "(list maxitems:1)\n"
        },
        "network": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudProviderNetwork:ClusterCloudProviderVsphereCloudProviderNetwork",
          "description": "RKE k8s cluster network configuration (list maxitems:1)\n"
        },
        "virtualCenters": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudProviderVirtualCenter:ClusterCloudProviderVsphereCloudProviderVirtualCenter"
          },
          "description": "(List)\n"
        },
        "workspace": {
          "$ref": "#/types/rke:index%2FClusterCloudProviderVsphereCloudProviderWorkspace:ClusterCloudProviderVsphereCloudProviderWorkspace",
          "description": "(list maxitems:1)\n"
        }
      },
      "type": "object",
      "required": [
        "virtualCenters",
        "workspace"
      ]
    },
    "rke:index/ClusterCloudProviderVsphereCloudProviderDisk:ClusterCloudProviderVsphereCloudProviderDisk": {
      "properties": {
        "scsiControllerType": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderVsphereCloudProviderGlobal:ClusterCloudProviderVsphereCloudProviderGlobal": {
      "properties": {
        "datacenter": {
          "type": "string",
          "description": "(string)\n"
        },
        "datacenters": {
          "type": "string",
          "description": "(string)\n"
        },
        "datastore": {
          "type": "string",
          "description": "(string)\n"
        },
        "insecureFlag": {
          "type": "boolean",
          "description": "(bool)\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password (string)\n",
          "secret": true
        },
        "port": {
          "type": "string",
          "description": "Port used for SSH communication (string)\n"
        },
        "soapRoundtripCount": {
          "type": "number",
          "description": "(int)\n"
        },
        "user": {
          "type": "string",
          "description": "Registry user (string)\n",
          "secret": true
        },
        "vmName": {
          "type": "string",
          "description": "(string)\n"
        },
        "vmUuid": {
          "type": "string",
          "description": "(string)\n"
        },
        "workingDir": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "datacenters"
          ]
        }
      }
    },
    "rke:index/ClusterCloudProviderVsphereCloudProviderNetwork:ClusterCloudProviderVsphereCloudProviderNetwork": {
      "properties": {
        "publicNetwork": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterCloudProviderVsphereCloudProviderVirtualCenter:ClusterCloudProviderVsphereCloudProviderVirtualCenter": {
      "properties": {
        "datacenters": {
          "type": "string",
          "description": "(string)\n"
        },
        "name": {
          "type": "string",
          "description": "Name of virtualcenter config for Vsphere Cloud Provider config (string)\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password (string)\n",
          "secret": true
        },
        "port": {
          "type": "string",
          "description": "Port used for SSH communication (string)\n"
        },
        "soapRoundtripCount": {
          "type": "number",
          "description": "(int)\n"
        },
        "user": {
          "type": "string",
          "description": "Registry user (string)\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "datacenters",
        "name",
        "password",
        "user"
      ]
    },
    "rke:index/ClusterCloudProviderVsphereCloudProviderWorkspace:ClusterCloudProviderVsphereCloudProviderWorkspace": {
      "properties": {
        "datacenter": {
          "type": "string",
          "description": "(string)\n"
        },
        "defaultDatastore": {
          "type": "string",
          "description": "(string)\n"
        },
        "folder": {
          "type": "string",
          "description": "Folder for S3 service. Available from Rancher v2.2.7 (string)\n"
        },
        "resourcepoolPath": {
          "type": "string",
          "description": "(string)\n"
        },
        "server": {
          "type": "string",
          "description": "(string)\n"
        }
      },
      "type": "object",
      "required": [
        "datacenter",
        "server"
      ]
    },
    "rke:index/ClusterControlPlaneHost:ClusterControlPlaneHost": {
      "properties": {
        "address": {
          "type": "string",
          "description": "Address ip for node (string)\n"
        },
        "nodeName": {
          "type": "string",
          "description": "Name of the host provisioned via docker machine (string)\n"
        }
      },
      "type": "object",
      "required": [
        "address",
        "nodeName"
      ]
    },
    "rke:index/ClusterDns:ClusterDns": {
      "properties": {
        "nodeSelector": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "NodeSelector key pair\n"
        },
        "nodelocal": {
          "$ref": "#/types/rke:index%2FClusterDnsNodelocal:ClusterDnsNodelocal",
          "description": "Nodelocal dns\n"
        },
        "provider": {
          "type": "string",
          "description": "DNS provider\n"
        },
        "reverseCidrs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "ReverseCIDRs\n"
        },
        "upstreamNameservers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Upstream nameservers\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterDnsNodelocal:ClusterDnsNodelocal": {
      "properties": {
        "ipAddress": {
          "type": "string",
          "description": "Nodelocal dns ip address (string)\n"
        },
        "nodeSelector": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Node selector key pair\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterEtcdHost:ClusterEtcdHost": {
      "properties": {
        "address": {
          "type": "string",
          "description": "Address ip for node (string)\n"
        },
        "nodeName": {
          "type": "string",
          "description": "Name of the host provisioned via docker machine (string)\n"
        }
      },
      "type": "object",
      "required": [
        "address",
        "nodeName"
      ]
    },
    "rke:index/ClusterInactiveHost:ClusterInactiveHost": {
      "properties": {
        "address": {
          "type": "string",
          "description": "Address ip for node (string)\n"
        },
        "nodeName": {
          "type": "string",
          "description": "Name of the host provisioned via docker machine (string)\n"
        }
      },
      "type": "object",
      "required": [
        "address",
        "nodeName"
      ]
    },
    "rke:index/ClusterIngress:ClusterIngress": {
      "properties": {
        "defaultBackend": {
          "type": "boolean",
          "description": "Ingress Default Backend\n"
        },
        "dnsPolicy": {
          "type": "string",
          "description": "Ingress controller dns policy\n"
        },
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments for the ingress controller\n"
        },
        "httpPort": {
          "type": "number",
          "description": "Ingress controller http port\n"
        },
        "httpsPort": {
          "type": "number",
          "description": "Ingress controller https port\n"
        },
        "networkMode": {
          "type": "string",
          "description": "Ingress controller network mode\n"
        },
        "nodeSelector": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Node selector key pair\n"
        },
        "options": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Ingress controller options\n"
        },
        "provider": {
          "type": "string",
          "description": "Ingress controller provider\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterMonitoring:ClusterMonitoring": {
      "properties": {
        "nodeSelector": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Node selector key pair\n"
        },
        "options": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Monitoring options\n"
        },
        "provider": {
          "type": "string",
          "description": "Monitoring provider\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "provider"
          ]
        }
      }
    },
    "rke:index/ClusterNetwork:ClusterNetwork": {
      "properties": {
        "aciNetworkProvider": {
          "$ref": "#/types/rke:index%2FClusterNetworkAciNetworkProvider:ClusterNetworkAciNetworkProvider",
          "description": "Aci network provider config\n"
        },
        "calicoNetworkProvider": {
          "$ref": "#/types/rke:index%2FClusterNetworkCalicoNetworkProvider:ClusterNetworkCalicoNetworkProvider",
          "description": "Calico network provider config\n"
        },
        "canalNetworkProvider": {
          "$ref": "#/types/rke:index%2FClusterNetworkCanalNetworkProvider:ClusterNetworkCanalNetworkProvider",
          "description": "Canal network provider config\n"
        },
        "enableBrNetfilter": {
          "type": "boolean",
          "description": "Enable/Disable br_netfilter on nodes\n"
        },
        "flannelNetworkProvider": {
          "$ref": "#/types/rke:index%2FClusterNetworkFlannelNetworkProvider:ClusterNetworkFlannelNetworkProvider",
          "description": "Flannel network provider config\n"
        },
        "mtu": {
          "type": "number",
          "description": "Network provider MTU\n"
        },
        "options": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Network provider options\n"
        },
        "plugin": {
          "type": "string",
          "description": "Network provider plugin\n"
        },
        "weaveNetworkProvider": {
          "$ref": "#/types/rke:index%2FClusterNetworkWeaveNetworkProvider:ClusterNetworkWeaveNetworkProvider",
          "description": "Weave network provider config\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "options"
          ]
        }
      }
    },
    "rke:index/ClusterNetworkAciNetworkProvider:ClusterNetworkAciNetworkProvider": {
      "properties": {
        "aep": {
          "type": "string",
          "description": "Attachment entity profile name on aci (string)\n"
        },
        "apicHosts": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Ip address for apic hosts (list)\n"
        },
        "apicUserCrt": {
          "type": "string",
          "description": "Base64 encoded certificate for aci apic user (string)\n",
          "secret": true
        },
        "apicUserKey": {
          "type": "string",
          "description": "Base64 encoded private key for aci apic user (string)\n",
          "secret": true
        },
        "apicUserName": {
          "type": "string",
          "description": "User name for aci apic (string)\n"
        },
        "encapType": {
          "type": "string",
          "description": "One of the supported encap types for aci(vlan/vxlan) (string)\n"
        },
        "externDynamic": {
          "type": "string",
          "description": "Subnet to use for dynamic external IPs on aci (string)\n* `extern_static\"` - (Required) Subnet to use for static external IPs on aci (string)\n"
        },
        "externStatic": {
          "type": "string"
        },
        "infraVlan": {
          "type": "string",
          "description": "Vlan for infra network on aci (string)\n"
        },
        "kubeApiVlan": {
          "type": "string",
          "description": "Vlan for node network on aci (string)\n"
        },
        "l3out": {
          "type": "string",
          "description": "L3Out on aci (string)\n"
        },
        "l3outExternalNetworks": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "L3out external networks on aci (list)\n"
        },
        "mcastRangeEnd": {
          "type": "string",
          "description": "Mcast range end address for endpoint groups on aci (string)\n"
        },
        "mcastRangeStart": {
          "type": "string",
          "description": "Mcast range start address for endpoint groups on aci (string)\n"
        },
        "nodeSubnet": {
          "type": "string",
          "description": "Kubernetes node address subnet (string)\n"
        },
        "nodeSvcSubnet": {
          "type": "string",
          "description": "Subnet to use for service graph endpoints on aci (string)\n"
        },
        "serviceVlan": {
          "type": "string",
          "description": "Vlan for service graph nodes on aci (string)\n"
        },
        "snatPortRangeEnd": {
          "type": "string",
          "description": "Port end range for Source Network Address Translation on aci (string)\n"
        },
        "snatPortRangeStart": {
          "type": "string",
          "description": "Port start range for Source Network Address Translation on aci (string)\n"
        },
        "snatPortsPerNode": {
          "type": "string",
          "description": "Ports per node for Source Network Address Translation on aci (string)\n"
        },
        "systemId": {
          "type": "string",
          "description": "Unique suffix for all cluster related objects in aci (string)\n"
        },
        "token": {
          "type": "string",
          "description": "UUID for this version of the input configuration (string)\n",
          "secret": true
        },
        "vrfName": {
          "type": "string",
          "description": "VRF Name on aci (string)\n"
        },
        "vrfTenant": {
          "type": "string",
          "description": "Tenant for VRF on aci (string)\n"
        }
      },
      "type": "object",
      "required": [
        "aep",
        "apicHosts",
        "apicUserCrt",
        "apicUserKey",
        "apicUserName",
        "encapType",
        "externDynamic",
        "externStatic",
        "infraVlan",
        "kubeApiVlan",
        "l3out",
        "l3outExternalNetworks",
        "mcastRangeEnd",
        "mcastRangeStart",
        "nodeSubnet",
        "nodeSvcSubnet",
        "serviceVlan",
        "systemId",
        "token",
        "vrfName",
        "vrfTenant"
      ]
    },
    "rke:index/ClusterNetworkCalicoNetworkProvider:ClusterNetworkCalicoNetworkProvider": {
      "properties": {
        "cloudProvider": {
          "type": "string",
          "description": "RKE k8s cluster cloud provider configuration [rke-cloud-providers](https://rancher.com/docs/rke/latest/en/config-options/cloud-providers/) (list maxitems:1)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudProvider"
          ]
        }
      }
    },
    "rke:index/ClusterNetworkCanalNetworkProvider:ClusterNetworkCanalNetworkProvider": {
      "properties": {
        "iface": {
          "type": "string",
          "description": "Flannel network interface (string)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "iface"
          ]
        }
      }
    },
    "rke:index/ClusterNetworkFlannelNetworkProvider:ClusterNetworkFlannelNetworkProvider": {
      "properties": {
        "iface": {
          "type": "string",
          "description": "Flannel network interface (string)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "iface"
          ]
        }
      }
    },
    "rke:index/ClusterNetworkWeaveNetworkProvider:ClusterNetworkWeaveNetworkProvider": {
      "properties": {
        "password": {
          "type": "string",
          "description": "Registry password (string)\n"
        }
      },
      "type": "object",
      "required": [
        "password"
      ]
    },
    "rke:index/ClusterNode:ClusterNode": {
      "properties": {
        "address": {
          "type": "string",
          "description": "IP or FQDN that is fully resolvable and used for SSH communication\n"
        },
        "dockerSocket": {
          "type": "string",
          "description": "Docker socket on the node that will be used in tunneling\n"
        },
        "hostnameOverride": {
          "type": "string",
          "description": "Hostname override\n"
        },
        "internalAddress": {
          "type": "string",
          "description": "Internal address that will be used for components communication\n"
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Node Labels\n"
        },
        "nodeName": {
          "type": "string",
          "description": "Name of the host provisioned via docker machine\n"
        },
        "port": {
          "type": "string",
          "description": "Port used for SSH communication\n"
        },
        "role": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Node roles in k8s cluster [controlplane/worker/etcd])\n"
        },
        "roles": {
          "type": "string",
          "description": "Node role in kubernetes cluster [controlplane/worker/etcd], specified by a comma-separated string\n",
          "deprecationMessage": "Deprecated"
        },
        "sshAgentAuth": {
          "type": "boolean",
          "description": "SSH Agent Auth enable (bool)\n"
        },
        "sshCert": {
          "type": "string",
          "description": "SSH Certificate\n",
          "secret": true
        },
        "sshCertPath": {
          "type": "string",
          "description": "SSH Certificate Path (string)\n"
        },
        "sshKey": {
          "type": "string",
          "description": "SSH Private Key\n",
          "secret": true
        },
        "sshKeyPath": {
          "type": "string",
          "description": "SSH Private Key Path (string)\n"
        },
        "taints": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterNodeTaint:ClusterNodeTaint"
          },
          "description": "Node taints\n"
        },
        "user": {
          "type": "string",
          "description": "SSH user that will be used by RKE\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "address",
        "role",
        "user"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "address",
            "role",
            "sshAgentAuth",
            "user"
          ]
        }
      }
    },
    "rke:index/ClusterNodeTaint:ClusterNodeTaint": {
      "properties": {
        "effect": {
          "type": "string",
          "description": "Taint effect. `NoExecute`, `NoSchedule` (default) and `PreferNoSchedule` are supported (string)\n"
        },
        "key": {
          "type": "string",
          "description": "TLS key for etcd service (string)\n"
        },
        "value": {
          "type": "string",
          "description": "Taint value (string)\n"
        }
      },
      "type": "object",
      "required": [
        "key",
        "value"
      ]
    },
    "rke:index/ClusterPrivateRegistry:ClusterPrivateRegistry": {
      "properties": {
        "isDefault": {
          "type": "boolean",
          "description": "Set as default registry\n"
        },
        "password": {
          "type": "string",
          "description": "Registry password\n",
          "secret": true
        },
        "url": {
          "type": "string",
          "description": "Registry URL\n"
        },
        "user": {
          "type": "string",
          "description": "Registry user\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "url"
      ]
    },
    "rke:index/ClusterRestore:ClusterRestore": {
      "properties": {
        "restore": {
          "type": "boolean",
          "description": "RKE k8s cluster restore configuration (list maxitems:1)\n"
        },
        "snapshotName": {
          "type": "string",
          "description": "Snapshot name\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterRotateCertificates:ClusterRotateCertificates": {
      "properties": {
        "caCertificates": {
          "type": "boolean",
          "description": "Rotate CA Certificates\n"
        },
        "services": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "RKE k8s cluster services (list maxitems:1)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterRunningSystemImage:ClusterRunningSystemImage": {
      "properties": {
        "aciCniDeployContainer": {
          "type": "string",
          "description": "Docker image for aci_cni_deploy_container (string)\n"
        },
        "aciControllerContainer": {
          "type": "string",
          "description": "Docker image for aci_controller_container (string)\n"
        },
        "aciHostContainer": {
          "type": "string",
          "description": "Docker image for aci_host_container (string)\n"
        },
        "aciMcastContainer": {
          "type": "string",
          "description": "Docker image for aci_mcast_container (string)\n"
        },
        "aciOpflexContainer": {
          "type": "string",
          "description": "Docker image for aci_opflex_container (string)\n"
        },
        "aciOvsContainer": {
          "type": "string",
          "description": "Docker image for aci_ovs_container (string)\n"
        },
        "alpine": {
          "type": "string",
          "description": "Docker image for alpine (string)\n"
        },
        "calicoCni": {
          "type": "string",
          "description": "Docker image for calico_cni (string)\n"
        },
        "calicoControllers": {
          "type": "string",
          "description": "Docker image for calico_controllers (string)\n"
        },
        "calicoCtl": {
          "type": "string",
          "description": "Docker image for calico_ctl (string)\n"
        },
        "calicoFlexVol": {
          "type": "string",
          "description": "Docker image for calico_flex_vol (string)\n"
        },
        "calicoNode": {
          "type": "string",
          "description": "Docker image for calico_node (string)\n"
        },
        "canalCni": {
          "type": "string",
          "description": "Docker image for canal_cni (string)\n"
        },
        "canalFlannel": {
          "type": "string",
          "description": "Docker image for canal_flannel (string)\n"
        },
        "canalFlexVol": {
          "type": "string",
          "description": "Docker image for canal_flex_vol (string)\n"
        },
        "canalNode": {
          "type": "string",
          "description": "Docker image for canal_node (string)\n"
        },
        "certDownloader": {
          "type": "string",
          "description": "Docker image for cert_downloader (string)\n"
        },
        "coredns": {
          "type": "string",
          "description": "Docker image for coredns (string)\n"
        },
        "corednsAutoscaler": {
          "type": "string",
          "description": "Docker image for coredns_autoscaler (string)\n"
        },
        "dnsmasq": {
          "type": "string",
          "description": "Docker image for dnsmasq (string)\n"
        },
        "etcd": {
          "type": "string",
          "description": "Docker image for etcd (string)\n"
        },
        "flannel": {
          "type": "string",
          "description": "Docker image for flannel (string)\n"
        },
        "flannelCni": {
          "type": "string",
          "description": "Docker image for flannel_cni (string)\n"
        },
        "ingress": {
          "type": "string",
          "description": "RKE k8s cluster ingress controller configuration (list maxitems:1)\n"
        },
        "ingressBackend": {
          "type": "string",
          "description": "Docker image for ingress_backend (string)\n"
        },
        "kubeDns": {
          "type": "string",
          "description": "Docker image for kube_dns (string)\n"
        },
        "kubeDnsAutoscaler": {
          "type": "string",
          "description": "Docker image for kube_dns_autoscaler (string)\n"
        },
        "kubeDnsSidecar": {
          "type": "string",
          "description": "Docker image for kube_dns_sidecar (string)\n"
        },
        "kubernetes": {
          "type": "string",
          "description": "Docker image for kubernetes (string)\n"
        },
        "kubernetesServicesSidecar": {
          "type": "string",
          "description": "Docker image for kubernetes_services_sidecar (string)\n"
        },
        "metricsServer": {
          "type": "string",
          "description": "Docker image for metrics_server (string)\n"
        },
        "nginxProxy": {
          "type": "string",
          "description": "Docker image for nginx_proxy (string)\n"
        },
        "nodelocal": {
          "type": "string",
          "description": "Docker image for nodelocal (string)\n"
        },
        "podInfraContainer": {
          "type": "string",
          "description": "Docker image for pod_infra_container (string)\n"
        },
        "weaveCni": {
          "type": "string",
          "description": "Docker image for weave_cni (string)\n"
        },
        "weaveNode": {
          "type": "string",
          "description": "Docker image for weave_node (string)\n"
        },
        "windowsPodInfraContainer": {
          "type": "string",
          "description": "Docker image for windows_pod_infra_container (string)\n"
        }
      },
      "type": "object",
      "required": [
        "aciCniDeployContainer",
        "aciControllerContainer",
        "aciHostContainer",
        "aciMcastContainer",
        "aciOpflexContainer",
        "aciOvsContainer",
        "alpine",
        "calicoCni",
        "calicoControllers",
        "calicoCtl",
        "calicoFlexVol",
        "calicoNode",
        "canalCni",
        "canalFlannel",
        "canalFlexVol",
        "canalNode",
        "certDownloader",
        "coredns",
        "corednsAutoscaler",
        "dnsmasq",
        "etcd",
        "flannel",
        "flannelCni",
        "ingress",
        "ingressBackend",
        "kubeDns",
        "kubeDnsAutoscaler",
        "kubeDnsSidecar",
        "kubernetes",
        "kubernetesServicesSidecar",
        "metricsServer",
        "nginxProxy",
        "nodelocal",
        "podInfraContainer",
        "weaveCni",
        "weaveNode",
        "windowsPodInfraContainer"
      ]
    },
    "rke:index/ClusterServices:ClusterServices": {
      "properties": {
        "etcd": {
          "$ref": "#/types/rke:index%2FClusterServicesEtcd:ClusterServicesEtcd",
          "description": "Docker image for etcd (string)\n"
        },
        "kubeApi": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApi:ClusterServicesKubeApi",
          "description": "Kube API options for RKE services (list maxitems:1)\n"
        },
        "kubeController": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeController:ClusterServicesKubeController",
          "description": "Kube Controller options for RKE services (list maxitems:1)\n"
        },
        "kubelet": {
          "$ref": "#/types/rke:index%2FClusterServicesKubelet:ClusterServicesKubelet",
          "description": "Kubelet options for RKE services (list maxitems:1)\n"
        },
        "kubeproxy": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeproxy:ClusterServicesKubeproxy",
          "description": "Kubeproxy options for RKE services (list maxitems:1)\n"
        },
        "scheduler": {
          "$ref": "#/types/rke:index%2FClusterServicesScheduler:ClusterServicesScheduler",
          "description": "Scheduler options for RKE services (list maxitems:1)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterServicesEtcd:ClusterServicesEtcd": {
      "properties": {
        "backupConfig": {
          "$ref": "#/types/rke:index%2FClusterServicesEtcdBackupConfig:ClusterServicesEtcdBackupConfig",
          "description": "Backup options for etcd service. For Rancher v2.2.x and above (list maxitems:1)\n"
        },
        "caCert": {
          "type": "string",
          "description": "TLS CA certificate for etcd service (string)\n",
          "secret": true
        },
        "cert": {
          "type": "string",
          "description": "TLS certificate for etcd service (string)\n",
          "secret": true
        },
        "creation": {
          "type": "string",
          "description": "Creation option for etcd service (string)\n"
        },
        "externalUrls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "External urls for etcd service (list)\n"
        },
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments for scheduler service (map)\n"
        },
        "extraBinds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra binds for scheduler service (list)\n"
        },
        "extraEnvs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra environment for scheduler service (list)\n"
        },
        "gid": {
          "type": "number",
          "description": "Etcd service GID. Default: `0`. For Rancher v2.3.x and above (int)\n"
        },
        "image": {
          "type": "string",
          "description": "Docker image for scheduler service (string)\n"
        },
        "key": {
          "type": "string",
          "description": "TLS key for etcd service (string)\n",
          "secret": true
        },
        "path": {
          "type": "string",
          "description": "Audit log path. Default: `/var/log/kube-audit/audit-log.json` (string)\n"
        },
        "retention": {
          "type": "string",
          "description": "Retention for etcd backup. Default `6` (int)\n"
        },
        "snapshot": {
          "type": "boolean",
          "description": "Snapshot option for etcd service. Default `true` (bool)\n"
        },
        "uid": {
          "type": "number",
          "description": "Etcd service UID. Default: `0`. For Rancher v2.3.x and above (int)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "caCert",
            "cert",
            "creation",
            "externalUrls",
            "extraArgs",
            "extraBinds",
            "extraEnvs",
            "image",
            "key",
            "path",
            "retention"
          ]
        }
      }
    },
    "rke:index/ClusterServicesEtcdBackupConfig:ClusterServicesEtcdBackupConfig": {
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Enable secrets encryption (bool)\n"
        },
        "intervalHours": {
          "type": "number",
          "description": "Interval hours for etcd backup. Default `12` (int)\n"
        },
        "retention": {
          "type": "number",
          "description": "Retention for etcd backup. Default `6` (int)\n"
        },
        "s3BackupConfig": {
          "$ref": "#/types/rke:index%2FClusterServicesEtcdBackupConfigS3BackupConfig:ClusterServicesEtcdBackupConfigS3BackupConfig",
          "description": "S3 config options for etcd backup (list maxitems:1)\n"
        },
        "safeTimestamp": {
          "type": "boolean",
          "description": "Safe timestamp for etcd backup. Default: `false` (bool)\n"
        },
        "timeout": {
          "type": "number",
          "description": "RKE node drain timeout (int)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterServicesEtcdBackupConfigS3BackupConfig:ClusterServicesEtcdBackupConfigS3BackupConfig": {
      "properties": {
        "accessKey": {
          "type": "string",
          "description": "Access key for S3 service (string)\n",
          "secret": true
        },
        "bucketName": {
          "type": "string",
          "description": "Bucket name for S3 service (string)\n"
        },
        "customCa": {
          "type": "string",
          "description": "Base64 encoded custom CA for S3 service. Use filebase64(<FILE>) for encoding file. Available from Rancher v2.2.5 (string)\n"
        },
        "endpoint": {
          "type": "string",
          "description": "Endpoint for S3 service (string)\n"
        },
        "folder": {
          "type": "string",
          "description": "Folder for S3 service. Available from Rancher v2.2.7 (string)\n"
        },
        "region": {
          "type": "string",
          "description": "Region for S3 service (string)\n"
        },
        "secretKey": {
          "type": "string",
          "description": "Secret key for S3 service (string)\n",
          "secret": true
        }
      },
      "type": "object"
    },
    "rke:index/ClusterServicesKubeApi:ClusterServicesKubeApi": {
      "properties": {
        "alwaysPullImages": {
          "type": "boolean",
          "description": "Enable/Disable AlwaysPullImages admissions plugin\n"
        },
        "auditLog": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApiAuditLog:ClusterServicesKubeApiAuditLog",
          "description": "K8s audit log configuration. (list maxitem: 1)\n"
        },
        "eventRateLimit": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApiEventRateLimit:ClusterServicesKubeApiEventRateLimit",
          "description": "K8s event rate limit configuration. (list maxitem: 1)\n"
        },
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments that are added to the kube-api services\n"
        },
        "extraBinds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra binds added to the controlplane nodes\n"
        },
        "extraEnvs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra env added to the controlplane nodes\n"
        },
        "image": {
          "type": "string",
          "description": "Docker image for scheduler service (string)\n"
        },
        "podSecurityConfiguration": {
          "type": "string",
          "description": "Built-in PodSecurityPolicy (privileged or restricted)\n"
        },
        "podSecurityPolicy": {
          "type": "boolean",
          "description": "Enabled/Disable PodSecurityPolicy\n"
        },
        "secretsEncryptionConfig": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApiSecretsEncryptionConfig:ClusterServicesKubeApiSecretsEncryptionConfig",
          "description": "[Encrypt k8s secret data configration](https://rancher.com/docs/rke/latest/en/config-options/secrets-encryption/). (list maxitem: 1)\n"
        },
        "serviceClusterIpRange": {
          "type": "string",
          "description": "Virtual IP range that will be used by Kubernetes services\n"
        },
        "serviceNodePortRange": {
          "type": "string",
          "description": "Port range for services defined with NodePort type\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "alwaysPullImages",
            "extraArgs",
            "extraBinds",
            "extraEnvs",
            "image",
            "podSecurityConfiguration",
            "podSecurityPolicy",
            "serviceClusterIpRange",
            "serviceNodePortRange"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubeApiAuditLog:ClusterServicesKubeApiAuditLog": {
      "properties": {
        "configuration": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApiAuditLogConfiguration:ClusterServicesKubeApiAuditLogConfiguration",
          "description": "Event rate limit yaml encoded configuration. `\"apiVersion\"` and `\"kind\":\"Configuration\"` fields are required in the yaml. Ex. `apiVersion: eventratelimit.admission.k8s.io/v1alpha1\\nkind: Configuration\\nlimits:\\n- type: Server\\n  burst: 30000\\n  qps: 6000\\n` [More info](https://rancher.com/docs/rke/latest/en/config-options/rate-limiting/) (string)\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "Enable secrets encryption (bool)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubeApiAuditLogConfiguration:ClusterServicesKubeApiAuditLogConfiguration": {
      "properties": {
        "format": {
          "type": "string",
          "description": "Audit log format (string)\n"
        },
        "maxAge": {
          "type": "number",
          "description": "Audit log max age (int)\n"
        },
        "maxBackup": {
          "type": "number",
          "description": "Audit log max backup. Default: `10` (int)\n"
        },
        "maxSize": {
          "type": "number",
          "description": "Audit log max size. Default: `100` (int)\n"
        },
        "path": {
          "type": "string",
          "description": "Audit log path. Default: `/var/log/kube-audit/audit-log.json` (string)\n"
        },
        "policy": {
          "type": "string",
          "description": "Audit policy json encoded definition. `\"apiVersion\"` and `\"kind\":\"Policy\",\"rules\"` fields are required in the json. Ex. `jsonencode({\"apiVersion\":\"audit.k8s.io/v1\",\"kind\":\"Policy\",\"rules\":[{\"level\":\"RequestResponse\",\"resources\":[{\"group\":\"\",\"resources\":[\"pods\"]}]}]})` [More info](https://rancher.com/docs/rke/latest/en/config-options/audit-log/) (string)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "format",
            "maxAge",
            "maxBackup",
            "maxSize",
            "path",
            "policy"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubeApiEventRateLimit:ClusterServicesKubeApiEventRateLimit": {
      "properties": {
        "configuration": {
          "type": "string",
          "description": "Event rate limit yaml encoded configuration. `\"apiVersion\"` and `\"kind\":\"Configuration\"` fields are required in the yaml. Ex. `apiVersion: eventratelimit.admission.k8s.io/v1alpha1\\nkind: Configuration\\nlimits:\\n- type: Server\\n  burst: 30000\\n  qps: 6000\\n` [More info](https://rancher.com/docs/rke/latest/en/config-options/rate-limiting/) (string)\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "Enable secrets encryption (bool)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configuration",
            "enabled"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubeApiSecretsEncryptionConfig:ClusterServicesKubeApiSecretsEncryptionConfig": {
      "properties": {
        "customConfig": {
          "type": "string",
          "description": "Secrets encryption yaml encoded custom configuration. `\"apiVersion\"` and `\"kind\":\"EncryptionConfiguration\"` fields are required in the yaml. Ex. `apiVersion: apiserver.config.k8s.io/v1\\nkind: EncryptionConfiguration\\nresources:\\n- resources:\\n  - secrets\\n  providers:\\n  - aescbc:\\n      keys:\\n      - name: k-fw5hn\\n        secret: RTczRjFDODMwQzAyMDVBREU4NDJBMUZFNDhCNzM5N0I=\\n    identity: {}\\n` [More info](https://rancher.com/docs/rke/latest/en/config-options/secrets-encryption/) (string)\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "Enable secrets encryption (bool)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customConfig",
            "enabled"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubeController:ClusterServicesKubeController": {
      "properties": {
        "clusterCidr": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster cidr (string)\n"
        },
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments that are added to the kube-controller service\n"
        },
        "extraBinds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra binds added to the controlplane nodes\n"
        },
        "extraEnvs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra env added to the controlplane nodes\n"
        },
        "image": {
          "type": "string",
          "description": "Docker image of the kube-controller service\n"
        },
        "serviceClusterIpRange": {
          "type": "string",
          "description": "Virtual IP range that will be used by Kubernetes services\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterCidr",
            "extraArgs",
            "extraBinds",
            "extraEnvs",
            "image",
            "serviceClusterIpRange"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubelet:ClusterServicesKubelet": {
      "properties": {
        "clusterDnsServer": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster dns server (string)\n"
        },
        "clusterDomain": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster domain (string)\n"
        },
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments that are added to the kubelet services\n"
        },
        "extraBinds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra binds added to the worker nodes\n"
        },
        "extraEnvs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra env added to the nodes\n"
        },
        "failSwapOn": {
          "type": "boolean",
          "description": "Fail if swap is enabled\n"
        },
        "generateServingCertificate": {
          "type": "boolean",
          "description": "[Generate a certificate signed by the kube-ca](https://rancher.com/docs/rke/latest/en/config-options/services/#kubelet-serving-certificate-requirements). Default `false` (bool)\n"
        },
        "image": {
          "type": "string",
          "description": "Docker image of the kubelet service\n"
        },
        "infraContainerImage": {
          "type": "string",
          "description": "The image whose network/ipc namespaces containers in each pod will use\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterDnsServer",
            "extraArgs",
            "extraBinds",
            "extraEnvs",
            "failSwapOn",
            "image",
            "infraContainerImage"
          ]
        }
      }
    },
    "rke:index/ClusterServicesKubeproxy:ClusterServicesKubeproxy": {
      "properties": {
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments that are added to the kubeproxy services\n"
        },
        "extraBinds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra binds added to the worker nodes\n"
        },
        "extraEnvs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra env added to the worker nodes\n"
        },
        "image": {
          "type": "string",
          "description": "Docker image of the kubeproxy service\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extraArgs",
            "extraBinds",
            "extraEnvs",
            "image"
          ]
        }
      }
    },
    "rke:index/ClusterServicesScheduler:ClusterServicesScheduler": {
      "properties": {
        "extraArgs": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Extra arguments that are added to the scheduler services\n"
        },
        "extraBinds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra binds added to the controlplane nodes\n"
        },
        "extraEnvs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Extra env added to the controlplane nodes\n"
        },
        "image": {
          "type": "string",
          "description": "Docker image of the scheduler service\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extraArgs",
            "extraBinds",
            "extraEnvs",
            "image"
          ]
        }
      }
    },
    "rke:index/ClusterSystemImages:ClusterSystemImages": {
      "properties": {
        "aciCniDeployContainer": {
          "type": "string",
          "description": "Docker image for aci_cni_deploy_container (string)\n"
        },
        "aciControllerContainer": {
          "type": "string",
          "description": "Docker image for aci_controller_container (string)\n"
        },
        "aciHostContainer": {
          "type": "string",
          "description": "Docker image for aci_host_container (string)\n"
        },
        "aciMcastContainer": {
          "type": "string",
          "description": "Docker image for aci_mcast_container (string)\n"
        },
        "aciOpflexContainer": {
          "type": "string",
          "description": "Docker image for aci_opflex_container (string)\n"
        },
        "aciOvsContainer": {
          "type": "string",
          "description": "Docker image for aci_ovs_container (string)\n"
        },
        "alpine": {
          "type": "string",
          "description": "Docker image for alpine (string)\n"
        },
        "calicoCni": {
          "type": "string",
          "description": "Docker image for calico_cni (string)\n"
        },
        "calicoControllers": {
          "type": "string",
          "description": "Docker image for calico_controllers (string)\n"
        },
        "calicoCtl": {
          "type": "string",
          "description": "Docker image for calico_ctl (string)\n"
        },
        "calicoFlexVol": {
          "type": "string",
          "description": "Docker image for calico_flex_vol (string)\n"
        },
        "calicoNode": {
          "type": "string",
          "description": "Docker image for calico_node (string)\n"
        },
        "canalCni": {
          "type": "string",
          "description": "Docker image for canal_cni (string)\n"
        },
        "canalFlannel": {
          "type": "string",
          "description": "Docker image for canal_flannel (string)\n"
        },
        "canalFlexVol": {
          "type": "string",
          "description": "Docker image for canal_flex_vol (string)\n"
        },
        "canalNode": {
          "type": "string",
          "description": "Docker image for canal_node (string)\n"
        },
        "certDownloader": {
          "type": "string",
          "description": "Docker image for cert_downloader (string)\n"
        },
        "coredns": {
          "type": "string",
          "description": "Docker image for coredns (string)\n"
        },
        "corednsAutoscaler": {
          "type": "string",
          "description": "Docker image for coredns_autoscaler (string)\n"
        },
        "dnsmasq": {
          "type": "string",
          "description": "Docker image for dnsmasq (string)\n"
        },
        "etcd": {
          "type": "string",
          "description": "Docker image for etcd (string)\n"
        },
        "flannel": {
          "type": "string",
          "description": "Docker image for flannel (string)\n"
        },
        "flannelCni": {
          "type": "string",
          "description": "Docker image for flannel_cni (string)\n"
        },
        "ingress": {
          "type": "string",
          "description": "RKE k8s cluster ingress controller configuration (list maxitems:1)\n"
        },
        "ingressBackend": {
          "type": "string",
          "description": "Docker image for ingress_backend (string)\n"
        },
        "kubeDns": {
          "type": "string",
          "description": "Docker image for kube_dns (string)\n"
        },
        "kubeDnsAutoscaler": {
          "type": "string",
          "description": "Docker image for kube_dns_autoscaler (string)\n"
        },
        "kubeDnsSidecar": {
          "type": "string",
          "description": "Docker image for kube_dns_sidecar (string)\n"
        },
        "kubernetes": {
          "type": "string",
          "description": "Docker image for kubernetes (string)\n"
        },
        "kubernetesServicesSidecar": {
          "type": "string",
          "description": "Docker image for kubernetes_services_sidecar (string)\n"
        },
        "metricsServer": {
          "type": "string",
          "description": "Docker image for metrics_server (string)\n"
        },
        "nginxProxy": {
          "type": "string",
          "description": "Docker image for nginx_proxy (string)\n"
        },
        "nodelocal": {
          "type": "string",
          "description": "Docker image for nodelocal (string)\n"
        },
        "podInfraContainer": {
          "type": "string",
          "description": "Docker image for pod_infra_container (string)\n"
        },
        "weaveCni": {
          "type": "string",
          "description": "Docker image for weave_cni (string)\n"
        },
        "weaveNode": {
          "type": "string",
          "description": "Docker image for weave_node (string)\n"
        },
        "windowsPodInfraContainer": {
          "type": "string",
          "description": "Docker image for windows_pod_infra_container (string)\n"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterTimeouts:ClusterTimeouts": {
      "properties": {
        "create": {
          "type": "string"
        },
        "delete": {
          "type": "string"
        },
        "update": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "rke:index/ClusterUpgradeStrategy:ClusterUpgradeStrategy": {
      "properties": {
        "drain": {
          "type": "boolean",
          "description": "RKE drain nodes (bool)\n"
        },
        "drainInput": {
          "$ref": "#/types/rke:index%2FClusterUpgradeStrategyDrainInput:ClusterUpgradeStrategyDrainInput",
          "description": "RKE drain node input (list Maxitems: 1)\n"
        },
        "maxUnavailableControlplane": {
          "type": "string",
          "description": "RKE max unavailable controlplane nodes (string)\n"
        },
        "maxUnavailableWorker": {
          "type": "string",
          "description": "RKE max unavailable worker nodes (string)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "drain",
            "maxUnavailableControlplane",
            "maxUnavailableWorker"
          ]
        }
      }
    },
    "rke:index/ClusterUpgradeStrategyDrainInput:ClusterUpgradeStrategyDrainInput": {
      "properties": {
        "deleteLocalData": {
          "type": "boolean",
          "description": "Delete RKE node local data (bool)\n"
        },
        "force": {
          "type": "boolean",
          "description": "Force RKE node drain (bool)\n"
        },
        "gracePeriod": {
          "type": "number",
          "description": "RKE node drain grace period (int)\n"
        },
        "ignoreDaemonSets": {
          "type": "boolean",
          "description": "Ignore RKE daemon sets (bool)\n"
        },
        "timeout": {
          "type": "number",
          "description": "RKE node drain timeout (int)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteLocalData",
            "force",
            "gracePeriod",
            "ignoreDaemonSets",
            "timeout"
          ]
        }
      }
    },
    "rke:index/ClusterWorkerHost:ClusterWorkerHost": {
      "properties": {
        "address": {
          "type": "string",
          "description": "Address ip for node (string)\n"
        },
        "nodeName": {
          "type": "string",
          "description": "Name of the host provisioned via docker machine (string)\n"
        }
      },
      "type": "object",
      "required": [
        "address",
        "nodeName"
      ]
    }
  },
  "provider": {
    "description": "The provider type for the rke package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
    "properties": {
      "logFile": {
        "type": "string"
      }
    },
    "type": "object",
    "inputProperties": {
      "debug": {
        "type": "boolean"
      },
      "logFile": {
        "type": "string"
      }
    }
  },
  "resources": {
    "rke:index/cluster:Cluster": {
      "description": "\n\n## Import\n\nrke_cluster can be imported using the RKE cluster config and state files as ID in the format `<cluster_config_file>:<rke_state_file>`\n\n```sh\n$ pulumi import rke:index/cluster:Cluster foo &lt;cluster_config_file&gt;:&lt;rke_state_file&gt;\n```\nAs experimental feature, dind rke_cluster can be also imported adding `dind` as 3rd import parameter `<cluster_config_file>:<rke_state_file>:dind`\n\n```sh\n$ pulumi import rke:index/cluster:Cluster foo &lt;cluster_config_file&gt;:&lt;rke_state_file&gt;:dind\n```\n",
      "properties": {
        "addonJobTimeout": {
          "type": "number",
          "description": "RKE k8s cluster addon deployment timeout in seconds for status check (int)\n"
        },
        "addons": {
          "type": "string",
          "description": "RKE k8s cluster user addons YAML manifest to be deployed (string)\n"
        },
        "addonsIncludes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "RKE k8s cluster user addons YAML manifest urls or paths to be deployed (list)\n"
        },
        "apiServerUrl": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster api server url (string)\n"
        },
        "authentication": {
          "$ref": "#/types/rke:index%2FClusterAuthentication:ClusterAuthentication",
          "description": "RKE k8s cluster authentication configuration (list maxitems:1)\n"
        },
        "authorization": {
          "$ref": "#/types/rke:index%2FClusterAuthorization:ClusterAuthorization",
          "description": "RKE k8s cluster authorization mode configuration (list maxitems:1)\n"
        },
        "bastionHost": {
          "$ref": "#/types/rke:index%2FClusterBastionHost:ClusterBastionHost",
          "description": "RKE k8s cluster bastion Host configuration (list maxitems:1)\n"
        },
        "caCrt": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster CA certificate (string)\n",
          "secret": true
        },
        "certDir": {
          "type": "string",
          "description": "Specify a certificate dir path (string)\n"
        },
        "certificates": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterCertificate:ClusterCertificate"
          },
          "description": "(Computed/Sensitive) RKE k8s cluster certificates (string)\n",
          "secret": true
        },
        "clientCert": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster client certificate (string)\n",
          "secret": true
        },
        "clientKey": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster client key (string)\n",
          "secret": true
        },
        "cloudProvider": {
          "$ref": "#/types/rke:index%2FClusterCloudProvider:ClusterCloudProvider",
          "description": "RKE k8s cluster cloud provider configuration [rke-cloud-providers](https://rancher.com/docs/rke/latest/en/config-options/cloud-providers/) (list maxitems:1)\n"
        },
        "clusterCidr": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster cidr (string)\n"
        },
        "clusterDnsServer": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster dns server (string)\n"
        },
        "clusterDomain": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster domain (string)\n"
        },
        "clusterId": {
          "type": "string",
          "description": "(Computed) The ID of the resource (string)\n"
        },
        "clusterName": {
          "type": "string",
          "description": "RKE k8s cluster name used in the kube config (string)\n"
        },
        "clusterYaml": {
          "type": "string",
          "description": "RKE k8s cluster config yaml encoded. Provider arguments take precedence over this one (string)\n",
          "secret": true
        },
        "controlPlaneHosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterControlPlaneHost:ClusterControlPlaneHost"
          },
          "description": "(Computed) RKE k8s cluster control plane nodes (list)\n"
        },
        "customCerts": {
          "type": "boolean",
          "description": "Use custom certificates from a cert dir (string)\n"
        },
        "delayOnCreation": {
          "type": "number",
          "description": "RKE k8s cluster delay on creation (int)\n"
        },
        "dind": {
          "type": "boolean",
          "description": "Deploy RKE cluster on a dind environment. Default: `false` (bool)\n"
        },
        "dindDnsServer": {
          "type": "string",
          "description": "DinD RKE cluster dns (string)\n"
        },
        "dindStorageDriver": {
          "type": "string",
          "description": "DinD RKE cluster storage driver (string)\n"
        },
        "disablePortCheck": {
          "type": "boolean",
          "description": "Enable/Disable RKE k8s cluster port checking. Default `false` (bool)\n"
        },
        "dns": {
          "$ref": "#/types/rke:index%2FClusterDns:ClusterDns",
          "description": "RKE k8s cluster DNS Config (list maxitems:1)\n"
        },
        "enableCriDockerd": {
          "type": "boolean",
          "description": "Enable/Disable CRI dockerd for kubelet; set it to true starting from Kubernetes version 1.24 or later. Default `false` (bool)\n"
        },
        "etcdHosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterEtcdHost:ClusterEtcdHost"
          },
          "description": "(Computed) RKE k8s cluster etcd nodes (list)\n"
        },
        "ignoreDockerVersion": {
          "type": "boolean",
          "description": "Enable/Disable RKE k8s cluster strict docker version checking. Default `false` (bool)\n"
        },
        "inactiveHosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterInactiveHost:ClusterInactiveHost"
          },
          "description": "(Computed) RKE k8s cluster inactive nodes (list)\n"
        },
        "ingress": {
          "$ref": "#/types/rke:index%2FClusterIngress:ClusterIngress",
          "description": "RKE k8s cluster ingress controller configuration (list maxitems:1)\n"
        },
        "internalKubeConfigYaml": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster internal kube config yaml (string)\n",
          "deprecationMessage": "Deprecated",
          "secret": true
        },
        "kubeAdminUser": {
          "type": "string",
          "description": "(Computed) RKE k8s cluster admin user (string)\n"
        },
        "kubeConfigYaml": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster kube config yaml (string)\n",
          "secret": true
        },
        "kubernetesVersion": {
          "type": "string",
          "description": "K8s version to deploy. If kubernetes image is specified, image version takes precedence. Default: `rke default` (string)\n"
        },
        "monitoring": {
          "$ref": "#/types/rke:index%2FClusterMonitoring:ClusterMonitoring",
          "description": "RKE k8s cluster monitoring Config (list maxitems:1)\n"
        },
        "network": {
          "$ref": "#/types/rke:index%2FClusterNetwork:ClusterNetwork",
          "description": "RKE k8s cluster network configuration (list maxitems:1)\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterNode:ClusterNode"
          },
          "description": "RKE k8s cluster nodes (list)\n"
        },
        "nodesConfs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "deprecationMessage": "Deprecated"
        },
        "prefixPath": {
          "type": "string",
          "description": "RKE k8s directory path (string)\n"
        },
        "privateRegistries": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterPrivateRegistry:ClusterPrivateRegistry"
          },
          "description": "RKE k8s cluster private docker registries (list)\n"
        },
        "restore": {
          "$ref": "#/types/rke:index%2FClusterRestore:ClusterRestore",
          "description": "RKE k8s cluster restore configuration (list maxitems:1)\n"
        },
        "rkeClusterYaml": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster config yaml (string)\n",
          "secret": true
        },
        "rkeState": {
          "type": "string",
          "description": "(Computed/Sensitive) RKE k8s cluster state (string)\n",
          "secret": true
        },
        "rotateCertificates": {
          "$ref": "#/types/rke:index%2FClusterRotateCertificates:ClusterRotateCertificates",
          "description": "RKE k8s cluster rotate certificates configuration (list maxitems:1)\n"
        },
        "runningSystemImages": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterRunningSystemImage:ClusterRunningSystemImage"
          },
          "description": "(Computed) RKE k8s cluster running system images list (list)\n"
        },
        "services": {
          "$ref": "#/types/rke:index%2FClusterServices:ClusterServices",
          "description": "RKE k8s cluster services (list maxitems:1)\n"
        },
        "servicesEtcd": {
          "$ref": "#/types/rke:index%2FClusterServicesEtcd:ClusterServicesEtcd",
          "description": "Use services.etcd instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubeApi": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApi:ClusterServicesKubeApi",
          "description": "Use services.kube_api instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubeController": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeController:ClusterServicesKubeController",
          "description": "Use services.kube_controller instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubelet": {
          "$ref": "#/types/rke:index%2FClusterServicesKubelet:ClusterServicesKubelet",
          "description": "Use services.kubelet instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubeproxy": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeproxy:ClusterServicesKubeproxy",
          "description": "Use services.kubeproxy instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesScheduler": {
          "$ref": "#/types/rke:index%2FClusterServicesScheduler:ClusterServicesScheduler",
          "description": "Use services.scheduler instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "sshAgentAuth": {
          "type": "boolean",
          "description": "SSH Agent Auth enable (bool)\n"
        },
        "sshCertPath": {
          "type": "string",
          "description": "SSH Certificate Path (string)\n"
        },
        "sshKeyPath": {
          "type": "string",
          "description": "SSH Private Key Path (string)\n"
        },
        "systemImages": {
          "$ref": "#/types/rke:index%2FClusterSystemImages:ClusterSystemImages",
          "description": "RKE k8s cluster system images list (list maxitems:1)\n"
        },
        "timeouts": {
          "$ref": "#/types/rke:index%2FClusterTimeouts:ClusterTimeouts"
        },
        "updateOnly": {
          "type": "boolean",
          "description": "Skip idempotent deployment of control and etcd plane. Default `false` (bool)\n"
        },
        "upgradeStrategy": {
          "$ref": "#/types/rke:index%2FClusterUpgradeStrategy:ClusterUpgradeStrategy",
          "description": "RKE k8s cluster upgrade strategy (list maxitems:1)\n"
        },
        "workerHosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterWorkerHost:ClusterWorkerHost"
          },
          "description": "(Computed) RKE k8s cluster worker nodes (list)\n"
        }
      },
      "type": "object",
      "required": [
        "apiServerUrl",
        "caCrt",
        "certificates",
        "clientCert",
        "clientKey",
        "clusterCidr",
        "clusterDnsServer",
        "clusterDomain",
        "clusterId",
        "controlPlaneHosts",
        "etcdHosts",
        "inactiveHosts",
        "internalKubeConfigYaml",
        "kubeAdminUser",
        "kubeConfigYaml",
        "rkeClusterYaml",
        "rkeState",
        "runningSystemImages",
        "sshAgentAuth",
        "workerHosts"
      ],
      "inputProperties": {
        "addonJobTimeout": {
          "type": "number",
          "description": "RKE k8s cluster addon deployment timeout in seconds for status check (int)\n"
        },
        "addons": {
          "type": "string",
          "description": "RKE k8s cluster user addons YAML manifest to be deployed (string)\n"
        },
        "addonsIncludes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "RKE k8s cluster user addons YAML manifest urls or paths to be deployed (list)\n"
        },
        "authentication": {
          "$ref": "#/types/rke:index%2FClusterAuthentication:ClusterAuthentication",
          "description": "RKE k8s cluster authentication configuration (list maxitems:1)\n"
        },
        "authorization": {
          "$ref": "#/types/rke:index%2FClusterAuthorization:ClusterAuthorization",
          "description": "RKE k8s cluster authorization mode configuration (list maxitems:1)\n"
        },
        "bastionHost": {
          "$ref": "#/types/rke:index%2FClusterBastionHost:ClusterBastionHost",
          "description": "RKE k8s cluster bastion Host configuration (list maxitems:1)\n"
        },
        "certDir": {
          "type": "string",
          "description": "Specify a certificate dir path (string)\n"
        },
        "cloudProvider": {
          "$ref": "#/types/rke:index%2FClusterCloudProvider:ClusterCloudProvider",
          "description": "RKE k8s cluster cloud provider configuration [rke-cloud-providers](https://rancher.com/docs/rke/latest/en/config-options/cloud-providers/) (list maxitems:1)\n"
        },
        "clusterId": {
          "type": "string",
          "description": "(Computed) The ID of the resource (string)\n"
        },
        "clusterName": {
          "type": "string",
          "description": "RKE k8s cluster name used in the kube config (string)\n"
        },
        "clusterYaml": {
          "type": "string",
          "description": "RKE k8s cluster config yaml encoded. Provider arguments take precedence over this one (string)\n",
          "secret": true
        },
        "customCerts": {
          "type": "boolean",
          "description": "Use custom certificates from a cert dir (string)\n"
        },
        "delayOnCreation": {
          "type": "number",
          "description": "RKE k8s cluster delay on creation (int)\n"
        },
        "dind": {
          "type": "boolean",
          "description": "Deploy RKE cluster on a dind environment. Default: `false` (bool)\n"
        },
        "dindDnsServer": {
          "type": "string",
          "description": "DinD RKE cluster dns (string)\n"
        },
        "dindStorageDriver": {
          "type": "string",
          "description": "DinD RKE cluster storage driver (string)\n"
        },
        "disablePortCheck": {
          "type": "boolean",
          "description": "Enable/Disable RKE k8s cluster port checking. Default `false` (bool)\n"
        },
        "dns": {
          "$ref": "#/types/rke:index%2FClusterDns:ClusterDns",
          "description": "RKE k8s cluster DNS Config (list maxitems:1)\n"
        },
        "enableCriDockerd": {
          "type": "boolean",
          "description": "Enable/Disable CRI dockerd for kubelet; set it to true starting from Kubernetes version 1.24 or later. Default `false` (bool)\n"
        },
        "ignoreDockerVersion": {
          "type": "boolean",
          "description": "Enable/Disable RKE k8s cluster strict docker version checking. Default `false` (bool)\n"
        },
        "ingress": {
          "$ref": "#/types/rke:index%2FClusterIngress:ClusterIngress",
          "description": "RKE k8s cluster ingress controller configuration (list maxitems:1)\n"
        },
        "kubernetesVersion": {
          "type": "string",
          "description": "K8s version to deploy. If kubernetes image is specified, image version takes precedence. Default: `rke default` (string)\n"
        },
        "monitoring": {
          "$ref": "#/types/rke:index%2FClusterMonitoring:ClusterMonitoring",
          "description": "RKE k8s cluster monitoring Config (list maxitems:1)\n"
        },
        "network": {
          "$ref": "#/types/rke:index%2FClusterNetwork:ClusterNetwork",
          "description": "RKE k8s cluster network configuration (list maxitems:1)\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterNode:ClusterNode"
          },
          "description": "RKE k8s cluster nodes (list)\n"
        },
        "nodesConfs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "deprecationMessage": "Deprecated"
        },
        "prefixPath": {
          "type": "string",
          "description": "RKE k8s directory path (string)\n"
        },
        "privateRegistries": {
          "type": "array",
          "items": {
            "$ref": "#/types/rke:index%2FClusterPrivateRegistry:ClusterPrivateRegistry"
          },
          "description": "RKE k8s cluster private docker registries (list)\n"
        },
        "restore": {
          "$ref": "#/types/rke:index%2FClusterRestore:ClusterRestore",
          "description": "RKE k8s cluster restore configuration (list maxitems:1)\n"
        },
        "rotateCertificates": {
          "$ref": "#/types/rke:index%2FClusterRotateCertificates:ClusterRotateCertificates",
          "description": "RKE k8s cluster rotate certificates configuration (list maxitems:1)\n"
        },
        "services": {
          "$ref": "#/types/rke:index%2FClusterServices:ClusterServices",
          "description": "RKE k8s cluster services (list maxitems:1)\n"
        },
        "servicesEtcd": {
          "$ref": "#/types/rke:index%2FClusterServicesEtcd:ClusterServicesEtcd",
          "description": "Use services.etcd instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubeApi": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeApi:ClusterServicesKubeApi",
          "description": "Use services.kube_api instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubeController": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeController:ClusterServicesKubeController",
          "description": "Use services.kube_controller instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubelet": {
          "$ref": "#/types/rke:index%2FClusterServicesKubelet:ClusterServicesKubelet",
          "description": "Use services.kubelet instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesKubeproxy": {
          "$ref": "#/types/rke:index%2FClusterServicesKubeproxy:ClusterServicesKubeproxy",
          "description": "Use services.kubeproxy instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "servicesScheduler": {
          "$ref": "#/types/rke:index%2FClusterServicesScheduler:ClusterServicesScheduler",
          "description": "Use services.scheduler instead (list maxitems:1)\n",
          "deprecationMessage": "Deprecated"
        },
        "sshAgentAuth": {
          "type": "boolean",
          "description": "SSH Agent Auth enable (bool)\n"
        },
        "sshCertPath": {
          "type": "string",
          "description": "SSH Certificate Path (string)\n"
        },
        "sshKeyPath": {
          "type": "string",
          "description": "SSH Private Key Path (string)\n"
        },
        "systemImages": {
          "$ref": "#/types/rke:index%2FClusterSystemImages:ClusterSystemImages",
          "description": "RKE k8s cluster system images list (list maxitems:1)\n"
        },
        "timeouts": {
          "$ref": "#/types/rke:index%2FClusterTimeouts:ClusterTimeouts"
        },
        "updateOnly": {
          "type": "boolean",
          "description": "Skip idempotent deployment of control and etcd plane. Default `false` (bool)\n"
        },
        "upgradeStrategy": {
          "$ref": "#/types/rke:index%2FClusterUpgradeStrategy:ClusterUpgradeStrategy",
          "description": "RKE k8s cluster upgrade strategy (list maxitems:1)\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Cluster resources.\n",
        "properties": {
          "addonJobTimeout": {
            "type": "number",
            "description": "RKE k8s cluster addon deployment timeout in seconds for status check (int)\n"
          },
          "addons": {
            "type": "string",
            "description": "RKE k8s cluster user addons YAML manifest to be deployed (string)\n"
          },
          "addonsIncludes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "RKE k8s cluster user addons YAML manifest urls or paths to be deployed (list)\n"
          },
          "apiServerUrl": {
            "type": "string",
            "description": "(Computed) RKE k8s cluster api server url (string)\n"
          },
          "authentication": {
            "$ref": "#/types/rke:index%2FClusterAuthentication:ClusterAuthentication",
            "description": "RKE k8s cluster authentication configuration (list maxitems:1)\n"
          },
          "authorization": {
            "$ref": "#/types/rke:index%2FClusterAuthorization:ClusterAuthorization",
            "description": "RKE k8s cluster authorization mode configuration (list maxitems:1)\n"
          },
          "bastionHost": {
            "$ref": "#/types/rke:index%2FClusterBastionHost:ClusterBastionHost",
            "description": "RKE k8s cluster bastion Host configuration (list maxitems:1)\n"
          },
          "caCrt": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster CA certificate (string)\n",
            "secret": true
          },
          "certDir": {
            "type": "string",
            "description": "Specify a certificate dir path (string)\n"
          },
          "certificates": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterCertificate:ClusterCertificate"
            },
            "description": "(Computed/Sensitive) RKE k8s cluster certificates (string)\n",
            "secret": true
          },
          "clientCert": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster client certificate (string)\n",
            "secret": true
          },
          "clientKey": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster client key (string)\n",
            "secret": true
          },
          "cloudProvider": {
            "$ref": "#/types/rke:index%2FClusterCloudProvider:ClusterCloudProvider",
            "description": "RKE k8s cluster cloud provider configuration [rke-cloud-providers](https://rancher.com/docs/rke/latest/en/config-options/cloud-providers/) (list maxitems:1)\n"
          },
          "clusterCidr": {
            "type": "string",
            "description": "(Computed) RKE k8s cluster cidr (string)\n"
          },
          "clusterDnsServer": {
            "type": "string",
            "description": "(Computed) RKE k8s cluster dns server (string)\n"
          },
          "clusterDomain": {
            "type": "string",
            "description": "(Computed) RKE k8s cluster domain (string)\n"
          },
          "clusterId": {
            "type": "string",
            "description": "(Computed) The ID of the resource (string)\n"
          },
          "clusterName": {
            "type": "string",
            "description": "RKE k8s cluster name used in the kube config (string)\n"
          },
          "clusterYaml": {
            "type": "string",
            "description": "RKE k8s cluster config yaml encoded. Provider arguments take precedence over this one (string)\n",
            "secret": true
          },
          "controlPlaneHosts": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterControlPlaneHost:ClusterControlPlaneHost"
            },
            "description": "(Computed) RKE k8s cluster control plane nodes (list)\n"
          },
          "customCerts": {
            "type": "boolean",
            "description": "Use custom certificates from a cert dir (string)\n"
          },
          "delayOnCreation": {
            "type": "number",
            "description": "RKE k8s cluster delay on creation (int)\n"
          },
          "dind": {
            "type": "boolean",
            "description": "Deploy RKE cluster on a dind environment. Default: `false` (bool)\n"
          },
          "dindDnsServer": {
            "type": "string",
            "description": "DinD RKE cluster dns (string)\n"
          },
          "dindStorageDriver": {
            "type": "string",
            "description": "DinD RKE cluster storage driver (string)\n"
          },
          "disablePortCheck": {
            "type": "boolean",
            "description": "Enable/Disable RKE k8s cluster port checking. Default `false` (bool)\n"
          },
          "dns": {
            "$ref": "#/types/rke:index%2FClusterDns:ClusterDns",
            "description": "RKE k8s cluster DNS Config (list maxitems:1)\n"
          },
          "enableCriDockerd": {
            "type": "boolean",
            "description": "Enable/Disable CRI dockerd for kubelet; set it to true starting from Kubernetes version 1.24 or later. Default `false` (bool)\n"
          },
          "etcdHosts": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterEtcdHost:ClusterEtcdHost"
            },
            "description": "(Computed) RKE k8s cluster etcd nodes (list)\n"
          },
          "ignoreDockerVersion": {
            "type": "boolean",
            "description": "Enable/Disable RKE k8s cluster strict docker version checking. Default `false` (bool)\n"
          },
          "inactiveHosts": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterInactiveHost:ClusterInactiveHost"
            },
            "description": "(Computed) RKE k8s cluster inactive nodes (list)\n"
          },
          "ingress": {
            "$ref": "#/types/rke:index%2FClusterIngress:ClusterIngress",
            "description": "RKE k8s cluster ingress controller configuration (list maxitems:1)\n"
          },
          "internalKubeConfigYaml": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster internal kube config yaml (string)\n",
            "deprecationMessage": "Deprecated",
            "secret": true
          },
          "kubeAdminUser": {
            "type": "string",
            "description": "(Computed) RKE k8s cluster admin user (string)\n"
          },
          "kubeConfigYaml": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster kube config yaml (string)\n",
            "secret": true
          },
          "kubernetesVersion": {
            "type": "string",
            "description": "K8s version to deploy. If kubernetes image is specified, image version takes precedence. Default: `rke default` (string)\n"
          },
          "monitoring": {
            "$ref": "#/types/rke:index%2FClusterMonitoring:ClusterMonitoring",
            "description": "RKE k8s cluster monitoring Config (list maxitems:1)\n"
          },
          "network": {
            "$ref": "#/types/rke:index%2FClusterNetwork:ClusterNetwork",
            "description": "RKE k8s cluster network configuration (list maxitems:1)\n"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterNode:ClusterNode"
            },
            "description": "RKE k8s cluster nodes (list)\n"
          },
          "nodesConfs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "deprecationMessage": "Deprecated"
          },
          "prefixPath": {
            "type": "string",
            "description": "RKE k8s directory path (string)\n"
          },
          "privateRegistries": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterPrivateRegistry:ClusterPrivateRegistry"
            },
            "description": "RKE k8s cluster private docker registries (list)\n"
          },
          "restore": {
            "$ref": "#/types/rke:index%2FClusterRestore:ClusterRestore",
            "description": "RKE k8s cluster restore configuration (list maxitems:1)\n"
          },
          "rkeClusterYaml": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster config yaml (string)\n",
            "secret": true
          },
          "rkeState": {
            "type": "string",
            "description": "(Computed/Sensitive) RKE k8s cluster state (string)\n",
            "secret": true
          },
          "rotateCertificates": {
            "$ref": "#/types/rke:index%2FClusterRotateCertificates:ClusterRotateCertificates",
            "description": "RKE k8s cluster rotate certificates configuration (list maxitems:1)\n"
          },
          "runningSystemImages": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterRunningSystemImage:ClusterRunningSystemImage"
            },
            "description": "(Computed) RKE k8s cluster running system images list (list)\n"
          },
          "services": {
            "$ref": "#/types/rke:index%2FClusterServices:ClusterServices",
            "description": "RKE k8s cluster services (list maxitems:1)\n"
          },
          "servicesEtcd": {
            "$ref": "#/types/rke:index%2FClusterServicesEtcd:ClusterServicesEtcd",
            "description": "Use services.etcd instead (list maxitems:1)\n",
            "deprecationMessage": "Deprecated"
          },
          "servicesKubeApi": {
            "$ref": "#/types/rke:index%2FClusterServicesKubeApi:ClusterServicesKubeApi",
            "description": "Use services.kube_api instead (list maxitems:1)\n",
            "deprecationMessage": "Deprecated"
          },
          "servicesKubeController": {
            "$ref": "#/types/rke:index%2FClusterServicesKubeController:ClusterServicesKubeController",
            "description": "Use services.kube_controller instead (list maxitems:1)\n",
            "deprecationMessage": "Deprecated"
          },
          "servicesKubelet": {
            "$ref": "#/types/rke:index%2FClusterServicesKubelet:ClusterServicesKubelet",
            "description": "Use services.kubelet instead (list maxitems:1)\n",
            "deprecationMessage": "Deprecated"
          },
          "servicesKubeproxy": {
            "$ref": "#/types/rke:index%2FClusterServicesKubeproxy:ClusterServicesKubeproxy",
            "description": "Use services.kubeproxy instead (list maxitems:1)\n",
            "deprecationMessage": "Deprecated"
          },
          "servicesScheduler": {
            "$ref": "#/types/rke:index%2FClusterServicesScheduler:ClusterServicesScheduler",
            "description": "Use services.scheduler instead (list maxitems:1)\n",
            "deprecationMessage": "Deprecated"
          },
          "sshAgentAuth": {
            "type": "boolean",
            "description": "SSH Agent Auth enable (bool)\n"
          },
          "sshCertPath": {
            "type": "string",
            "description": "SSH Certificate Path (string)\n"
          },
          "sshKeyPath": {
            "type": "string",
            "description": "SSH Private Key Path (string)\n"
          },
          "systemImages": {
            "$ref": "#/types/rke:index%2FClusterSystemImages:ClusterSystemImages",
            "description": "RKE k8s cluster system images list (list maxitems:1)\n"
          },
          "timeouts": {
            "$ref": "#/types/rke:index%2FClusterTimeouts:ClusterTimeouts"
          },
          "updateOnly": {
            "type": "boolean",
            "description": "Skip idempotent deployment of control and etcd plane. Default `false` (bool)\n"
          },
          "upgradeStrategy": {
            "$ref": "#/types/rke:index%2FClusterUpgradeStrategy:ClusterUpgradeStrategy",
            "description": "RKE k8s cluster upgrade strategy (list maxitems:1)\n"
          },
          "workerHosts": {
            "type": "array",
            "items": {
              "$ref": "#/types/rke:index%2FClusterWorkerHost:ClusterWorkerHost"
            },
            "description": "(Computed) RKE k8s cluster worker nodes (list)\n"
          }
        },
        "type": "object"
      }
    }
  },
  "parameterization": {
    "baseProvider": {
      "name": "terraform-provider",
      "version": "0.10.0"
    },
    "parameter": "eyJyZW1vdGUiOnsidXJsIjoicmVnaXN0cnkub3BlbnRvZnUub3JnL3JhbmNoZXIvcmtlIiwidmVyc2lvbiI6IjEuNy41In19"
  }
}
