pod

package
v0.0.0-...-33a4775 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	TimezoneNameKey string = "name"
	TimezoneDataKey string = "data"
	TimezoneTZKey   string = "timezone"
)
View Source
const ActiveJWTKey = "-"

Variables

This section is empty.

Functions

func AppendAffinityWithRole

func AppendAffinityWithRole(p interfaces.PodCreator, a *core.PodAffinity, role string)

func AppendArchSelector

func AppendArchSelector(a *core.NodeAffinity, nodeSelectorForArch core.NodeSelectorTerm)

func AppendPodAntiAffinityDefault

func AppendPodAntiAffinityDefault(p interfaces.PodCreator, a *core.PodAntiAffinity)

func GenerateMemberEndpoint

func GenerateMemberEndpoint(services service.Inspector, apiObject meta.Object, spec api.DeploymentSpec, group api.ServerGroup, member api.MemberStatus) (string, error)

func GenerateMemberEndpointFromService

func GenerateMemberEndpointFromService(svc *core.Service, apiObject meta.Object, spec api.DeploymentSpec, group api.ServerGroup, member api.MemberStatus) (string, error)

func GetEncryptionFolderSecretName

func GetEncryptionFolderSecretName(name string) string

func GetEncryptionKey

func GetEncryptionKey(ctx context.Context, secrets generic.ReadClient[*core.Secret], name string) (string, []byte, bool, error)

func GetEncryptionKeyFromSecret

func GetEncryptionKeyFromSecret(keyfile *core.Secret) (string, []byte, error)

func GetTLSKeyfileSecretName

func GetTLSKeyfileSecretName(i Input) string

func GroupEncryptionSupported

func GroupEncryptionSupported(mode api.DeploymentMode, group api.ServerGroup) bool

func GroupSNISupported

func GroupSNISupported(spec api.DeploymentSpec, group api.ServerGroup) bool

func IsAuthenticated

func IsAuthenticated(i Input) bool

func IsEncryptionEnabled

func IsEncryptionEnabled(i Input) bool

func IsRuntimeTLSKeyfileUpdateSupported

func IsRuntimeTLSKeyfileUpdateSupported(i Input) bool

func IsTLSEnabled

func IsTLSEnabled(i Input) bool

func JWTSecretFolder

func JWTSecretFolder(name string) string

func MultiFileMode

func MultiFileMode(i Input) bool

func SetArchInAffinity

func SetArchInAffinity(a *core.Affinity, arch api.ArangoDeploymentArchitectureType)

func TimezoneSecret

func TimezoneSecret(name string) string

func VersionHasJWTSecretKeyfolder

func VersionHasJWTSecretKeyfolder(v driver.Version, enterprise bool) bool

Types

type Builder

type Builder interface {
	Args(i Input) k8sutil.OptionPairs
	Volumes(i Input) ([]core.Volume, []core.VolumeMount)
	Envs(i Input) []core.EnvVar
	Verify(i Input, cachedStatus interfaces.Inspector) error
}

func AutoUpgrade

func AutoUpgrade() Builder

func Encryption

func Encryption() Builder

func JWT

func JWT() Builder

func SNI

func SNI() Builder

func SNIGateway

func SNIGateway() Builder

func Security

func Security() Builder

func TLS

func TLS() Builder

func Timezone

func Timezone() Builder

func Topology

func Topology() Builder

func UpgradeDebug

func UpgradeDebug() Builder

func UpgradeVersionCheck

func UpgradeVersionCheck() Builder

type Input

type Input struct {
	ApiObject    meta.Object
	Deployment   deploymentApi.DeploymentSpec
	Status       deploymentApi.DeploymentStatus
	GroupSpec    deploymentApi.ServerGroupSpec
	Group        deploymentApi.ServerGroup
	Version      driver.Version
	Member       deploymentApi.MemberStatus
	ArangoMember deploymentApi.ArangoMember
	Enterprise   bool
	AutoUpgrade  bool
}

type Probe

type Probe struct {
	CanBeEnabled, EnabledByDefault bool
}

func LivenessSpec

func LivenessSpec(group api.ServerGroup) Probe

func ReadinessSpec

func ReadinessSpec(group api.ServerGroup) Probe

func StartupSpec

func StartupSpec(group api.ServerGroup) Probe

type Volumes

type Volumes interface {
	Append(b Builder, i Input)
	AddVolume(volumes ...core.Volume)
	AddVolumeMount(mounts ...core.VolumeMount)
	Volumes() []core.Volume
	VolumeMounts() []core.VolumeMount
}

func NewVolumes

func NewVolumes() Volumes

Jump to

Keyboard shortcuts

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