v1alpha1

package
v0.0.0-...-904c4b3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 3, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the superset v1alpha1 API group +kubebuilder:object:generate=true +groupName=superset.zncdata.dev

Index

Constants

View Source
const (
	DefaultRepository      = "quay.io/zncdatadev"
	DefaultProductVersion  = "4.0.2"
	DefaultPlatformVersion = "0.0.0-dev"
	DefaultProductName     = "superset"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "superset.zncdata.dev", Version: "v1alpha1"}

	// 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 AppSecretKeySpec

type AppSecretKeySpec struct {
	// +kubebuilder:validation=Optional
	// ExistSecret is the name of the secret that contains the secret key.
	// It must contain the key `SUPERSET_SECRET_KEY`.
	// Note: To avoid the key name confusions, the key name must be started with `SUPERSET_`.
	ExistSecret string `json:"existSecret,omitempty"`
	// +kubebuilder:validation=Optional
	// If value is not set, the secret will be generated.
	// When you migrate the Superset instance, you should keep the same secret key in the new instance.
	SecretKey string `json:"secretKey,omitempty"`
}

AppSecretKeySpec defines the app secret key spec.

func (*AppSecretKeySpec) DeepCopy

func (in *AppSecretKeySpec) DeepCopy() *AppSecretKeySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSecretKeySpec.

func (*AppSecretKeySpec) DeepCopyInto

