-
Notifications
You must be signed in to change notification settings - Fork 113
/
zz_ontapstoragevirtualmachine_types.go
executable file
·235 lines (172 loc) · 11 KB
/
zz_ontapstoragevirtualmachine_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
/*
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 ActiveDirectoryConfigurationObservation struct {
}
type ActiveDirectoryConfigurationParameters struct {
// The NetBIOS name of the Active Directory computer object that will be created for your SVM. This is often the same as the SVM name but can be different. AWS limits to 15 characters because of standard NetBIOS naming limits.
// +kubebuilder:validation:Optional
NetbiosName *string `json:"netbiosName,omitempty" tf:"netbios_name,omitempty"`
// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
// +kubebuilder:validation:Optional
SelfManagedActiveDirectoryConfiguration []SelfManagedActiveDirectoryConfigurationParameters `json:"selfManagedActiveDirectoryConfiguration,omitempty" tf:"self_managed_active_directory_configuration,omitempty"`
}
type EndpointsManagementObservation struct {
// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`
// IP addresses of the storage virtual machine endpoint.
IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}
type EndpointsManagementParameters struct {
}
type ISCSIObservation struct {
// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`
// IP addresses of the storage virtual machine endpoint.
IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}
type ISCSIParameters struct {
}
type NFSObservation struct {
// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`
// IP addresses of the storage virtual machine endpoint.
IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}
type NFSParameters struct {
}
type OntapStorageVirtualMachineEndpointsObservation struct {
// An endpoint for accessing data on your storage virtual machine via iSCSI protocol. See Endpoint.
ISCSI []ISCSIObservation `json:"iscsi,omitempty" tf:"iscsi,omitempty"`
// An endpoint for managing your file system using the NetApp ONTAP CLI and NetApp ONTAP API. See Endpoint.
Management []EndpointsManagementObservation `json:"management,omitempty" tf:"management,omitempty"`
// An endpoint for accessing data on your storage virtual machine via NFS protocol. See Endpoint.
NFS []NFSObservation `json:"nfs,omitempty" tf:"nfs,omitempty"`
// An endpoint for accessing data on your storage virtual machine via SMB protocol. This is only set if an active_directory_configuration has been set. See Endpoint.
SMB []SMBObservation `json:"smb,omitempty" tf:"smb,omitempty"`
}
type OntapStorageVirtualMachineEndpointsParameters struct {
}
type OntapStorageVirtualMachineObservation struct {
// Amazon Resource Name of the storage virtual machine.
Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`
// The endpoints that are used to access data or to manage the storage virtual machine using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below.
Endpoints []OntapStorageVirtualMachineEndpointsObservation `json:"endpoints,omitempty" tf:"endpoints,omitempty"`
// Identifier of the storage virtual machine, e.g., svm-12345678
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// Describes the SVM's subtype, e.g. DEFAULT
Subtype *string `json:"subtype,omitempty" tf:"subtype,omitempty"`
// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
// The SVM's UUID (universally unique identifier).
UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"`
}
type OntapStorageVirtualMachineParameters struct {
// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
// +kubebuilder:validation:Optional
ActiveDirectoryConfiguration []ActiveDirectoryConfigurationParameters `json:"activeDirectoryConfiguration,omitempty" tf:"active_directory_configuration,omitempty"`
// The ID of the Amazon FSx ONTAP File System that this SVM will be created on.
// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/fsx/v1beta1.OntapFileSystem
// +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID()
// +kubebuilder:validation:Optional
FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`
// Reference to a OntapFileSystem in fsx to populate fileSystemId.
// +kubebuilder:validation:Optional
FileSystemIDRef *v1.Reference `json:"fileSystemIdRef,omitempty" tf:"-"`
// Selector for a OntapFileSystem in fsx to populate fileSystemId.
// +kubebuilder:validation:Optional
FileSystemIDSelector *v1.Selector `json:"fileSystemIdSelector,omitempty" tf:"-"`
// The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character.
// +kubebuilder:validation:Required
Name *string `json:"name" tf:"name,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:"-"`
// Specifies the root volume security style, Valid values are UNIX, NTFS, and MIXED. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is UNIX.
// +kubebuilder:validation:Optional
RootVolumeSecurityStyle *string `json:"rootVolumeSecurityStyle,omitempty" tf:"root_volume_security_style,omitempty"`
// +kubebuilder:validation:Optional
SvmAdminPasswordSecretRef *v1.SecretKeySelector `json:"svmAdminPasswordSecretRef,omitempty" tf:"-"`
// Key-value map of resource tags.
// +kubebuilder:validation:Optional
Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}
type SMBObservation struct {
// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`
// IP addresses of the storage virtual machine endpoint.
IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}
type SMBParameters struct {
}
type SelfManagedActiveDirectoryConfigurationObservation struct {
}
type SelfManagedActiveDirectoryConfigurationParameters struct {
// A list of up to three IP addresses of DNS servers or domain controllers in the self-managed AD directory.
// +kubebuilder:validation:Required
DNSIps []*string `json:"dnsIps" tf:"dns_ips,omitempty"`
// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
// +kubebuilder:validation:Required
DomainName *string `json:"domainName" tf:"domain_name,omitempty"`
// The name of the domain group whose members are granted administrative privileges for the SVM. The group that you specify must already exist in your domain. Defaults to Domain Admins.
// +kubebuilder:validation:Optional
FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`
// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the SVM. If none is provided, the SVM is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
// +kubebuilder:validation:Optional
OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`
// The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
// +kubebuilder:validation:Required
PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`
// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
// +kubebuilder:validation:Required
Username *string `json:"username" tf:"username,omitempty"`
}
// OntapStorageVirtualMachineSpec defines the desired state of OntapStorageVirtualMachine
type OntapStorageVirtualMachineSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider OntapStorageVirtualMachineParameters `json:"forProvider"`
}
// OntapStorageVirtualMachineStatus defines the observed state of OntapStorageVirtualMachine.
type OntapStorageVirtualMachineStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider OntapStorageVirtualMachineObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// OntapStorageVirtualMachine is the Schema for the OntapStorageVirtualMachines API. Manages a FSx Storage Virtual Machine.
// +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 OntapStorageVirtualMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec OntapStorageVirtualMachineSpec `json:"spec"`
Status OntapStorageVirtualMachineStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// OntapStorageVirtualMachineList contains a list of OntapStorageVirtualMachines
type OntapStorageVirtualMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OntapStorageVirtualMachine `json:"items"`
}
// Repository type metadata.
var (
OntapStorageVirtualMachine_Kind = "OntapStorageVirtualMachine"
OntapStorageVirtualMachine_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: OntapStorageVirtualMachine_Kind}.String()
OntapStorageVirtualMachine_KindAPIVersion = OntapStorageVirtualMachine_Kind + "." + CRDGroupVersion.String()
OntapStorageVirtualMachine_GroupVersionKind = CRDGroupVersion.WithKind(OntapStorageVirtualMachine_Kind)
)
func init() {
SchemeBuilder.Register(&OntapStorageVirtualMachine{}, &OntapStorageVirtualMachineList{})
}