v1alpha1

package
v0.0.0-...-2679b76 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdminGlobal

type AdminGlobal struct {
	ImageRegistry    string   `json:"imageRegistry"`
	ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
}

type AdminMeta

type AdminMeta struct {
	BaseMeta
}

type AdminSpec

type AdminSpec struct {
	Image              *Image              `json:"image,omitempty"`
	Replicas           uint32              `json:"replicas"`
	Global             *AdminGlobal        `json:"global,omitempty"`
	Rbac               *Rbac               `json:"rbac,omitempty"`
	ServiceAccount     *ServiceAccount     `json:"serviceAccount,omitempty"`
	ImagePullSecrets   []string            `json:"imagePullSecrets,omitempty"`
	Autoscaling        *Autoscaling        `json:"autoscaling,omitempty"`
	DeploymentStrategy *DeploymentStrategy `json:"deploymentStrategy,omitempty"`
	corev1.ContainerImage
}

type Autoscaling

type Autoscaling struct {
	Enabled      bool              `json:"enabled,omitempty"`
	MinReplicas  uint32            `json:"minReplicas,omitempty"`
	MaxReplicas  uint32            `json:"maxReplicas,omitempty"`
	TargetCPU    uint32            `json:"targetCPU,omitempty"`
	TargetMemory uint32            `json:"targetMemory,omitempty"`
	Behavior     map[string]string `json:"behavior,omitempty"`
}

type BaseMeta

type BaseMeta struct {
	Enabled bool `json:"enabled,omitempty"`
}

type DeploymentStrategy

type DeploymentStrategy struct {
	Type string `json:"type"`
}

type DubboComponentsMeta

type DubboComponentsMeta struct {
	Admin      *AdminMeta      `json:"admin,omitempty"`
	Grafana    *GrafanaMeta    `json:"grafana,omitempty"`
	Nacos      *NacosMeta      `json:"nacos,omitempty"`
	Zookeeper  *ZookeeperMeta  `json:"zookeeper,omitempty"`
	Prometheus *PrometheusMeta `json:"prometheus,omitempty"`
	Skywalking *SkywalkingMeta `json:"skywalking,omitempty"`
	Zipkin     *ZipkinMeta     `json:"zipkin,omitempty"`
}

func (*DubboComponentsMeta) IsAdminEnabled

func (dcm *DubboComponentsMeta) IsAdminEnabled() bool

func (*DubboComponentsMeta) IsGrafanaEnabled

func (dcm *DubboComponentsMeta) IsGrafanaEnabled() bool

func (*DubboComponentsMeta) IsNacosEnabled

func (dcm *DubboComponentsMeta) IsNacosEnabled() bool

func (*DubboComponentsMeta) IsPrometheusEnabled

func (dcm *DubboComponentsMeta) IsPrometheusEnabled() bool

func (*DubboComponentsMeta) IsSkywalkingEnabled

func (dcm *DubboComponentsMeta) IsSkywalkingEnabled() bool

func (*DubboComponentsMeta) IsZipkinEnabled

func (dcm *DubboComponentsMeta) IsZipkinEnabled() bool

func (*DubboComponentsMeta) IsZookeeperEnabled

func (dcm *DubboComponentsMeta) IsZookeeperEnabled() bool

type DubboComponentsSpec

type DubboComponentsSpec struct {
	Admin      *AdminSpec      `json:"admin,omitempty"`
	Grafana    *GrafanaSpec    `json:"grafana,omitempty"`
	Nacos      *NacosSpec      `json:"nacos,omitempty"`
	Zookeeper  *ZookeeperSpec  `json:"zookeeper,omitempty"`
	Prometheus *PrometheusSpec `json:"prometheus,omitempty"`
	Skywalking *SkywalkingSpec `json:"skywalking,omitempty"`
	Zipkin     *ZipkinSpec     `json:"zipkin,omitempty"`
}

type DubboConfig

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

	Spec   *DubboConfigSpec   `json:"spec,omitempty"`
	Status *DubboConfigStatus `json:"status,omitempty"`
}

+kubebuilder:subresource:status +kubebuilder:object:root=true DubboConfig describes configuration for DubboOperator

func (*DubboConfig) GetProfile

func (do *DubboConfig) GetProfile() string

type DubboConfigList

type DubboConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []DubboConfig `json:"items"`
}

DubboConfigList is a list of DubboConfig resources

type DubboConfigSpec

