generated from crossplane/upjet-provider-template
/
zz_lbservice_types.go
executable file
·158 lines (109 loc) · 5.71 KB
/
zz_lbservice_types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
/*
Copyright 2022 Upbound Inc.
*/
// Code generated by upjet. DO NOT EDIT.
package v1alpha1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
v1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
)
type LbServiceObservation struct {
// Description of this resource
Description *string `json:"description,omitempty" tf:"description,omitempty"`
// The display name of this resource. Defaults to ID if not set
DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
// Whether the load balancer service is enabled
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
// Load balancer engine writes information about encountered issues of different severity levels to the error log. This setting is used to define the severity level of the error log
ErrorLogLevel *string `json:"errorLogLevel,omitempty" tf:"error_log_level,omitempty"`
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// Logical Tier1 Router to which the Load Balancer is to be attached
LogicalRouterID *string `json:"logicalRouterId,omitempty" tf:"logical_router_id,omitempty"`
// The _revision property describes the current revision of the resource. To prevent clients from overwriting each other's changes, PUT operations must include the current _revision of the resource, which clients should obtain by issuing a GET operation. If the _revision provided in a PUT request is missing or stale, the operation will be rejected
Revision *float64 `json:"revision,omitempty" tf:"revision,omitempty"`
// Size of load balancer service
Size *string `json:"size,omitempty" tf:"size,omitempty"`
// Set of opaque identifiers meaningful to the user
Tag []TagObservation `json:"tag,omitempty" tf:"tag,omitempty"`
// Virtual servers associated with this Load Balancer
VirtualServerIds []*string `json:"virtualServerIds,omitempty" tf:"virtual_server_ids,omitempty"`
}
type LbServiceParameters struct {
// Description of this resource
// +kubebuilder:validation:Optional
Description *string `json:"description,omitempty" tf:"description,omitempty"`
// The display name of this resource. Defaults to ID if not set
// +kubebuilder:validation:Optional
DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
// Whether the load balancer service is enabled
// +kubebuilder:validation:Optional
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
// Load balancer engine writes information about encountered issues of different severity levels to the error log. This setting is used to define the severity level of the error log
// +kubebuilder:validation:Optional
ErrorLogLevel *string `json:"errorLogLevel,omitempty" tf:"error_log_level,omitempty"`
// Logical Tier1 Router to which the Load Balancer is to be attached
// +kubebuilder:validation:Optional
LogicalRouterID *string `json:"logicalRouterId,omitempty" tf:"logical_router_id,omitempty"`
// Size of load balancer service
// +kubebuilder:validation:Optional
Size *string `json:"size,omitempty" tf:"size,omitempty"`
// Set of opaque identifiers meaningful to the user
// +kubebuilder:validation:Optional
Tag []TagParameters `json:"tag,omitempty" tf:"tag,omitempty"`
// Virtual servers associated with this Load Balancer
// +kubebuilder:validation:Optional
VirtualServerIds []*string `json:"virtualServerIds,omitempty" tf:"virtual_server_ids,omitempty"`
}
type TagObservation struct {
Scope *string `json:"scope,omitempty" tf:"scope,omitempty"`
Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}
type TagParameters struct {
// +kubebuilder:validation:Optional
Scope *string `json:"scope,omitempty" tf:"scope,omitempty"`
// +kubebuilder:validation:Optional
Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}
// LbServiceSpec defines the desired state of LbService
type LbServiceSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider LbServiceParameters `json:"forProvider"`
}
// LbServiceStatus defines the observed state of LbService.
type LbServiceStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider LbServiceObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// LbService is the Schema for the LbServices API. <no value>
// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status"
// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status"
// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name"
// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"
// +kubebuilder:subresource:status
// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,nsxt}
type LbService struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.logicalRouterId)",message="logicalRouterId is a required parameter"
Spec LbServiceSpec `json:"spec"`
Status LbServiceStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// LbServiceList contains a list of LbServices
type LbServiceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []LbService `json:"items"`
}
// Repository type metadata.
var (
LbService_Kind = "LbService"
LbService_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LbService_Kind}.String()
LbService_KindAPIVersion = LbService_Kind + "." + CRDGroupVersion.String()
LbService_GroupVersionKind = CRDGroupVersion.WithKind(LbService_Kind)
)
func init() {
SchemeBuilder.Register(&LbService{}, &LbServiceList{})
}