-
Notifications
You must be signed in to change notification settings - Fork 121
/
zz_deploymentconfig_types.go
executable file
·155 lines (118 loc) · 6.08 KB
/
zz_deploymentconfig_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
/*
Copyright 2022 Upbound Inc.
*/
// Code generated by upjet. DO NOT EDIT.
package v1beta1
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 DeploymentConfigObservation struct {
// The AWS Assigned deployment config id
DeploymentConfigID *string `json:"deploymentConfigId,omitempty" tf:"deployment_config_id,omitempty"`
// The deployment group's config name.
ID *string `json:"id,omitempty" tf:"id,omitempty"`
}
type DeploymentConfigParameters struct {
// The compute platform can be Server, Lambda, or ECS. Default is Server.
// +kubebuilder:validation:Optional
ComputePlatform *string `json:"computePlatform,omitempty" tf:"compute_platform,omitempty"`
// A minimum_healthy_hosts block. Required for Server compute platform. Minimum Healthy Hosts are documented below.
// +kubebuilder:validation:Optional
MinimumHealthyHosts []MinimumHealthyHostsParameters `json:"minimumHealthyHosts,omitempty" tf:"minimum_healthy_hosts,omitempty"`
// Region is the region you'd like your resource to be created in.
// +upjet:crd:field:TFTag=-
// +kubebuilder:validation:Required
Region *string `json:"region" tf:"-"`
// A traffic_routing_config block. Traffic Routing Config is documented below.
// +kubebuilder:validation:Optional
TrafficRoutingConfig []TrafficRoutingConfigParameters `json:"trafficRoutingConfig,omitempty" tf:"traffic_routing_config,omitempty"`
}
type MinimumHealthyHostsObservation struct {
}
type MinimumHealthyHostsParameters struct {
// The type can either be FLEET_PERCENT or HOST_COUNT.
// +kubebuilder:validation:Optional
Type *string `json:"type,omitempty" tf:"type,omitempty"`
// The value when the type is FLEET_PERCENT represents the minimum number of healthy instances as
// a percentage of the total number of instances in the deployment. If you specify FLEET_PERCENT, at the start of the
// deployment, AWS CodeDeploy converts the percentage to the equivalent number of instance and rounds up fractional instances.
// When the type is HOST_COUNT, the value represents the minimum number of healthy instances as an absolute value.
// +kubebuilder:validation:Optional
Value *float64 `json:"value,omitempty" tf:"value,omitempty"`
}
type TimeBasedCanaryObservation struct {
}
type TimeBasedCanaryParameters struct {
// The number of minutes between the first and second traffic shifts of a TimeBasedCanary deployment.
// +kubebuilder:validation:Optional
Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"`
// The percentage of traffic to shift in the first increment of a TimeBasedCanary deployment.
// +kubebuilder:validation:Optional
Percentage *float64 `json:"percentage,omitempty" tf:"percentage,omitempty"`
}
type TimeBasedLinearObservation struct {
}
type TimeBasedLinearParameters struct {
// The number of minutes between the first and second traffic shifts of a TimeBasedCanary deployment.
// +kubebuilder:validation:Optional
Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"`
// The percentage of traffic to shift in the first increment of a TimeBasedCanary deployment.
// +kubebuilder:validation:Optional
Percentage *float64 `json:"percentage,omitempty" tf:"percentage,omitempty"`
}
type TrafficRoutingConfigObservation struct {
}
type TrafficRoutingConfigParameters struct {
// The time based canary configuration information. If type is TimeBasedLinear, use time_based_linear instead.
// +kubebuilder:validation:Optional
TimeBasedCanary []TimeBasedCanaryParameters `json:"timeBasedCanary,omitempty" tf:"time_based_canary,omitempty"`
// The time based linear configuration information. If type is TimeBasedCanary, use time_based_canary instead.
// +kubebuilder:validation:Optional
TimeBasedLinear []TimeBasedLinearParameters `json:"timeBasedLinear,omitempty" tf:"time_based_linear,omitempty"`
// Type of traffic routing config. One of TimeBasedCanary, TimeBasedLinear, AllAtOnce.
// +kubebuilder:validation:Optional
Type *string `json:"type,omitempty" tf:"type,omitempty"`
}
// DeploymentConfigSpec defines the desired state of DeploymentConfig
type DeploymentConfigSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider DeploymentConfigParameters `json:"forProvider"`
}
// DeploymentConfigStatus defines the observed state of DeploymentConfig.
type DeploymentConfigStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider DeploymentConfigObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// DeploymentConfig is the Schema for the DeploymentConfigs API. Provides a CodeDeploy deployment config.
// +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,aws}
type DeploymentConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DeploymentConfigSpec `json:"spec"`
Status DeploymentConfigStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// DeploymentConfigList contains a list of DeploymentConfigs
type DeploymentConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DeploymentConfig `json:"items"`
}
// Repository type metadata.
var (
DeploymentConfig_Kind = "DeploymentConfig"
DeploymentConfig_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: DeploymentConfig_Kind}.String()
DeploymentConfig_KindAPIVersion = DeploymentConfig_Kind + "." + CRDGroupVersion.String()
DeploymentConfig_GroupVersionKind = CRDGroupVersion.WithKind(DeploymentConfig_Kind)
)
func init() {
SchemeBuilder.Register(&DeploymentConfig{}, &DeploymentConfigList{})
}