generated from crossplane-contrib/provider-jet-template
/
zz_zonesetting_types.go
executable file
·465 lines (341 loc) · 18.1 KB
/
zz_zonesetting_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
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
/*
Copyright 2021 The Crossplane Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
// Code generated by terrajet. 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 CacheCacheObservation struct {
}
type CacheCacheParameters struct {
// Cache expiration time settings, Unit: second. The maximum value is 365 days. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
CacheTime *float64 `json:"cacheTime,omitempty" tf:"cache_time,omitempty"`
// Specifies whether to enable force cache. Valid values: `on`: Enable; `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
IgnoreCacheControl *string `json:"ignoreCacheControl,omitempty" tf:"ignore_cache_control,omitempty"`
// Cache configuration switch. Valid values: `on`: Enable; `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Switch *string `json:"switch,omitempty" tf:"switch,omitempty"`
}
type CacheKeyObservation struct {
}
type CacheKeyParameters struct {
// Specifies whether to enable full-path cache.- `on`: Enable full-path cache (i.e., disable Ignore Query String).- `off`: Disable full-path cache (i.e., enable Ignore Query String). Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
FullURLCache *string `json:"fullUrlCache,omitempty" tf:"full_url_cache,omitempty"`
// Specifies whether the cache key is case-sensitive. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
IgnoreCase *string `json:"ignoreCase,omitempty" tf:"ignore_case,omitempty"`
// Request parameter contained in CacheKey. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
QueryString []QueryStringParameters `json:"queryString,omitempty" tf:"query_string,omitempty"`
}
type CacheObservation struct {
}
type CacheParameters struct {
// Cache configuration. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Cache []CacheCacheParameters `json:"cache,omitempty" tf:"cache,omitempty"`
// Follows the origin server configuration. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
FollowOrigin []FollowOriginParameters `json:"followOrigin,omitempty" tf:"follow_origin,omitempty"`
// No-cache configuration. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
NoCache []NoCacheParameters `json:"noCache,omitempty" tf:"no_cache,omitempty"`
}
type CachePrefreshObservation struct {
}
type CachePrefreshParameters struct {
// Percentage of cache time before try to prefresh. Valid value range: 1-99.
// +kubebuilder:validation:Optional
Percent *float64 `json:"percent,omitempty" tf:"percent,omitempty"`
// Specifies whether to enable cache prefresh.- `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type ClientIPHeaderObservation struct {
}
type ClientIPHeaderParameters struct {
// Name of the origin-pull client IP request header. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"`
// Specifies whether to enable client IP header.- `on`: Enable.- `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type CompressionObservation struct {
}
type CompressionParameters struct {
// Compression algorithms to select. Valid values: `brotli`, `gzip`.
// +kubebuilder:validation:Optional
Algorithms []*string `json:"algorithms,omitempty" tf:"algorithms,omitempty"`
// Whether to enable Smart compression.- `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type FollowOriginObservation struct {
}
type FollowOriginParameters struct {
// Specifies whether to follow the origin server configuration.- `on`: Enable.- `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Switch *string `json:"switch,omitempty" tf:"switch,omitempty"`
}
type ForceRedirectObservation struct {
}
type ForceRedirectParameters struct {
// Redirection status code.- 301- 302 Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
RedirectStatusCode *float64 `json:"redirectStatusCode,omitempty" tf:"redirect_status_code,omitempty"`
// Whether to enable force redirect.- `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type HTTPSObservation struct {
}
type HTTPSParameters struct {
// HSTS Configuration. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Hsts []HstsParameters `json:"hsts,omitempty" tf:"hsts,omitempty"`
// HTTP2 configuration switch.- `on`: Enable.- `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Http2 *string `json:"http2,omitempty" tf:"http2,omitempty"`
// OCSP configuration switch.- `on`: Enable.- `off`: Disable.It is disabled by default. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
OcspStapling *string `json:"ocspStapling,omitempty" tf:"ocsp_stapling,omitempty"`
// TLS version settings. Valid values: `TLSv1`, `TLSV1.1`, `TLSV1.2`, and `TLSv1.3`.Only consecutive versions can be enabled at the same time. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
TLSVersion []*string `json:"tlsVersion,omitempty" tf:"tls_version,omitempty"`
}
type HstsObservation struct {
}
type HstsParameters struct {
// Specifies whether to include subdomain names. Valid values: `on` and `off`. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
IncludeSubDomains *string `json:"includeSubDomains,omitempty" tf:"include_sub_domains,omitempty"`
// MaxAge value in seconds, should be no more than 1 day. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
MaxAge *float64 `json:"maxAge,omitempty" tf:"max_age,omitempty"`
// Specifies whether to preload. Valid values: `on` and `off`. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Preload *string `json:"preload,omitempty" tf:"preload,omitempty"`
// - `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type IPv6Observation struct {
}
type IPv6Parameters struct {
// - `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type MaxAgeObservation struct {
}
type MaxAgeParameters struct {
// Specifies whether to follow the max cache age of the origin server.- `on`: Enable.- `off`: Disable.If is on, MaxAgeTime is ignored. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
FollowOrigin *string `json:"followOrigin,omitempty" tf:"follow_origin,omitempty"`
// Specifies the max age of the cache (in seconds). The maximum value is 365 days. Note: the value 0 means not to cache. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
MaxAgeTime *float64 `json:"maxAgeTime,omitempty" tf:"max_age_time,omitempty"`
}
type NoCacheObservation struct {
}
type NoCacheParameters struct {
// Whether to cache the configuration. Valid values: `on`: Do not cache; `off`: Cache. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Switch *string `json:"switch,omitempty" tf:"switch,omitempty"`
}
type OfflineCacheObservation struct {
}
type OfflineCacheParameters struct {
// Whether to enable offline cache.- `on`: Enable.- `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type OriginObservation struct {
}
type OriginParameters struct {
// Backup origin sites list. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
BackupOrigins []*string `json:"backupOrigins,omitempty" tf:"backup_origins,omitempty"`
// Whether access private cos bucket is allowed when `OriginType` is cos. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
CosPrivateAccess *string `json:"cosPrivateAccess,omitempty" tf:"cos_private_access,omitempty"`
// Origin-pull protocol.- `http`: Switch HTTPS requests to HTTP.- `follow`: Follow the protocol of the request.- `https`: Switch HTTP requests to HTTPS. This only supports port 443 on the origin server. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
OriginPullProtocol *string `json:"originPullProtocol,omitempty" tf:"origin_pull_protocol,omitempty"`
// Origin sites list. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Origins []*string `json:"origins,omitempty" tf:"origins,omitempty"`
}
type PostMaxSizeObservation struct {
}
type PostMaxSizeParameters struct {
// Maximum size. Value range: 1-500 MB. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`
// Specifies whether to enable custom setting of the maximum file size.- `on`: Enable. You can set a custom max size.- `off`: Disable. In this case, the max size defaults to 32 MB.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type QueryStringObservation struct {
}
type QueryStringParameters struct {
// - `includeCustom`: Include the specified query strings.- `excludeCustom`: Exclude the specified query strings. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Action *string `json:"action,omitempty" tf:"action,omitempty"`
// Whether to use QueryString as part of CacheKey.- `on`: Enable.- `off`: Disable. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
// Array of query strings used/excluded. Note: This field may return null, indicating that no valid value can be obtained.
// +kubebuilder:validation:Optional
Value []*string `json:"value,omitempty" tf:"value,omitempty"`
}
type QuicObservation struct {
}
type QuicParameters struct {
// Whether to enable QUIC.- `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type SmartRoutingObservation struct {
}
type SmartRoutingParameters struct {
// Whether to enable smart acceleration.- `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type UpstreamHttp2Observation struct {
}
type UpstreamHttp2Parameters struct {
// Whether to enable HTTP2 origin-pull.- `on`: Enable.- `off`: Disable.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
}
type WebSocketObservation struct {
}
type WebSocketParameters struct {
// Whether to enable custom WebSocket timeout setting. When is off: it means to keep the default WebSocket connection timeout period, which is 15 seconds. To change the timeout period, please set it to on.
// +kubebuilder:validation:Required
Switch *string `json:"switch" tf:"switch,omitempty"`
// Sets timeout period in seconds. Maximum value: 120.
// +kubebuilder:validation:Optional
Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"`
}
type ZoneSettingObservation struct {
Area *string `json:"area,omitempty" tf:"area,omitempty"`
ID *string `json:"id,omitempty" tf:"id,omitempty"`
}
type ZoneSettingParameters struct {
// Cache expiration time configuration.
// +kubebuilder:validation:Optional
Cache []CacheParameters `json:"cache,omitempty" tf:"cache,omitempty"`
// Node cache key configuration.
// +kubebuilder:validation:Optional
CacheKey []CacheKeyParameters `json:"cacheKey,omitempty" tf:"cache_key,omitempty"`
// Cache pre-refresh configuration.
// +kubebuilder:validation:Optional
CachePrefresh []CachePrefreshParameters `json:"cachePrefresh,omitempty" tf:"cache_prefresh,omitempty"`
// Origin-pull client IP header configuration.
// +kubebuilder:validation:Optional
ClientIPHeader []ClientIPHeaderParameters `json:"clientIpHeader,omitempty" tf:"client_ip_header,omitempty"`
// Smart compression configuration.
// +kubebuilder:validation:Optional
Compression []CompressionParameters `json:"compression,omitempty" tf:"compression,omitempty"`
// Force HTTPS redirect configuration.
// +kubebuilder:validation:Optional
ForceRedirect []ForceRedirectParameters `json:"forceRedirect,omitempty" tf:"force_redirect,omitempty"`
// HTTPS acceleration configuration.
// +kubebuilder:validation:Optional
HTTPS []HTTPSParameters `json:"https,omitempty" tf:"https,omitempty"`
// IPv6 access configuration.
// +kubebuilder:validation:Optional
IPv6 []IPv6Parameters `json:"ipv6,omitempty" tf:"ipv6,omitempty"`
// Browser cache configuration.
// +kubebuilder:validation:Optional
MaxAge []MaxAgeParameters `json:"maxAge,omitempty" tf:"max_age,omitempty"`
// Offline cache configuration.
// +kubebuilder:validation:Optional
OfflineCache []OfflineCacheParameters `json:"offlineCache,omitempty" tf:"offline_cache,omitempty"`
// Origin server configuration.
// +kubebuilder:validation:Optional
Origin []OriginParameters `json:"origin,omitempty" tf:"origin,omitempty"`
// Maximum size of files transferred over POST request.
// +kubebuilder:validation:Optional
PostMaxSize []PostMaxSizeParameters `json:"postMaxSize,omitempty" tf:"post_max_size,omitempty"`
// QUIC access configuration.
// +kubebuilder:validation:Optional
Quic []QuicParameters `json:"quic,omitempty" tf:"quic,omitempty"`
// Smart acceleration configuration.
// +kubebuilder:validation:Optional
SmartRouting []SmartRoutingParameters `json:"smartRouting,omitempty" tf:"smart_routing,omitempty"`
// HTTP2 origin-pull configuration.
// +kubebuilder:validation:Optional
UpstreamHttp2 []UpstreamHttp2Parameters `json:"upstreamHttp2,omitempty" tf:"upstream_http2,omitempty"`
// WebSocket configuration.
// +kubebuilder:validation:Optional
WebSocket []WebSocketParameters `json:"webSocket,omitempty" tf:"web_socket,omitempty"`
// Site ID.
// +crossplane:generate:reference:type=Zone
// +kubebuilder:validation:Optional
ZoneID *string `json:"zoneId,omitempty" tf:"zone_id,omitempty"`
// +kubebuilder:validation:Optional
ZoneIDRef *v1.Reference `json:"zoneIdRef,omitempty" tf:"-"`
// +kubebuilder:validation:Optional
ZoneIDSelector *v1.Selector `json:"zoneIdSelector,omitempty" tf:"-"`
}
// ZoneSettingSpec defines the desired state of ZoneSetting
type ZoneSettingSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider ZoneSettingParameters `json:"forProvider"`
}
// ZoneSettingStatus defines the observed state of ZoneSetting.
type ZoneSettingStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider ZoneSettingObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// ZoneSetting is the Schema for the ZoneSettings API
// +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,tencentcloudjet}
type ZoneSetting struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ZoneSettingSpec `json:"spec"`
Status ZoneSettingStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// ZoneSettingList contains a list of ZoneSettings
type ZoneSettingList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ZoneSetting `json:"items"`
}
// Repository type metadata.
var (
ZoneSetting_Kind = "ZoneSetting"
ZoneSetting_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: ZoneSetting_Kind}.String()
ZoneSetting_KindAPIVersion = ZoneSetting_Kind + "." + CRDGroupVersion.String()
ZoneSetting_GroupVersionKind = CRDGroupVersion.WithKind(ZoneSetting_Kind)
)
func init() {
SchemeBuilder.Register(&ZoneSetting{}, &ZoneSettingList{})
}