-
Notifications
You must be signed in to change notification settings - Fork 117
/
zz_domainsamloptions_types.go
executable file
·143 lines (110 loc) · 5.39 KB
/
zz_domainsamloptions_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
/*
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 DomainSAMLOptionsObservation struct {
// Name of the domain the SAML options are associated with.
ID *string `json:"id,omitempty" tf:"id,omitempty"`
}
type DomainSAMLOptionsParameters struct {
// Name of the domain.
// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/opensearch/v1beta1.Domain
// +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractParamPath("domain_name",false)
// +kubebuilder:validation:Optional
DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"`
// Reference to a Domain in opensearch to populate domainName.
// +kubebuilder:validation:Optional
DomainNameRef *v1.Reference `json:"domainNameRef,omitempty" tf:"-"`
// Selector for a Domain in opensearch to populate domainName.
// +kubebuilder:validation:Optional
DomainNameSelector *v1.Selector `json:"domainNameSelector,omitempty" tf:"-"`
// 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:"-"`
// SAML authentication options for an AWS OpenSearch Domain.
// +kubebuilder:validation:Optional
SAMLOptions []SAMLOptionsParameters `json:"samlOptions,omitempty" tf:"saml_options,omitempty"`
}
type IdpObservation struct {
}
type IdpParameters struct {
// Unique Entity ID of the application in SAML Identity Provider.
// +kubebuilder:validation:Required
EntityID *string `json:"entityId" tf:"entity_id,omitempty"`
// Metadata of the SAML application in xml format.
// +kubebuilder:validation:Required
MetadataContent *string `json:"metadataContent" tf:"metadata_content,omitempty"`
}
type SAMLOptionsObservation struct {
}
type SAMLOptionsParameters struct {
// Whether SAML authentication is enabled.
// +kubebuilder:validation:Optional
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
// Information from your identity provider.
// +kubebuilder:validation:Optional
Idp []IdpParameters `json:"idp,omitempty" tf:"idp,omitempty"`
// This backend role from the SAML IdP receives full permissions to the cluster, equivalent to a new master user.
// +kubebuilder:validation:Optional
MasterBackendRole *string `json:"masterBackendRole,omitempty" tf:"master_backend_role,omitempty"`
// This username from the SAML IdP receives full permissions to the cluster, equivalent to a new master user.
// +kubebuilder:validation:Optional
MasterUserNameSecretRef *v1.SecretKeySelector `json:"masterUserNameSecretRef,omitempty" tf:"-"`
// Element of the SAML assertion to use for backend roles. Default is roles.
// +kubebuilder:validation:Optional
RolesKey *string `json:"rolesKey,omitempty" tf:"roles_key,omitempty"`
// Duration of a session in minutes after a user logs in. Default is 60. Maximum value is 1,440.
// +kubebuilder:validation:Optional
SessionTimeoutMinutes *float64 `json:"sessionTimeoutMinutes,omitempty" tf:"session_timeout_minutes,omitempty"`
// Element of the SAML assertion to use for username. Default is NameID.
// +kubebuilder:validation:Optional
SubjectKey *string `json:"subjectKey,omitempty" tf:"subject_key,omitempty"`
}
// DomainSAMLOptionsSpec defines the desired state of DomainSAMLOptions
type DomainSAMLOptionsSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider DomainSAMLOptionsParameters `json:"forProvider"`
}
// DomainSAMLOptionsStatus defines the observed state of DomainSAMLOptions.
type DomainSAMLOptionsStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider DomainSAMLOptionsObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// DomainSAMLOptions is the Schema for the DomainSAMLOptionss 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 DomainSAMLOptions struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DomainSAMLOptionsSpec `json:"spec"`
Status DomainSAMLOptionsStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// DomainSAMLOptionsList contains a list of DomainSAMLOptionss
type DomainSAMLOptionsList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DomainSAMLOptions `json:"items"`
}
// Repository type metadata.
var (
DomainSAMLOptions_Kind = "DomainSAMLOptions"
DomainSAMLOptions_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: DomainSAMLOptions_Kind}.String()
DomainSAMLOptions_KindAPIVersion = DomainSAMLOptions_Kind + "." + CRDGroupVersion.String()
DomainSAMLOptions_GroupVersionKind = CRDGroupVersion.WithKind(DomainSAMLOptions_Kind)
)
func init() {
SchemeBuilder.Register(&DomainSAMLOptions{}, &DomainSAMLOptionsList{})
}