You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: api/v1beta2/types.go
+55Lines changed: 55 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -356,12 +356,67 @@ type IBMCloudResourceReference struct {
356
356
Name*string`json:"name,omitempty"`
357
357
}
358
358
359
+
// IBMCloudCatalogOffering represents an IBM Cloud Catalog Offering resource.
360
+
// +kubebuilder:validation:XValidation:rule="(has(self.offeringCRN) && !has(self.versionCRN)) || (!has(self.offeringCRN) && has(self.versionCRN))",message="either offeringCRN or version CRN must be provided, not both"
361
+
typeIBMCloudCatalogOfferingstruct {
362
+
// OfferingCRN defines the IBM Cloud Catalog Offering CRN. Using the OfferingCRN expects that the latest version of the Offering will be used.
363
+
// If a specific version should be used instead, rely on VersionCRN.
364
+
// +optional
365
+
OfferingCRN*string`json:"offeringCRN,omitempty"`
366
+
367
+
// PlanCRN defines the IBM Cloud Catalog Offering Plan CRN to use for the Offering.
368
+
// +optional
369
+
PlanCRN*string`json:"planCRN,omitempty"`
370
+
371
+
// VersionCRN defines the IBM Cloud Catalog Offering Version CRN. A specific version of the Catalog Offering will be used, as defined by this CRN.
372
+
// +optional
373
+
VersionCRN*string`json:"versionCRN,omitempty"`
374
+
}
375
+
359
376
// NetworkInterface holds the network interface information like subnet id.
360
377
typeNetworkInterfacestruct {
378
+
// SecurityGroups defines a set of IBM Cloud VPC Security Groups to attach to the network interface.
// VPCLoadBalancerBackendPoolMember represents a VPC Load Balancer Backend Pool Member.
387
+
typeVPCLoadBalancerBackendPoolMemberstruct {
388
+
// LoadBalancer defines the Load Balancer the Pool Member is for.
389
+
// +required
390
+
LoadBalancerVPCResource`json:"loadBalancer"`
391
+
392
+
// Pool defines the Load Balancer Pool the Pool Member should be in.
393
+
// +required
394
+
PoolVPCResource`json:"pool"`
395
+
396
+
// Port defines the Port the Load Balancer Pool Member listens for traffic.
397
+
// +required
398
+
Portint64`json:"port"`
399
+
400
+
// Weight of the service member. Only applicable if the pool algorithm is "weighted_round_robin".
401
+
// +optional
402
+
Weight*int64`json:"weight,omitempty"`
403
+
}
404
+
405
+
// VPCMachinePlacementTarget represents a VPC Machine's placement restrictions.
406
+
// +kubebuilder:validation:XValidation:rule="(has(self.dedicatedHost) && !has(self.dedicatedHostGroup) && !has(self.placementGroup)) || (!has(self.dedicatedHost) && has(self.dedicatedHostGroup) && !has(self.placementGroup)) || (!has(self.dedicatedHost) && !has(self.dedicatedHostGroup) && has(self.placementGroup))",message="only one of dedicatedHost, dedicatedHostGroup, or placementGroup must be defined for machine placement"
407
+
typeVPCMachinePlacementTargetstruct {
408
+
// DedicatedHost defines the Dedicated Host to place a VPC Machine (Instance) on.
// VPCSecurityGroupPortRange represents a range of ports, minimum to maximum.
366
421
// +kubebuilder:validation:XValidation:rule="self.maximumPort >= self.minimumPort",message="maximum port must be greater than or equal to minimum port"
0 commit comments