github.com/vmware/go-vcloud-director/v2@v2.24.0/types/v56/cse.go (about) 1 package types 2 3 import "time" 4 5 // Capvcd (Cluster API Provider for VCD), is a type that represents a Kubernetes cluster inside VCD, that is created and managed 6 // with the Container Service Extension (CSE) 7 type Capvcd struct { 8 Kind string `json:"kind,omitempty"` 9 Spec struct { 10 VcdKe struct { 11 // NOTE: "Secure" struct needs to be a pointer to avoid overriding with empty values by mistake, as VCD doesn't return RDE fields 12 // marked with "x-vcloud-restricted: secure" 13 Secure *struct { 14 ApiToken string `json:"apiToken,omitempty"` 15 } `json:"secure,omitempty"` 16 IsVCDKECluster bool `json:"isVCDKECluster,omitempty"` 17 AutoRepairOnErrors bool `json:"autoRepairOnErrors,omitempty"` 18 DefaultStorageClassOptions struct { 19 Filesystem string `json:"filesystem,omitempty"` 20 K8SStorageClassName string `json:"k8sStorageClassName,omitempty"` 21 VcdStorageProfileName string `json:"vcdStorageProfileName,omitempty"` 22 UseDeleteReclaimPolicy bool `json:"useDeleteReclaimPolicy,omitempty"` 23 } `json:"defaultStorageClassOptions,omitempty"` 24 } `json:"vcdKe,omitempty"` 25 CapiYaml string `json:"capiYaml,omitempty"` 26 } `json:"spec,omitempty"` 27 Status struct { 28 Cpi struct { 29 Name string `json:"name,omitempty"` 30 Version string `json:"version,omitempty"` 31 EventSet []struct { 32 Name string `json:"name,omitempty"` 33 OccurredAt time.Time `json:"occurredAt,omitempty"` 34 VcdResourceId string `json:"vcdResourceId,omitempty"` 35 VcdResourceName string `json:"vcdResourceName,omitempty"` 36 AdditionalDetails struct { 37 DetailedEvent string `json:"Detailed Event,omitempty"` 38 } `json:"additionalDetails,omitempty"` 39 } `json:"eventSet,omitempty"` 40 ErrorSet []struct { 41 Name string `json:"name,omitempty"` 42 OccurredAt time.Time `json:"occurredAt,omitempty"` 43 VcdResourceId string `json:"vcdResourceId,omitempty"` 44 VcdResourceName string `json:"vcdResourceName,omitempty"` 45 AdditionalDetails struct { 46 DetailedError string `json:"Detailed Error,omitempty"` 47 } `json:"additionalDetails,omitempty"` 48 } `json:"errorSet,omitempty"` 49 } `json:"cpi,omitempty"` 50 Csi struct { 51 Name string `json:"name,omitempty"` 52 Version string `json:"version,omitempty"` 53 EventSet []struct { 54 Name string `json:"name,omitempty"` 55 OccurredAt time.Time `json:"occurredAt,omitempty"` 56 VcdResourceId string `json:"vcdResourceId,omitempty"` 57 VcdResourceName string `json:"vcdResourceName,omitempty"` 58 AdditionalDetails struct { 59 DetailedDescription string `json:"Detailed Description,omitempty"` 60 } `json:"additionalDetails,omitempty"` 61 } `json:"eventSet,omitempty"` 62 ErrorSet []struct { 63 Name string `json:"name,omitempty"` 64 OccurredAt time.Time `json:"occurredAt,omitempty"` 65 VcdResourceId string `json:"vcdResourceId,omitempty"` 66 VcdResourceName string `json:"vcdResourceName,omitempty"` 67 AdditionalDetails struct { 68 DetailedError string `json:"Detailed Error,omitempty"` 69 } `json:"additionalDetails,omitempty"` 70 } `json:"errorSet,omitempty"` 71 } `json:"csi,omitempty"` 72 VcdKe struct { 73 State string `json:"state,omitempty"` 74 EventSet []struct { 75 Name string `json:"name,omitempty"` 76 OccurredAt time.Time `json:"occurredAt,omitempty"` 77 VcdResourceId string `json:"vcdResourceId,omitempty"` 78 VcdResourceName string `json:"vcdResourceName,omitempty"` 79 AdditionalDetails struct { 80 DetailedEvent string `json:"Detailed Event,omitempty"` 81 } `json:"additionalDetails,omitempty"` 82 } `json:"eventSet,omitempty"` 83 ErrorSet []struct { 84 Name string `json:"name,omitempty"` 85 OccurredAt time.Time `json:"occurredAt,omitempty"` 86 VcdResourceId string `json:"vcdResourceId,omitempty"` 87 VcdResourceName string `json:"vcdResourceName,omitempty"` 88 AdditionalDetails struct { 89 DetailedError string `json:"Detailed Error,omitempty"` 90 } `json:"additionalDetails,omitempty"` 91 } `json:"errorSet,omitempty"` 92 WorkerId string `json:"workerId,omitempty"` 93 VcdKeVersion string `json:"vcdKeVersion,omitempty"` 94 VcdResourceSet []struct { 95 Id string `json:"id,omitempty"` 96 Name string `json:"name,omitempty"` 97 Type string `json:"type,omitempty"` 98 } `json:"vcdResourceSet,omitempty"` 99 HeartbeatString string `json:"heartbeatString,omitempty"` 100 VcdKeInstanceId string `json:"vcdKeInstanceId,omitempty"` 101 HeartbeatTimestamp string `json:"heartbeatTimestamp,omitempty"` 102 DefaultStorageClass struct { 103 FileSystem string `json:"fileSystem,omitempty"` 104 K8SStorageClassName string `json:"k8sStorageClassName,omitempty"` 105 VcdStorageProfileName string `json:"vcdStorageProfileName,omitempty"` 106 UseDeleteReclaimPolicy bool `json:"useDeleteReclaimPolicy,omitempty"` 107 } `json:"defaultStorageClass,omitempty"` 108 } `json:"vcdKe,omitempty"` 109 Capvcd struct { 110 Uid string `json:"uid,omitempty"` 111 Phase string `json:"phase,omitempty"` 112 // NOTE: "Private" struct needs to be a pointer to avoid overriding with empty values by mistake, as VCD doesn't return RDE fields 113 // marked with "x-vcloud-restricted: secure" 114 Private *struct { 115 KubeConfig string `json:"kubeConfig,omitempty"` 116 } `json:"private,omitempty"` 117 Upgrade struct { 118 Ready bool `json:"ready,omitempty"` 119 Current struct { 120 TkgVersion string `json:"tkgVersion,omitempty"` 121 KubernetesVersion string `json:"kubernetesVersion,omitempty"` 122 } `json:"current,omitempty"` 123 } `json:"upgrade,omitempty"` 124 EventSet []struct { 125 Name string `json:"name,omitempty"` 126 OccurredAt time.Time `json:"occurredAt,omitempty"` 127 VcdResourceId string `json:"vcdResourceId,omitempty"` 128 VcdResourceName string `json:"vcdResourceName,omitempty"` 129 } `json:"eventSet,omitempty"` 130 ErrorSet []struct { 131 Name string `json:"name,omitempty"` 132 OccurredAt time.Time `json:"occurredAt,omitempty"` 133 VcdResourceId string `json:"vcdResourceId,omitempty"` 134 VcdResourceName string `json:"vcdResourceName,omitempty"` 135 AdditionalDetails struct { 136 DetailedError string `json:"Detailed Error,omitempty"` 137 } `json:"additionalDetails,omitempty"` 138 } `json:"errorSet,omitempty"` 139 NodePool []struct { 140 Name string `json:"name,omitempty"` 141 DiskSizeMb int `json:"diskSizeMb,omitempty"` 142 SizingPolicy string `json:"sizingPolicy,omitempty"` 143 StorageProfile string `json:"storageProfile,omitempty"` 144 DesiredReplicas int `json:"desiredReplicas,omitempty"` 145 AvailableReplicas int `json:"availableReplicas,omitempty"` 146 } `json:"nodePool,omitempty"` 147 ParentUid string `json:"parentUid,omitempty"` 148 K8SNetwork struct { 149 Pods struct { 150 CidrBlocks []string `json:"cidrBlocks,omitempty"` 151 } `json:"pods,omitempty"` 152 Services struct { 153 CidrBlocks []string `json:"cidrBlocks,omitempty"` 154 } `json:"services,omitempty"` 155 } `json:"k8sNetwork,omitempty"` 156 Kubernetes string `json:"kubernetes,omitempty"` 157 CapvcdVersion string `json:"capvcdVersion,omitempty"` 158 VcdProperties struct { 159 Site string `json:"site,omitempty"` 160 OrgVdcs []struct { 161 Id string `json:"id,omitempty"` 162 Name string `json:"name,omitempty"` 163 OvdcNetworkName string `json:"ovdcNetworkName,omitempty"` 164 } `json:"orgVdcs,omitempty"` 165 Organizations []struct { 166 Id string `json:"id,omitempty"` 167 Name string `json:"name,omitempty"` 168 } `json:"organizations,omitempty"` 169 } `json:"vcdProperties,omitempty"` 170 CapiStatusYaml string `json:"capiStatusYaml,omitempty"` 171 VcdResourceSet []struct { 172 Id string `json:"id,omitempty"` 173 Name string `json:"name,omitempty"` 174 Type string `json:"type,omitempty"` 175 AdditionalDetails struct { 176 VirtualIP string `json:"virtualIP,omitempty"` 177 } `json:"additionalDetails,omitempty"` 178 } `json:"vcdResourceSet,omitempty"` 179 ClusterApiStatus struct { 180 Phase string `json:"phase,omitempty"` 181 ApiEndpoints []struct { 182 Host string `json:"host,omitempty"` 183 Port int `json:"port,omitempty"` 184 } `json:"apiEndpoints,omitempty"` 185 } `json:"clusterApiStatus,omitempty"` 186 CreatedByVersion string `json:"createdByVersion,omitempty"` 187 ClusterResourceSetBindings []struct { 188 Kind string `json:"kind,omitempty"` 189 Name string `json:"name,omitempty"` 190 Applied bool `json:"applied,omitempty"` 191 LastAppliedTime string `json:"lastAppliedTime,omitempty"` 192 ClusterResourceSetName string `json:"clusterResourceSetName,omitempty"` 193 } `json:"clusterResourceSetBindings,omitempty"` 194 } `json:"capvcd,omitempty"` 195 Projector struct { 196 Name string `json:"name,omitempty"` 197 Version string `json:"version,omitempty"` 198 EventSet []struct { 199 Name string `json:"name,omitempty"` 200 OccurredAt time.Time `json:"occurredAt,omitempty"` 201 VcdResourceId string `json:"vcdResourceId,omitempty"` 202 VcdResourceName string `json:"vcdResourceName,omitempty"` 203 AdditionalDetails struct { 204 Event string `json:"event,omitempty"` 205 } `json:"additionalDetails,omitempty"` 206 } `json:"eventSet,omitempty"` 207 ErrorSet []struct { 208 Name string `json:"name,omitempty"` 209 OccurredAt time.Time `json:"occurredAt,omitempty"` 210 VcdResourceId string `json:"vcdResourceId,omitempty"` 211 VcdResourceName string `json:"vcdResourceName,omitempty"` 212 AdditionalDetails struct { 213 DetailedError string `json:"Detailed Error,omitempty"` 214 } `json:"additionalDetails,omitempty"` 215 } `json:"errorSet,omitempty"` 216 } `json:"projector,omitempty"` 217 } `json:"status,omitempty"` 218 Metadata struct { 219 Name string `json:"name,omitempty"` 220 Site string `json:"site,omitempty"` 221 OrgName string `json:"orgName,omitempty"` 222 VirtualDataCenterName string `json:"virtualDataCenterName,omitempty"` 223 } `json:"metadata,omitempty"` 224 ApiVersion string `json:"apiVersion,omitempty"` 225 }