type DubboConfigSpec struct {
	ProfilePath    string               `json:"profilePath,omitempty"`
	Profile        string               `json:"profile,omitempty"`
	ChartPath      string               `json:"chartPath,omitempty"`
	Namespace      string               `json:"namespace,omitempty"`
	ComponentsMeta *DubboComponentsMeta `json:"componentsMeta,omitempty"`
	Components     *DubboComponentsSpec `json:"components,omitempty"`
}

func (*DubboConfigSpec) IsAdminEnabled

func (dcs *DubboConfigSpec) IsAdminEnabled() bool

func (*DubboConfigSpec) IsGrafanaEnabled

func (dcs *DubboConfigSpec) IsGrafanaEnabled() bool

func (*DubboConfigSpec) IsNacosEnabled

func (dcs *DubboConfigSpec) IsNacosEnabled() bool

func (*DubboConfigSpec) IsPrometheusEnabled

func (dcs *DubboConfigSpec) IsPrometheusEnabled() bool

func (*DubboConfigSpec) IsSkywalkingEnabled

func (dcs *DubboConfigSpec) IsSkywalkingEnabled() bool

func (*DubboConfigSpec) IsZipkinEnabled

func (dcs *DubboConfigSpec) IsZipkinEnabled() bool

func (*DubboConfigSpec) IsZookeeperEnabled

func (dcs *DubboConfigSpec) IsZookeeperEnabled() bool

type DubboConfigStatus

type DubboConfigStatus struct{}

type Egress

type Egress struct {
	Enabled bool     `json:"enabled,omitempty"`
	Ports   []uint32 `json:"ports,omitempty"`
}

type ExtraPath

type ExtraPath struct {
	Path     string               `json:"path,omitempty"`
	PathType netv1.PathType       `json:"pathType,omitempty"`
	Backend  netv1.IngressBackend `json:"backend,omitempty"`
}

type GrafanaMeta

type GrafanaMeta struct {
	BaseMeta
	RemoteMeta
}

type GrafanaSpec

type GrafanaSpec map[string]any

func (*GrafanaSpec) DeepCopyInto

func (in *GrafanaSpec) DeepCopyInto(out *GrafanaSpec)

type Image

type Image struct {
	Registry    string   `json:"registry"`
	Tag         string   `json:"tag"`
	Debug       bool     `json:"debug"`
	PullPolicy  string   `json:"pullPolicy"`
	PullSecrets []string `json:"pullSecrets,omitempty"`
}

type Ingress

type Ingress struct {
	Enabled     bool                `json:"enabled,omitempty"`
	Annotations map[string]string   `json:"annotations,omitempty"`
	Labels      map[string]string   `json:"labels,omitempty"`
	Path        string              `json:"path,omitempty"`
	PathType    netv1.PathType      `json:"pathType,omitempty"`
	Hosts       []string            `json:"hosts,omitempty"`
	ExtraPaths  []*ExtraPath        `json:"extraPaths,omitempty"`
	Tls         []*netv1.IngressTLS `json:"tls,omitempty"`
}

type Mode

type Mode string
const (
	Cluster    Mode = "cluster"
	Standalone Mode = "standalone"
)

type NacosGlobal

type NacosGlobal struct {
	Mode Mode `json:"mode,omitempty"`
}

type NacosImage

type NacosImage struct {
	Registry   string `json:"registry,omitempty"`
	Repository string `json:"repository,omitempty"`
	Tag        string `json:"tag,omitempty"`
	PullPolicy string `json:"pullPolicy,omitempty"`
}

type NacosMeta

type NacosMeta struct {
	BaseMeta
}

type NacosPersistence

type NacosPersistence struct {
	Enabled          bool                                `json:"enabled,omitempty"`
	AccessModes      []corev1.PersistentVolumeAccessMode `json:"accessModes,omitempty"`
	StorageClassName string                              `json:"storageClassName,omitempty"`
	Size             *resource.Quantity                  `json:"size,omitempty"`
	// todo: need to reconcile between this struct and values.yaml
	ClaimName string                       `json:"claimName,omitempty"`
	EmptyDir  *corev1.EmptyDirVolumeSource `json:"emptyDir,omitempty"`
}

type NacosPlugin

type NacosPlugin struct {
	Enable bool              `json:"enable,omitempty"`
	Image  *NacosPluginImage `json:"image,omitempty"`
}

type NacosPluginImage

