generated from crossplane/upjet-provider-template
/
zz_azure_types.go
executable file
·222 lines (177 loc) · 16.8 KB
/
zz_azure_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
// SPDX-FileCopyrightText: 2023 The Crossplane Authors <https://crossplane.io>
//
// SPDX-License-Identifier: Apache-2.0
/*
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 AzureInitParameters struct {
// separated list of tags (in the form key:value,key:value) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to "".
// This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to `""`.
AppServicePlanFilters *string `json:"appServicePlanFilters,omitempty" tf:"app_service_plan_filters,omitempty"`
// (Boolean) Silence monitors for expected Azure VM shutdowns. Defaults to false.
// Silence monitors for expected Azure VM shutdowns. Defaults to `false`.
Automute *bool `json:"automute,omitempty" tf:"automute,omitempty"`
// (String) Your Azure web application ID.
// Your Azure web application ID.
ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"`
// separated list of tags (in the form key:value,key:value) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to "".
// This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to `""`.
ContainerAppFilters *string `json:"containerAppFilters,omitempty" tf:"container_app_filters,omitempty"`
// (Boolean) When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.
// Note: This requires resource_collection_enabled to be set to true. Defaults to false.
// When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.
// Note: This requires `resource_collection_enabled` to be set to true. Defaults to `false`.
CspmEnabled *bool `json:"cspmEnabled,omitempty" tf:"cspm_enabled,omitempty"`
// (Boolean) Enable custom metrics for your organization. Defaults to false.
// Enable custom metrics for your organization. Defaults to `false`.
CustomMetricsEnabled *bool `json:"customMetricsEnabled,omitempty" tf:"custom_metrics_enabled,omitempty"`
// (String) String of host tag(s) (in the form key:value,key:value) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. env:production,deploymentgroup:red Defaults to "".
// String of host tag(s) (in the form `key:value,key:value`) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. `env:production,deploymentgroup:red` Defaults to `""`.
HostFilters *string `json:"hostFilters,omitempty" tf:"host_filters,omitempty"`
// (Boolean) When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.
// When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.
ResourceCollectionEnabled *bool `json:"resourceCollectionEnabled,omitempty" tf:"resource_collection_enabled,omitempty"`
// (String) Your Azure Active Directory ID.
// Your Azure Active Directory ID.
TenantName *string `json:"tenantName,omitempty" tf:"tenant_name,omitempty"`
}
type AzureObservation struct {
// separated list of tags (in the form key:value,key:value) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to "".
// This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to `""`.
AppServicePlanFilters *string `json:"appServicePlanFilters,omitempty" tf:"app_service_plan_filters,omitempty"`
// (Boolean) Silence monitors for expected Azure VM shutdowns. Defaults to false.
// Silence monitors for expected Azure VM shutdowns. Defaults to `false`.
Automute *bool `json:"automute,omitempty" tf:"automute,omitempty"`
// (String) Your Azure web application ID.
// Your Azure web application ID.
ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"`
// separated list of tags (in the form key:value,key:value) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to "".
// This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to `""`.
ContainerAppFilters *string `json:"containerAppFilters,omitempty" tf:"container_app_filters,omitempty"`
// (Boolean) When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.
// Note: This requires resource_collection_enabled to be set to true. Defaults to false.
// When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.
// Note: This requires `resource_collection_enabled` to be set to true. Defaults to `false`.
CspmEnabled *bool `json:"cspmEnabled,omitempty" tf:"cspm_enabled,omitempty"`
// (Boolean) Enable custom metrics for your organization. Defaults to false.
// Enable custom metrics for your organization. Defaults to `false`.
CustomMetricsEnabled *bool `json:"customMetricsEnabled,omitempty" tf:"custom_metrics_enabled,omitempty"`
// (String) String of host tag(s) (in the form key:value,key:value) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. env:production,deploymentgroup:red Defaults to "".
// String of host tag(s) (in the form `key:value,key:value`) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. `env:production,deploymentgroup:red` Defaults to `""`.
HostFilters *string `json:"hostFilters,omitempty" tf:"host_filters,omitempty"`
// (String) The ID of this resource.
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// (Boolean) When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.
// When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.
ResourceCollectionEnabled *bool `json:"resourceCollectionEnabled,omitempty" tf:"resource_collection_enabled,omitempty"`
// (String) Your Azure Active Directory ID.
// Your Azure Active Directory ID.
TenantName *string `json:"tenantName,omitempty" tf:"tenant_name,omitempty"`
}
type AzureParameters struct {
// separated list of tags (in the form key:value,key:value) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to "".
// This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to `""`.
// +kubebuilder:validation:Optional
AppServicePlanFilters *string `json:"appServicePlanFilters,omitempty" tf:"app_service_plan_filters,omitempty"`
// (Boolean) Silence monitors for expected Azure VM shutdowns. Defaults to false.
// Silence monitors for expected Azure VM shutdowns. Defaults to `false`.
// +kubebuilder:validation:Optional
Automute *bool `json:"automute,omitempty" tf:"automute,omitempty"`
// (String) Your Azure web application ID.
// Your Azure web application ID.
// +kubebuilder:validation:Optional
ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"`
// (String, Sensitive) Your Azure web application secret key.
// (Required for Initial Creation) Your Azure web application secret key.
// +kubebuilder:validation:Optional
ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"`
// separated list of tags (in the form key:value,key:value) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to "".
// This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to `""`.
// +kubebuilder:validation:Optional
ContainerAppFilters *string `json:"containerAppFilters,omitempty" tf:"container_app_filters,omitempty"`
// (Boolean) When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.
// Note: This requires resource_collection_enabled to be set to true. Defaults to false.
// When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.
// Note: This requires `resource_collection_enabled` to be set to true. Defaults to `false`.
// +kubebuilder:validation:Optional
CspmEnabled *bool `json:"cspmEnabled,omitempty" tf:"cspm_enabled,omitempty"`
// (Boolean) Enable custom metrics for your organization. Defaults to false.
// Enable custom metrics for your organization. Defaults to `false`.
// +kubebuilder:validation:Optional
CustomMetricsEnabled *bool `json:"customMetricsEnabled,omitempty" tf:"custom_metrics_enabled,omitempty"`
// (String) String of host tag(s) (in the form key:value,key:value) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. env:production,deploymentgroup:red Defaults to "".
// String of host tag(s) (in the form `key:value,key:value`) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. `env:production,deploymentgroup:red` Defaults to `""`.
// +kubebuilder:validation:Optional
HostFilters *string `json:"hostFilters,omitempty" tf:"host_filters,omitempty"`
// (Boolean) When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.
// When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.
// +kubebuilder:validation:Optional
ResourceCollectionEnabled *bool `json:"resourceCollectionEnabled,omitempty" tf:"resource_collection_enabled,omitempty"`
// (String) Your Azure Active Directory ID.
// Your Azure Active Directory ID.
// +kubebuilder:validation:Optional
TenantName *string `json:"tenantName,omitempty" tf:"tenant_name,omitempty"`
}
// AzureSpec defines the desired state of Azure
type AzureSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider AzureParameters `json:"forProvider"`
// THIS IS A BETA FIELD. It will be honored
// unless the Management Policies feature flag is disabled.
// InitProvider holds the same fields as ForProvider, with the exception
// of Identifier and other resource reference fields. The fields that are
// in InitProvider are merged into ForProvider when the resource is created.
// The same fields are also added to the terraform ignore_changes hook, to
// avoid updating them after creation. This is useful for fields that are
// required on creation, but we do not desire to update them after creation,
// for example because of an external controller is managing them, like an
// autoscaler.
InitProvider AzureInitParameters `json:"initProvider,omitempty"`
}
// AzureStatus defines the observed state of Azure.
type AzureStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider AzureObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// +kubebuilder:subresource:status
// +kubebuilder:storageversion
// Azure is the Schema for the Azures API. Provides a Datadog - Microsoft Azure integration resource. This can be used to create and manage the integrations.
// +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:resource:scope=Cluster,categories={crossplane,managed,datadog}
type Azure struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || (has(self.initProvider) && has(self.initProvider.clientId))",message="spec.forProvider.clientId is a required parameter"
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="spec.forProvider.clientSecretSecretRef is a required parameter"
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantName) || (has(self.initProvider) && has(self.initProvider.tenantName))",message="spec.forProvider.tenantName is a required parameter"
Spec AzureSpec `json:"spec"`
Status AzureStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// AzureList contains a list of Azures
type AzureList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Azure `json:"items"`
}
// Repository type metadata.
var (
Azure_Kind = "Azure"
Azure_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Azure_Kind}.String()
Azure_KindAPIVersion = Azure_Kind + "." + CRDGroupVersion.String()
Azure_GroupVersionKind = CRDGroupVersion.WithKind(Azure_Kind)
)
func init() {
SchemeBuilder.Register(&Azure{}, &AzureList{})
}