--- apiVersion: apiextensions.crossplane.io/v1 kind: CompositeResourceDefinition metadata: name: eksclusters.eks.sarathy.io spec: group: eks.sarathy.io names: kind: EKSCluster plural: eksclusters connectionSecretKeys: - cluster-ca - apiserver-endpoint - value versions: - name: v1beta1 served: true referenceable: true schema: openAPIV3Schema: type: object properties: spec: type: object properties: parameters: type: object properties: region: description: Geographic location of this VPC type: string enum: ["us-east-1", "us-west-2"] vpc-cidrBlock: description: CIDR block for VPC type: string vpc-name: description: Name for VPC type: string subnet1-public-name: description: Name for public subnet 1 type: string subnet1-public-cidrBlock: description: CIDR block for public subnet 1 type: string subnet1-public-availabilityZone: description: AZ for public subnet 1 type: string subnet2-public-name: description: Name for public subnet 2 type: string subnet2-public-cidrBlock: description: CIDR block for public subnet 2 type: string subnet2-public-availabilityZone: description: AZ for public subnet 2 type: string subnet1-private-name: description: Name for private subnet 1 type: string subnet1-private-cidrBlock: description: CIDR block for private subnet 1 type: string subnet1-private-availabilityZone: description: AZ for private subnet 1 type: string subnet2-private-name: description: Name for private subnet 2 type: string subnet2-private-cidrBlock: description: CIDR block for private subnet 2 type: string subnet2-private-availabilityZone: description: AZ for private subnet 2 type: string cluster-role: description: EKS cluster role type: string workernode-role: description: EKS worker node role type: string k8s-version: description: Kubernetes version type: string enum: ["1.20", "1.21", "1.22"] workers-size: description: Desired number of worker nodes in the cluster type: integer workload-type: description: Type of workloads to be run on this cluster (GPU or non-GPU)" type: string enum: ["gpu", "non-gpu"] required: - region - vpc-name - vpc-cidrBlock - subnet1-public-name - subnet1-public-cidrBlock - subnet1-public-availabilityZone - subnet2-public-name - subnet2-public-cidrBlock - subnet2-public-availabilityZone - subnet1-private-name - subnet1-private-cidrBlock - subnet1-private-availabilityZone - subnet2-private-name - subnet2-private-cidrBlock - subnet2-private-availabilityZone - k8s-version - workers-size - workload-type - cluster-role - workernode-role required: - parameters