type NacosPluginImage struct {
	Repository string `json:"repository,omitempty"`
	Tag        string `json:"tag,omitempty"`
	PullPolicy string `json:"pullPolicy,omitempty"`
}

type NacosService

type NacosService struct {
	Name                     string             `json:"name,omitempty"`
	Type                     corev1.ServiceType `json:"type,omitempty"`
	Port                     uint32             `json:"port,omitempty"`
	NodePort                 uint32             `json:"nodePort,omitempty"`
	ClusterIP                string             `json:"clusterIP,omitempty"`
	LoadBalancerIP           string             `json:"loadBalancerIP,omitempty"`
	LoadBalancerSourceRanges string             `json:"loadBalancerSourceRanges,omitempty"`
	ExternalIPs              string             `json:"externalIPs,omitempty"`
}

type NacosSpec

type NacosSpec struct {
	Global              *NacosGlobal                  `json:"global,omitempty"`
	Image               *NacosImage                   `json:"image,omitempty"`
	Plugin              *NacosPlugin                  `json:"plugin,omitempty"`
	Replicas            uint32                        `json:"replicas,omitempty"`
	DomainName          string                        `json:"domainName,omitempty"`
	Storage             *NacosStorage                 `json:"storage,omitempty"`
	Service             *NacosService                 `json:"service,omitempty"`
	Persistence         *NacosPersistence             `json:"persistence,omitempty"`
	PodDisruptionBudget *policyv1.PodDisruptionBudget `json:"podDisruptionBudget,omitempty"`
	Ingress             *Ingress                      `json:"ingress,omitempty"`
	NetworkPolicy       *NetworkPolicy                `json:"networkPolicy,omitempty"`
}

type NacosStorage

type NacosStorage struct {
	Type string          `json:"type,omitempty"`
	Db   *NacosStorageDb `json:"db,omitempty"`
}

type NacosStorageDb

type NacosStorageDb struct {
	Host     string `json:"host,omitempty"`
	Name     string `json:"name,omitempty"`
	Port     uint32 `json:"port,omitempty"`
	Username string `json:"username,omitempty"`
	Password string `json:"password,omitempty"`
	Param    string `json:"param,omitempty"`
}

type NetworkPolicy

type NetworkPolicy struct {
	Enabled bool    `json:"enabled,omitempty"`
	Ingress bool    `json:"ingress,omitempty"`
	Egress  *Egress `json:"egress,omitempty"`
}

type PrometheusMeta

type PrometheusMeta struct {
	BaseMeta
	RemoteMeta
}

type PrometheusSpec

type PrometheusSpec map[string]any

func (*PrometheusSpec) DeepCopyInto

func (in *PrometheusSpec) DeepCopyInto(out *PrometheusSpec)

type Rbac

type Rbac struct {
	Enabled    bool `json:"enabled"`
	PspEnabled bool `json:"pspEnabled"`
}

type RemoteMeta

type RemoteMeta struct {
	RepoURL string `json:"repoURL,omitempty"`
	Version string `json:"version,omitempty"`
}

type ServiceAccount

type ServiceAccount struct {
	Enabled     bool              `json:"enabled"`
	Name        map[string]string `json:"name,omitempty"`
	NameTest    map[string]string `json:"nameTest,omitempty"`
	Labels      map[string]string `json:"labels,omitempty"`
	Annotations map[string]string `json:"annotations,omitempty"`
}

type SkywalkingMeta

type SkywalkingMeta struct {
	BaseMeta
	RemoteMeta
}

type SkywalkingSpec

type SkywalkingSpec map[string]any

func (*SkywalkingSpec) DeepCopyInto

func (in *SkywalkingSpec) DeepCopyInto(out *SkywalkingSpec)

type ZipkinMeta

type ZipkinMeta struct {
	BaseMeta
	RemoteMeta
}

type ZipkinSpec

type ZipkinSpec map[string]any

func (*ZipkinSpec) DeepCopyInto

func (in *ZipkinSpec) DeepCopyInto(out *ZipkinSpec)

type ZookeeperMeta

type ZookeeperMeta struct {
	BaseMeta
	RemoteMeta
}

type ZookeeperSpec

type ZookeeperSpec map[string]any

func (*ZookeeperSpec) DeepCopyInto

func (in *ZookeeperSpec) DeepCopyInto(out *ZookeeperSpec)

Jump to

Keyboard shortcuts

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