-
Notifications
You must be signed in to change notification settings - Fork 113
/
zz_experience_types.go
executable file
·183 lines (138 loc) · 7.24 KB
/
zz_experience_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
/*
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 ContentSourceConfigurationObservation struct {
}
type ContentSourceConfigurationParameters struct {
// The identifiers of the data sources you want to use for your Amazon Kendra experience. Maximum number of 100 items.
// +kubebuilder:validation:Optional
DataSourceIds []*string `json:"dataSourceIds,omitempty" tf:"data_source_ids,omitempty"`
// Whether to use documents you indexed directly using the BatchPutDocument API. Defaults to false.
// +kubebuilder:validation:Optional
DirectPutContent *bool `json:"directPutContent,omitempty" tf:"direct_put_content,omitempty"`
// The identifier of the FAQs that you want to use for your Amazon Kendra experience. Maximum number of 100 items.
// +kubebuilder:validation:Optional
FaqIds []*string `json:"faqIds,omitempty" tf:"faq_ids,omitempty"`
}
type EndpointsObservation struct {
// The endpoint of your Amazon Kendra experience.
Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"`
// The type of endpoint for your Amazon Kendra experience.
EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"`
}
type EndpointsParameters struct {
}
type ExperienceConfigurationObservation struct {
}
type ExperienceConfigurationParameters struct {
// The identifiers of your data sources and FAQs. Or, you can specify that you want to use documents indexed via the BatchPutDocument API. Detailed below.
// +kubebuilder:validation:Optional
ContentSourceConfiguration []ContentSourceConfigurationParameters `json:"contentSourceConfiguration,omitempty" tf:"content_source_configuration,omitempty"`
// The AWS SSO field name that contains the identifiers of your users, such as their emails. Detailed below.
// +kubebuilder:validation:Optional
UserIdentityConfiguration []UserIdentityConfigurationParameters `json:"userIdentityConfiguration,omitempty" tf:"user_identity_configuration,omitempty"`
}
type ExperienceObservation struct {
// ARN of the Experience.
Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`
// Shows the endpoint URLs for your Amazon Kendra experiences. The URLs are unique and fully hosted by AWS.
Endpoints []EndpointsObservation `json:"endpoints,omitempty" tf:"endpoints,omitempty"`
// The unique identifier of the experience.
ExperienceID *string `json:"experienceId,omitempty" tf:"experience_id,omitempty"`
// The unique identifiers of the experience and index separated by a slash (/).
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// The current processing status of your Amazon Kendra experience.
Status *string `json:"status,omitempty" tf:"status,omitempty"`
}
type ExperienceParameters struct {
// Configuration information for your Amazon Kendra experience. Detailed below.
// +kubebuilder:validation:Optional
Configuration []ExperienceConfigurationParameters `json:"configuration,omitempty" tf:"configuration,omitempty"`
// A description for your Amazon Kendra experience.
// +kubebuilder:validation:Optional
Description *string `json:"description,omitempty" tf:"description,omitempty"`
// The identifier of the index for your Amazon Kendra experience.
// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kendra/v1beta1.Index
// +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID()
// +kubebuilder:validation:Optional
IndexID *string `json:"indexId,omitempty" tf:"index_id,omitempty"`
// Reference to a Index in kendra to populate indexId.
// +kubebuilder:validation:Optional
IndexIDRef *v1.Reference `json:"indexIdRef,omitempty" tf:"-"`
// Selector for a Index in kendra to populate indexId.
// +kubebuilder:validation:Optional
IndexIDSelector *v1.Selector `json:"indexIdSelector,omitempty" tf:"-"`
// A name for your Amazon Kendra experience.
// +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:"-"`
// The Amazon Resource Name (ARN) of a role with permission to access Query API, QuerySuggestions API, SubmitFeedback API, and AWS SSO that stores your user and group information. For more information, see IAM roles for Amazon Kendra.
// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
// Reference to a Role in iam to populate roleArn.
// +kubebuilder:validation:Optional
RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate roleArn.
// +kubebuilder:validation:Optional
RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}
type UserIdentityConfigurationObservation struct {
}
type UserIdentityConfigurationParameters struct {
// The AWS SSO field name that contains the identifiers of your users, such as their emails.
// +kubebuilder:validation:Required
IdentityAttributeName *string `json:"identityAttributeName" tf:"identity_attribute_name,omitempty"`
}
// ExperienceSpec defines the desired state of Experience
type ExperienceSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider ExperienceParameters `json:"forProvider"`
}
// ExperienceStatus defines the observed state of Experience.
type ExperienceStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider ExperienceObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// Experience is the Schema for the Experiences 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,aws}
type Experience struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ExperienceSpec `json:"spec"`
Status ExperienceStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// ExperienceList contains a list of Experiences
type ExperienceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Experience `json:"items"`
}
// Repository type metadata.
var (
Experience_Kind = "Experience"
Experience_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Experience_Kind}.String()
Experience_KindAPIVersion = Experience_Kind + "." + CRDGroupVersion.String()
Experience_GroupVersionKind = CRDGroupVersion.WithKind(Experience_Kind)
)
func init() {
SchemeBuilder.Register(&Experience{}, &ExperienceList{})
}