servicebuilder

package
v0.0.0-...-9fc8000 Latest Latest
Warning

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

Go to latest
Published: Mar 19, 2024 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ComponentTypes = struct {
	BatchEnsembler       string
	Enricher             string
	Ensembler            string
	Router               string
	FluentdLogger        string
	Secret               string
	ServiceAccountSecret string
	CacheVolume          string
	FiberConfig          string
	PluginsServer        string
	PDB                  string
}{
	BatchEnsembler: "batch-ensembler",
	Enricher:       "enricher",
	Ensembler:      "ensembler",
	Router:         "router",
	FluentdLogger:  "fluentd-logger",
	Secret:         "secret",
	CacheVolume:    "cache-volume",
	FiberConfig:    "fiber-config",
	PluginsServer:  "plugins-server",
	PDB:            "pdb",
}

Functions

func GetComponentName

func GetComponentName(routerVersion *models.RouterVersion, componentType string) string

func GetNamespace

func GetNamespace(project *mlp.Project) string

func NewPluginsServerService

func NewPluginsServerService(
	routerVersion *models.RouterVersion,
	project *mlp.Project,
) *cluster.KubernetesService

Types

type ClusterServiceBuilder

type ClusterServiceBuilder interface {
	NewEnricherService(
		ver *models.RouterVersion,
		project *mlp.Project,
		secretName string,
		knativeQueueProxyResourcePercentage int,
		userContainerCPULimitRequestFactor float64,
		userContainerMemoryLimitRequestFactor float64,
		initialScale *int,
	) (*cluster.KnativeService, error)
	NewEnsemblerService(
		ver *models.RouterVersion,
		project *mlp.Project,
		secretName string,
		knativeQueueProxyResourcePercentage int,
		userContainerCPULimitRequestFactor float64,
		userContainerMemoryLimitRequestFactor float64,
		initialScale *int,
	) (*cluster.KnativeService, error)
	NewRouterService(
		ver *models.RouterVersion,
		project *mlp.Project,
		envType string,
		secretName string,
		experimentConfig json.RawMessage,
		routerDefaults *config.RouterDefaults,
		sentryEnabled bool,
		sentryDSN string,
		knativeQueueProxyResourcePercentage int,
		userContainerCPULimitRequestFactor float64,
		userContainerMemoryLimitRequestFactor float64,
		initialScale *int,
	) (*cluster.KnativeService, error)
	NewFluentdService(
		routerVersion *models.RouterVersion,
		project *mlp.Project,
		secretName string,
		fluentdConfig *config.FluentdConfig,
	) *cluster.KubernetesService
	NewRouterEndpoint(
		routerVersion *models.RouterVersion,
		project *mlp.Project,
		versionEndpoint string,
	) (*cluster.VirtualService, error)
	NewSecret(
		routerVersion *models.RouterVersion,
		project *mlp.Project,
		routerServiceAccountKey string,
		enricherServiceAccountKey string,
		ensemblerServiceAccountKey string,
		expEngineServiceAccountKey string,
	) *cluster.Secret
	NewPodDisruptionBudget(
		routerVersion *models.RouterVersion,
		project *mlp.Project,
		componentType string,
		pdbConfig config.PodDisruptionBudgetConfig,
	) *cluster.PodDisruptionBudget
	GetRouterServiceName(ver *models.RouterVersion) string
}

ClusterServiceBuilder parses the Router Config to build a service definition compatible with the cluster package

func NewClusterServiceBuilder

func NewClusterServiceBuilder(
	cpuLimit resource.Quantity,
	memoryLimit resource.Quantity,
	maxAllowedReplica int,
	topologySpreadConstraints []corev1.TopologySpreadConstraint,
) ClusterServiceBuilder

NewClusterServiceBuilder creates a new service builder with the supplied configs for defaults

Jump to

Keyboard shortcuts

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