Documentation
¶
Overview ¶
Package v1 contains hand-crafted API Schema definitions for the dbformysql v1 API group +groupName=dbformysql.azure.com
Package v1 contains API Schema definitions for dbformysql data plane APIs +kubebuilder:object:generate=true All object properties are optional by default, this will be overridden when needed: +kubebuilder:validation:Optional +groupName=dbformysql.azure.com
Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Index ¶
- Variables
- type AADUserSpec
- type LocalUserSpec
- type User
- func (user *User) AzureName() string
- func (in *User) DeepCopy() *User
- func (in *User) DeepCopyInto(out *User)
- func (in *User) DeepCopyObject() runtime.Object
- func (user *User) GetConditions() conditions.Conditions
- func (user *User) Hub()
- func (user *User) Owner() *genruntime.ResourceReference
- func (user *User) SetConditions(conditions conditions.Conditions)
- type UserList
- type UserSpec
- type UserStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "dbformysql.azure.com", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type AADUserSpec ¶ added in v2.1.0
type AADUserSpec struct {
// Alias is the short name associated with the user. This is required if the AzureName is longer than 32 characters.
// Note that Alias denotes the name used to manage the SQL user in MySQL, NOT the name used to log in to the SQL server.
// When logging in to the SQL server and prompted to provider the username, supply the AzureName.
// +kubebuilder:validation:MaxLength=32
Alias string `json:"alias,omitempty"`
// +kubebuilder:validation:Required
// ServerAdminUsername is the username of the Server administrator. If your server admin was configured with
// Azure Service Operator, this should match the value of the Administrator's $.spec.login field. If the
// administrator is a group, the ServerAdminUsername should be the group name, not the actual username of the
// identity to log in with. For example if the administrator group is "admin-group" and identity "my-identity" is
// a member of that group, the ServerAdminUsername should be "admin-group"
ServerAdminUsername string `json:"serverAdminUsername,omitempty"`
}
func (*AADUserSpec) DeepCopy ¶ added in v2.1.0
func (in *AADUserSpec) DeepCopy() *AADUserSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AADUserSpec.
func (*AADUserSpec) DeepCopyInto ¶ added in v2.1.0
func (in *AADUserSpec) DeepCopyInto(out *AADUserSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalUserSpec ¶
type LocalUserSpec struct {
// +kubebuilder:validation:Required
// ServerAdminUsername is the username of the Server administrator. If the
// administrator is a group, the ServerAdminUsername should be the group name, not the actual username of the
// identity to log in with. For example if the administrator group is "admin-group" and identity "my-identity" is
// a member of that group, the ServerAdminUsername should be "admin-group".
ServerAdminUsername string `json:"serverAdminUsername,omitempty"`
// ServerAdminPassword is a reference to a secret containing the servers administrator password.
// If specified, the operator uses the ServerAdminUsername and ServerAdminPassword to log into the server
// as a local administrator.
// If NOT specified, the operator uses its identity to log into the server. The operator can only successfully
// log into the server if its identity is the administrator of the server or if its identity is a member of a
// group which is the administrator of the server. If the
// administrator is a group, the ServerAdminUsername should be the group name, not the actual username of the
// identity to log in with. For example if the administrator group is "admin-group" and identity "my-identity" is
// a member of that group, the ServerAdminUsername should be "admin-group"
ServerAdminPassword *genruntime.SecretReference `json:"serverAdminPassword,omitempty"`
// +kubebuilder:validation:Required
// Password is the password to use for the user
Password *genruntime.SecretReference `json:"password,omitempty"`
}
func (*LocalUserSpec) DeepCopy ¶
func (in *LocalUserSpec) DeepCopy() *LocalUserSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalUserSpec.
func (*LocalUserSpec) DeepCopyInto ¶
func (in *LocalUserSpec) DeepCopyInto(out *LocalUserSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type User ¶
type User struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec UserSpec `json:"spec,omitempty"`
Status UserStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:resource:categories={azure,dbformysql} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +kubebuilder:storageversion User is a MySQL user
func (*User) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new User.
func (*User) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*User) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*User) GetConditions ¶
func (user *User) GetConditions() conditions.Conditions
GetConditions returns the conditions of the resource
func (*User) Hub ¶
func (user *User) Hub()
Hub marks that this userSpec is the hub type for conversion
func (*User) Owner ¶
func (user *User) Owner() *genruntime.ResourceReference
Owner returns the ResourceReference of the owner, or nil if there is no owner
func (*User) SetConditions ¶
func (user *User) SetConditions(conditions conditions.Conditions)
SetConditions sets the conditions on the resource status
type UserList ¶
type UserList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []User `json:"items"`
}
+kubebuilder:object:root=true
func (*UserList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserList.
func (*UserList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*UserList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type UserSpec ¶
type UserSpec struct {
// AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it
// doesn't have to be.
// If not specified, the default is the name of the Kubernetes object.
// When creating a local user, this will be the name of the user created.
// When creating an AAD user, this must have a specific format depending on the type of AAD user being created.
// For managed identity: "my-managed-identity-name"
// For standard AAD user: "myuser@mydomain.onmicrosoft.com"
// For AAD group: "my-group"
AzureName string `json:"azureName,omitempty"`
// +kubebuilder:validation:Required
// Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also
// controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a
// reference to a dbformysql.azure.com/FlexibleServer resource
Owner *genruntime.KubernetesOwnerReference `group:"dbformysql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"`
// Hostname is the host the user will connect from. If omitted, the default is to allow connection from any hostname.
Hostname string `json:"hostname,omitempty"`
// The server-level roles assigned to the user.
// Privileges include the following: RELOAD, PROCESS, SHOW
// DATABASES, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER
Privileges []string `json:"privileges,omitempty"`
// The database-level roles assigned to the user (keyed by
// database name). Privileges include the following: SELECT,
// INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX,
// ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE
// VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER
DatabasePrivileges map[string][]string `json:"databasePrivileges,omitempty"`
// LocalUser contains details for creating a standard (non-aad) MySQL User
LocalUser *LocalUserSpec `json:"localUser,omitempty"`
// AADUser contains details for creating an AAD user.
AADUser *AADUserSpec `json:"aadUser,omitempty"`
}
func (*UserSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserSpec.
func (*UserSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*UserSpec) OriginalVersion ¶
OriginalVersion returns the original API version used to create the resource.
func (*UserSpec) SetAzureName ¶
SetAzureName sets the Azure name of the resource
type UserStatus ¶
type UserStatus struct {
// Conditions: The observed state of the resource
Conditions []conditions.Condition `json:"conditions,omitempty"`
}
func (*UserStatus) DeepCopy ¶
func (in *UserStatus) DeepCopy() *UserStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserStatus.
func (*UserStatus) DeepCopyInto ¶
func (in *UserStatus) DeepCopyInto(out *UserStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.