func (in *AppSecretKeySpec) DeepCopyInto(out *AppSecretKeySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthenticationSpec

type AuthenticationSpec struct {
	// +kubebuilder:validation:Required
	AuthenticationClass string `json:"authenticationClass"`

	// +kubebuilder:validation:Optional
	Oidc *OidcSpec `json:"oidc,omitempty"`

	// +kubebuilder:validation:Optional
	SyncRolesAt string `json:"syncRolesAt,omitempty"`

	// +kubebuilder:validation:Optional
	UserRegistration bool `json:"userRegistration,omitempty"`

	// +kubebuilder:validation:Optional
	UserRegistrationRole string `json:"userRegistrationRole,omitempty"`
}

AuthenticationSpec defines the authentication spec.

func (*AuthenticationSpec) DeepCopy

func (in *AuthenticationSpec) DeepCopy() *AuthenticationSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationSpec.

func (*AuthenticationSpec) DeepCopyInto

func (in *AuthenticationSpec) DeepCopyInto(out *AuthenticationSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterConfigSpec

type ClusterConfigSpec struct {
	// +kubebuilder:validation:Optional
	Authentication *AuthenticationSpec `json:"authentication,omitempty"`

	// Superset administrator user credentials and database connection configurations.
	// It must contains the key:
	//   - `adminUser.username`: The first name of the admin user.
	//   - `adminUser.firstname`: The first name of the admin user.
	//   - `adminUser.lastname`: The last name of the admin user.
	//   - `adminUser.email`: The email of the admin user.
	//   - `adminUser.password`: The password of the admin user.
	//   - `appSecretKey`: It is flask app secret key. You can generate by `openssl rand -hex 32`.
	//   - `connection.sqlalchemyDatabaseUri`: It is the database connection URI. You can use the following format:
	//     - `postgresql://<username>:<password>@<host>:<port>/<database>`
	// +kubebuilder:validation:Required
	CredentialsSecret string `json:"credentialsSecret"`

	// +kubebuilder:validation:Optional
	ListenerClass string `json:"listenerClass,omitempty"`

	// +kubebuilder:validation:Optional
	VectorAggregatorConfigMapName string `json:"vectorAggregatorConfigMapName,omitempty"`
}

func (*ClusterConfigSpec) DeepCopy

func (in *ClusterConfigSpec) DeepCopy() *ClusterConfigSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterConfigSpec.

func (*ClusterConfigSpec) DeepCopyInto

func (in *ClusterConfigSpec) DeepCopyInto(out *ClusterConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ImageSpec

type ImageSpec struct {
	// +kubebuilder:validation:Optional
	Custom string `json:"custom,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default=quay.io/zncdatadev
	Repo string `json:"repo,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default="0.0.0-dev"
	PlatformVersion string `json:"platformVersion,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default="4.0.2"
	ProductVersion string `json:"productVersion,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=IfNotPresent
	PullPolicy corev1.PullPolicy `json:"pullPolicy,omitempty"`

	// +kubebuilder:validation:Optional
	PullSecretName string `json:"pullSecretName,omitempty"`
}

func (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSpec.

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoggingSpec

type LoggingSpec struct {
	// +kubebuilder:validation:Optional
	EnableVectorAgent bool `json:"enableVectorAgent,omitempty"`
	// +kubebuilder:validation:Optional
	Containers map[string]*apiv1alpha1.LoggingConfigSpec `json:"containers,omitempty"`
}

func (*LoggingSpec) DeepCopy

func (in *LoggingSpec) DeepCopy() *LoggingSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingSpec.

func (*LoggingSpec) DeepCopyInto

func (in *LoggingSpec) DeepCopyInto(out *LoggingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigOverridesSpec

type NodeConfigOverridesSpec struct {
}

func (*NodeConfigOverridesSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigOverridesSpec.

func (*NodeConfigOverridesSpec) DeepCopyInto

func (in *NodeConfigOverridesSpec) DeepCopyInto(out *NodeConfigOverridesSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfigSpec

type NodeConfigSpec struct {
	Affinity                *corev1.Affinity                     `json:"affinity,omitempty"`
	PodDisruptionBudget     *apiv1alpha1.PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"`
	GracefulShutdownTimeout string                               `json:"gracefulShutdownTimeoutSeconds,omitempty"`
	Logging                 *LoggingSpec                         `json:"logging,omitempty"`
	Resources               *apiv1alpha1.ResourcesSpec           `json:"resources,omitempty"`
}

func (*NodeConfigSpec) DeepCopy

func (in *NodeConfigSpec) DeepCopy() *NodeConfigSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigSpec.

func (*NodeConfigSpec) DeepCopyInto

func (in *NodeConfigSpec) DeepCopyInto(out *NodeConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeRoleGroupSpec

type NodeRoleGroupSpec struct {
	Replicas            *int32                               `json:"replicas,omitempty"`
	Config              *NodeConfigSpec                      `json:"config,omitempty"`
	PodOverride         *corev1.PodTemplateSpec              `json:"podOverride,omitempty"`
	PodDisruptionBudget *apiv1alpha1.PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"`
	CommandOverrides    []string                             `json:"commandOverrides,omitempty"`
	EnvOverrides        map[string]string                    `json:"envOverrides,omitempty"`
	ConfigOverrides     *NodeConfigOverridesSpec             `json:"configOverrides,omitempty"`
}

func (*NodeRoleGroupSpec) DeepCopy

func (in *NodeRoleGroupSpec) DeepCopy() *NodeRoleGroupSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeRoleGroupSpec.

func (*NodeRoleGroupSpec) DeepCopyInto

func (in *NodeRoleGroupSpec) DeepCopyInto(out *NodeRoleGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeSpec

type NodeSpec struct {
	RoleGroups          map[string]NodeRoleGroupSpec         `json:"roleGroups,omitempty"`
	Config              *NodeConfigSpec                      `json:"config,omitempty"`
	PodDisruptionBudget *apiv1alpha1.PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"`
	PodOverride         *corev1.PodTemplateSpec              `json:"podOverride,omitempty"`
	CommandOverrides    []string                             `json:"commandOverrides,omitempty"`
	EnvOverrides        []string                             `json:"envOverrides,omitempty"`
	ConfigOverrides     *NodeConfigOverridesSpec             `json:"configOverrides,omitempty"`
}

func (*NodeSpec) DeepCopy

func (in *NodeSpec) DeepCopy() *NodeSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSpec.

func (*NodeSpec) DeepCopyInto

func (in *NodeSpec) DeepCopyInto(out *NodeSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OidcSpec

type OidcSpec struct {
	// +kubebuilder:validation:Required
	ClientCredentialsSecret string `json:"clientCredentialsSecret"`

	// +kubebuilder:validation:Optional
	ExtraScopes []string `json:"extraScopes,omitempty"`
}

OidcSpec defines the OIDC spec.

func (*OidcSpec) DeepCopy

func (in *OidcSpec) DeepCopy() *OidcSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OidcSpec.

func (*OidcSpec) DeepCopyInto

func (in *OidcSpec) DeepCopyInto(out *OidcSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SupersetCluster

type SupersetCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SupersetClusterSpec   `json:"spec,omitempty"`
	Status SupersetClusterStatus `json:"status,omitempty"`
}

SupersetCluster is the Schema for the supersetclusters API

func (*SupersetCluster) DeepCopy

func (in *SupersetCluster) DeepCopy() *SupersetCluster

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SupersetCluster.

func (*SupersetCluster) DeepCopyInto

func (in *SupersetCluster) DeepCopyInto(out *SupersetCluster)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SupersetCluster) DeepCopyObject

func (in *SupersetCluster) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SupersetClusterList

type SupersetClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SupersetCluster `json:"items"`
}

SupersetClusterList contains a list of SupersetCluster

func (*SupersetClusterList) DeepCopy

func (in *SupersetClusterList) DeepCopy() *SupersetClusterList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SupersetClusterList.

func (*SupersetClusterList) DeepCopyInto

func (in *SupersetClusterList) DeepCopyInto(out *SupersetClusterList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SupersetClusterList) DeepCopyObject

func (in *SupersetClusterList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SupersetClusterSpec

type SupersetClusterSpec struct {
	Image            *ImageSpec                        `json:"image,omitempty"`
	ClusterConfig    *ClusterConfigSpec                `json:"clusterConfig"`
	ClusterOperation *apiv1alpha1.ClusterOperationSpec `json:"clusterOperation,omitempty"`
	Node             *NodeSpec                         `json:"node"`
}

SupersetClusterSpec defines the desired state of SupersetCluster

func (*SupersetClusterSpec) DeepCopy

func (in *SupersetClusterSpec) DeepCopy() *SupersetClusterSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SupersetClusterSpec.

func (*SupersetClusterSpec) DeepCopyInto

func (in *SupersetClusterSpec) DeepCopyInto(out *SupersetClusterSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SupersetClusterStatus

type SupersetClusterStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

SupersetClusterStatus defines the observed state of SupersetCluster

func (*SupersetClusterStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SupersetClusterStatus.

func (*SupersetClusterStatus) DeepCopyInto

func (in *SupersetClusterStatus) DeepCopyInto(out *SupersetClusterStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL