v1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2024 License: AGPL-3.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MaxConcurrentJobs int = 60
	ScheduleInterval      = 5 * time.Minute
)

Variables

This section is empty.

Functions

func MarshalFirstNonNilStructFieldToJSON

func MarshalFirstNonNilStructFieldToJSON(i any) (string, string, error)

func SyncContainers

func SyncContainers(ctx context.Context, db *database.Database, g *errgroup.Group, upsertPods <-chan interface{}, deletePods <-chan interface{})

SyncContainers consumes from the `upsertPods` and `deletePods` chans concurrently and schedules a job for each of the containers (drawn from `upsertPods`) that periodically syncs the container logs with the database. When pods are deleted, their IDs are streamed through the `deletePods` chan, and this fetches all the container IDs matching the respective pod ID from the database and initiates a container deletion stream that cleans up all container-related resources.

Types

type ConfigMap

type ConfigMap struct {
	Meta
	Id              types.Binary
	Immutable       types.Bool
	Data            []Data           `db:"-"`
	ConfigMapsData  []ConfigMapData  `db:"-"`
	Labels          []Label          `db:"-"`
	ConfigMapLabels []ConfigMapLabel `db:"-"`
}

func (*ConfigMap) Obtain

func (c *ConfigMap) Obtain(k8s kmetav1.Object)

func (*ConfigMap) Relations

func (c *ConfigMap) Relations() []database.Relation

type ConfigMapData

type ConfigMapData struct {
	ConfigMapId types.Binary
	DataId      types.Binary
}

type ConfigMapLabel

type ConfigMapLabel struct {
	ConfigMapId types.Binary
	LabelId     types.Binary
}

type Container

type Container struct {
	ContainerMeta
	Name           string
	Image          string
	CpuLimits      int64
	CpuRequests    int64
	MemoryLimits   int64
	MemoryRequests int64
	State          sql.NullString
	StateDetails   string
	Ready          types.Bool
	Started        types.Bool
	RestartCount   int32
	Devices        []ContainerDevice `db:"-"`
	Mounts         []ContainerMount  `db:"-"`
}

func (*Container) Relations

func (c *Container) Relations() []database.Relation

type ContainerDevice

type ContainerDevice struct {
	ContainerId types.Binary
	PodId       types.Binary
	Name        string
	Path        string
}

type ContainerLog

type ContainerLog struct {
	PodId       types.Binary `db:"pod_id"`
	ContainerId types.Binary `db:"container_id"`
	ContainerLogMeta

	Namespace     string `db:"-"`
	PodName       string `db:"-"`
	ContainerName string `db:"-"`
}

func (*ContainerLog) Upsert

func (cl *ContainerLog) Upsert() interface{}

Upsert implements the database.Upserter interface.

type ContainerLogMeta

type ContainerLogMeta struct {
	Logs       string          `db:"logs"`
	LastUpdate types.UnixMilli `db:"last_update"`
}

type ContainerMeta

type ContainerMeta struct {
	Id    types.Binary `db:"id"`
	PodId types.Binary `db:"pod_id"`
}

type ContainerMount

type ContainerMount struct {
	ContainerId types.Binary
	PodId       types.Binary
	VolumeName  string
	Path        string
	SubPath     sql.NullString
	ReadOnly    types.Bool
}

type CronJob

type CronJob struct {
	Meta
	Id                         types.Binary
	Schedule                   string
	Timezone                   string
	StartingDeadlineSeconds    int64
	ConcurrencyPolicy          string
	Suspend                    types.Bool
	SuccessfulJobsHistoryLimit int32
	FailedJobsHistoryLimit     int32
	Active                     int32
	LastScheduleTime           types.UnixMilli
	LastSuccessfulTime         types.UnixMilli
	Labels                     []Label        `db:"-"`
	CronJobLabels              []CronJobLabel `db:"-"`
}

func (*CronJob) Obtain

func (c *CronJob) Obtain(k8s kmetav1.Object)

func (*CronJob) Relations

func (c *CronJob) Relations() []database.Relation

type CronJobLabel

type CronJobLabel struct {
	CronJobId types.Binary
	LabelId   types.Binary
}

type DaemonSet

type DaemonSet struct {
	Meta
	Id                     types.Binary
	UpdateStrategy         string
	MinReadySeconds        int32
	DesiredNumberScheduled int32
	CurrentNumberScheduled int32
	NumberMisscheduled     int32
	NumberReady            int32
	UpdateNumberScheduled  int32
	NumberAvailable        int32
	NumberUnavailable      int32
	Conditions             []DaemonSetCondition `db:"-"`
	Labels                 []Label              `db:"-"`
	DaemonSetLabels        []DaemonSetLabel     `db:"-"`
}

func (*DaemonSet) Obtain

func (d *DaemonSet) Obtain(k8s kmetav1.Object)

func (*DaemonSet) Relations

func (d *DaemonSet) Relations() []database.Relation

type DaemonSetCondition

type DaemonSetCondition struct {
	DaemonSetId    types.Binary
	Type           string
	Status         string
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type DaemonSetLabel

type DaemonSetLabel struct {
	DaemonSetId types.Binary
	LabelId     types.Binary
}

type Data

type Data struct {
	Id    types.Binary
	Name  string
	Value string
}

type Deployment

type Deployment struct {
	Meta
	Id                      types.Binary
	DesiredReplicas         int32
	Strategy                string
	MinReadySeconds         int32
	ProgressDeadlineSeconds int32
	Paused                  types.Bool
	ActualReplicas          int32
	UpdatedReplicas         int32
	ReadyReplicas           int32
	AvailableReplicas       int32
	UnavailableReplicas     int32
	Conditions              []DeploymentCondition `db:"-"`
	Labels                  []Label               `db:"-"`
	DeploymentLabels        []DeploymentLabel     `db:"-"`
}

func (*Deployment) Obtain

func (d *Deployment) Obtain(k8s kmetav1.Object)

func (*Deployment) Relations

func (d *Deployment) Relations() []database.Relation

type DeploymentCondition

type DeploymentCondition struct {
	DeploymentId   types.Binary
	Type           string
	Status         string
	LastUpdate     types.UnixMilli
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type DeploymentLabel

type DeploymentLabel struct {
	DeploymentId types.Binary
	LabelId      types.Binary
}

type Endpoint

type Endpoint struct {
	Id              types.Binary
	EndpointSliceId types.Binary
	HostName        string
	NodeName        string
	Ready           types.Bool
	Serving         types.Bool
	Terminating     types.Bool
	Address         string
	PortName        string
	Protocol        string
	Port            int32
	AppProtocol     string
}

type EndpointSlice

type EndpointSlice struct {
	Meta
	Id                 types.Binary
	AddressType        string
	Endpoints          []Endpoint           `db:"-"`
	Labels             []Label              `db:"-"`
	EndpointLabels     []EndpointSliceLabel `db:"-"`
	EndpointTargetRefs []EndpointTargetRef  `db:"-"`
}

func (*EndpointSlice) Obtain

func (e *EndpointSlice) Obtain(k8s kmetav1.Object)

func (*EndpointSlice) Relations

func (e *EndpointSlice) Relations() []database.Relation

type EndpointSliceLabel

type EndpointSliceLabel struct {
	EndpointSliceId types.Binary
	LabelId         types.Binary
}

type EndpointTargetRef

type EndpointTargetRef struct {
	EndpointSliceId types.Binary
	Kind            sql.NullString
	Namespace       string
	Name            string
	Uid             ktypes.UID
	ApiVersion      string
	ResourceVersion string
}

type Event

type Event struct {
	Meta
	Id                  types.Binary
	ReportingController string
	ReportingInstance   string
	Action              string
	Reason              string
	Note                string
	Type                string
	ReferenceKind       string
	ReferenceNamespace  string
	ReferenceName       string
	FirstSeen           types.UnixMilli
	LastSeen            types.UnixMilli
	Count               int32
}

func (*Event) Obtain

func (e *Event) Obtain(k8s kmetav1.Object)

type Ingress

type Ingress struct {
	Meta
	Id                     types.Binary
	IngressTls             []IngressTls             `db:"-"`
	IngressBackendService  []IngressBackendService  `db:"-"`
	IngressBackendResource []IngressBackendResource `db:"-"`
	IngressRule            []IngressRule            `db:"-"`
}

func (*Ingress) Obtain

func (i *Ingress) Obtain(k8s kmetav1.Object)

func (*Ingress) Relations

func (i *Ingress) Relations() []database.Relation

type IngressBackendResource

type IngressBackendResource struct {
	ResourceId    types.Binary
	IngressId     types.Binary
	IngressRuleId types.Binary
	ApiGroup      sql.NullString
	Kind          string
	Name          string
}

type IngressBackendService

type IngressBackendService struct {
	ServiceId         types.Binary
	IngressId         types.Binary
	IngressRuleId     types.Binary
	ServiceName       string
	ServicePortName   string
	ServicePortNumber int32
}

type IngressRule

type IngressRule struct {
	Id        types.Binary
	BackendId types.Binary
	IngressId types.Binary
	Host      string
	Path      string
	PathType  sql.NullString
}

type IngressTls

type IngressTls struct {
	IngressId types.Binary
	TlsHost   string
	TlsSecret string
}

type Job

type Job struct {
	Meta
	Id                      types.Binary
	Parallelism             sql.NullInt32
	Completions             sql.NullInt32
	ActiveDeadlineSeconds   sql.NullInt64
	BackoffLimit            sql.NullInt32
	TtlSecondsAfterFinished sql.NullInt32
	CompletionMode          sql.NullString
	Suspend                 types.Bool
	StartTime               types.UnixMilli
	CompletionTime          types.UnixMilli
	Active                  int32
	Succeeded               int32
	Failed                  int32
	Conditions              []JobCondition `db:"-"`
	Labels                  []Label        `db:"-"`
	JobLabels               []JobLabel     `db:"-"`
}

func (*Job) Obtain

func (j *Job) Obtain(k8s kmetav1.Object)

func (*Job) Relations

func (j *Job) Relations() []database.Relation

type JobCondition

type JobCondition struct {
	JobId          types.Binary
	Type           string
	Status         string
	LastProbe      types.UnixMilli
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type JobLabel

type JobLabel struct {
	JobId   types.Binary
	LabelId types.Binary
}

type Label

type Label struct {
	Id    types.Binary
	Name  string
	Value string
}

type Meta

type Meta struct {
	Uid             ktypes.UID
	Namespace       string
	Name            string
	ResourceVersion string
	Created         types.UnixMilli
}

func (*Meta) GetAnnotations

func (m *Meta) GetAnnotations() map[string]string

func (*Meta) GetCreationTimestamp

func (m *Meta) GetCreationTimestamp() kmetav1.Time

func (*Meta) GetDeletionGracePeriodSeconds

func (m *Meta) GetDeletionGracePeriodSeconds() *int64

func (*Meta) GetDeletionTimestamp

func (m *Meta) GetDeletionTimestamp() *kmetav1.Time

func (*Meta) GetFinalizers

func (m *Meta) GetFinalizers() []string

func (*Meta) GetGenerateName

func (m *Meta) GetGenerateName() string

func (*Meta) GetGeneration

func (m *Meta) GetGeneration() int64

func (*Meta) GetLabels

func (m *Meta) GetLabels() map[string]string

func (*Meta) GetManagedFields

func (m *Meta) GetManagedFields() []kmetav1.ManagedFieldsEntry

func (*Meta) GetName

func (m *Meta) GetName() string

func (*Meta) GetNamespace

func (m *Meta) GetNamespace() string

func (*Meta) GetOwnerReferences

func (m *Meta) GetOwnerReferences() []kmetav1.OwnerReference

func (*Meta) GetResourceVersion

func (m *Meta) GetResourceVersion() string
func (m *Meta) GetSelfLink() string

func (*Meta) GetUID

func (m *Meta) GetUID() ktypes.UID

func (*Meta) ObtainMeta

func (m *Meta) ObtainMeta(k8s kmetav1.Object)

func (*Meta) SetAnnotations

func (m *Meta) SetAnnotations(_ map[string]string)

func (*Meta) SetCreationTimestamp

func (m *Meta) SetCreationTimestamp(kmetav1.Time)

func (*Meta) SetDeletionGracePeriodSeconds

func (m *Meta) SetDeletionGracePeriodSeconds(*int64)

func (*Meta) SetDeletionTimestamp

func (m *Meta) SetDeletionTimestamp(*kmetav1.Time)

func (*Meta) SetFinalizers

func (m *Meta) SetFinalizers([]string)

func (*Meta) SetGenerateName

func (m *Meta) SetGenerateName(string)

func (*Meta) SetGeneration

func (m *Meta) SetGeneration(int64)

func (*Meta) SetLabels

func (m *Meta) SetLabels(map[string]string)

func (*Meta) SetManagedFields

func (m *Meta) SetManagedFields([]kmetav1.ManagedFieldsEntry)

func (*Meta) SetName

func (m *Meta) SetName(string)

func (*Meta) SetNamespace

func (m *Meta) SetNamespace(string)

func (*Meta) SetOwnerReferences

func (m *Meta) SetOwnerReferences([]kmetav1.OwnerReference)

func (*Meta) SetResourceVersion

func (m *Meta) SetResourceVersion(string)
func (m *Meta) SetSelfLink(string)

func (*Meta) SetUID

func (m *Meta) SetUID(ktypes.UID)

type Namespace

type Namespace struct {
	Meta
	Id              types.Binary
	Phase           string
	Conditions      []NamespaceCondition `db:"-"`
	Labels          []Label              `db:"-"`
	NamespaceLabels []NamespaceLabel     `db:"-"`
}

func (*Namespace) Obtain

func (n *Namespace) Obtain(k8s kmetav1.Object)

func (*Namespace) Relations

func (n *Namespace) Relations() []database.Relation

type NamespaceCondition

type NamespaceCondition struct {
	NamespaceId    types.Binary
	Type           string
	Status         string
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type NamespaceLabel

type NamespaceLabel struct {
	NamespaceId types.Binary
	LabelId     types.Binary
}

type Node

type Node struct {
	Meta
	Id                types.Binary
	PodCIDR           string
	NumIps            int64
	Unschedulable     types.Bool
	Ready             types.Bool
	CpuCapacity       int64
	CpuAllocatable    int64
	MemoryCapacity    int64
	MemoryAllocatable int64
	PodCapacity       int64
	Conditions        []NodeCondition `db:"-"`
	Volumes           []NodeVolume    `db:"-"`
	Labels            []Label         `db:"-"`
	NodeLabels        []NodeLabel     `db:"-"`
}

func (*Node) Obtain

func (n *Node) Obtain(k8s kmetav1.Object)

func (*Node) Relations

func (n *Node) Relations() []database.Relation

type NodeCondition

type NodeCondition struct {
	NodeId         types.Binary
	Type           string
	Status         string
	LastHeartbeat  types.UnixMilli
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type NodeLabel

type NodeLabel struct {
	NodeId  types.Binary
	LabelId types.Binary
}

type NodeVolume

type NodeVolume struct {
	NodeId types.Binary

	DevicePath string
	Mounted    types.Bool
	// contains filtered or unexported fields
}

type PersistentVolume

type PersistentVolume struct {
	Meta
	Id               types.Binary
	AccessModes      types.Bitmask[kpersistentVolumeAccessModesSize]
	Capacity         int64
	ReclaimPolicy    string
	StorageClass     string
	VolumeMode       sql.NullString
	VolumeSourceType string
	VolumeSource     string
	Phase            string
	Reason           string
	Message          string
	Claim            PersistentVolumeClaimRef `db:"-"`
}

func (*PersistentVolume) Obtain

func (p *PersistentVolume) Obtain(k8s kmetav1.Object)

func (*PersistentVolume) Relations

func (p *PersistentVolume) Relations() []database.Relation

type PersistentVolumeClaimRef

type PersistentVolumeClaimRef struct {
	PersistentVolumeId types.Binary
	Kind               string
	Name               string
	Uid                ktypes.UID
}

type Pod

type Pod struct {
	Meta
	Id                types.Binary
	NodeName          string
	NominatedNodeName string
	Ip                string
	Phase             string
	CpuLimits         int64
	CpuRequests       int64
	MemoryLimits      int64
	MemoryRequests    int64
	Reason            string
	Message           string
	Qos               string
	RestartPolicy     string
	Conditions        []PodCondition `db:"-"`
	Containers        []Container    `db:"-"`
	Owners            []PodOwner     `db:"-"`
	Labels            []Label        `db:"-"`
	PodLabels         []PodLabel     `db:"-"`
	Pvcs              []PodPvc       `db:"-"`
	Volumes           []PodVolume    `db:"-"`
	// contains filtered or unexported fields
}

func (*Pod) Obtain

func (p *Pod) Obtain(k8s kmetav1.Object)

func (*Pod) Relations

func (p *Pod) Relations() []database.Relation

type PodCondition

type PodCondition struct {
	PodId          types.Binary
	Type           string
	Status         string
	LastProbe      types.UnixMilli
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type PodFactory

type PodFactory struct {
	// contains filtered or unexported fields
}

func NewPodFactory

func NewPodFactory(clientset *kubernetes.Clientset) *PodFactory

func (*PodFactory) New

func (f *PodFactory) New() Resource

type PodLabel

type PodLabel struct {
	PodId   types.Binary
	LabelId types.Binary
}

type PodMetrics

type PodMetrics struct {
	Namespace             string          `db:"namespace"`
	PodName               string          `db:"pod_name"`
	ContainerName         string          `db:"container_name"`
	Timestamp             types.UnixMilli `db:"timestamp"`
	Duration              time.Duration   `db:"duration"`
	CPUUsage              float64         `db:"cpu_usage"`
	MemoryUsage           float64         `db:"memory_usage"`
	StorageUsage          float64         `db:"storage_usage"`
	EphemeralStorageUsage float64         `db:"ephemeral_storage_usage"`
}

type PodOwner

type PodOwner struct {
	PodId              types.Binary
	Kind               string
	Name               string
	Uid                ktypes.UID
	Controller         types.Bool
	BlockOwnerDeletion types.Bool
}

type PodPvc

type PodPvc struct {
	PodId      types.Binary
	VolumeName string
	ClaimName  string
	ReadOnly   types.Bool
}

type PodVolume

type PodVolume struct {
	PodId      types.Binary
	VolumeName string
	Type       string
	Source     string
}

type Pvc

type Pvc struct {
	Meta
	Id                 types.Binary
	DesiredAccessModes types.Bitmask[kpersistentVolumeAccessModesSize]
	ActualAccessModes  types.Bitmask[kpersistentVolumeAccessModesSize]
	MinimumCapacity    sql.NullInt64
	ActualCapacity     int64
	Phase              string
	VolumeName         string
	VolumeMode         sql.NullString
	StorageClass       sql.NullString
	Conditions         []PvcCondition `db:"-"`
	Labels             []Label        `db:"-"`
	PvcLabels          []PvcLabel     `db:"-"`
}

func (*Pvc) Obtain

func (p *Pvc) Obtain(k8s kmetav1.Object)

func (*Pvc) Relations

func (p *Pvc) Relations() []database.Relation

type PvcCondition

type PvcCondition struct {
	PvcId          types.Binary
	Type           string
	Status         string
	LastProbe      types.UnixMilli
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type PvcLabel

type PvcLabel struct {
	PvcId   types.Binary
	LabelId types.Binary
}

type ReplicaSet

type ReplicaSet struct {
	Meta
	Id                   types.Binary
	DesiredReplicas      int32
	MinReadySeconds      int32
	ActualReplicas       int32
	FullyLabeledReplicas int32
	ReadyReplicas        int32
	AvailableReplicas    int32
	Conditions           []ReplicaSetCondition `db:"-"`
	Owners               []ReplicaSetOwner     `db:"-"`
	Labels               []Label               `db:"-"`
	ReplicaSetLabels     []ReplicaSetLabel     `db:"-"`
}

func (*ReplicaSet) Obtain

func (r *ReplicaSet) Obtain(k8s kmetav1.Object)

func (*ReplicaSet) Relations

func (r *ReplicaSet) Relations() []database.Relation

type ReplicaSetCondition

type ReplicaSetCondition struct {
	ReplicaSetId   types.Binary
	Type           string
	Status         string
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type ReplicaSetLabel

type ReplicaSetLabel struct {
	ReplicaSetId types.Binary
	LabelId      types.Binary
}

type ReplicaSetOwner

type ReplicaSetOwner struct {
	ReplicaSetId       types.Binary
	Kind               string
	Name               string
	Uid                ktypes.UID
	Controller         types.Bool
	BlockOwnerDeletion types.Bool
}

type Resource

type Resource interface {
	kmetav1.Object
	Obtain(k8s kmetav1.Object)
}

func NewConfigMap

func NewConfigMap() Resource

func NewCronJob

func NewCronJob() Resource

func NewDaemonSet

func NewDaemonSet() Resource

func NewDeployment

func NewDeployment() Resource

func NewEndpointSlice

func NewEndpointSlice() Resource

func NewEvent

func NewEvent() Resource

func NewIngress

func NewIngress() Resource

func NewJob

func NewJob() Resource

func NewNamespace

func NewNamespace() Resource

func NewNode

func NewNode() Resource

func NewPersistentVolume

func NewPersistentVolume() Resource

func NewPvc

func NewPvc() Resource

func NewReplicaSet

func NewReplicaSet() Resource

func NewSecret

func NewSecret() Resource

func NewService

func NewService() Resource

func NewStatefulSet

func NewStatefulSet() Resource

type Secret

type Secret struct {
	Meta
	Id           types.Binary
	Type         string
	Immutable    types.Bool
	Data         []Data        `db:"-"`
	SecretData   []SecretData  `db:"-"`
	Labels       []Label       `db:"-"`
	SecretLabels []SecretLabel `db:"-"`
}

func (*Secret) Obtain

func (s *Secret) Obtain(k8s kmetav1.Object)

func (*Secret) Relations

func (s *Secret) Relations() []database.Relation

type SecretData

type SecretData struct {
	SecretId types.Binary
	DataId   types.Binary
}

type SecretLabel

type SecretLabel struct {
	SecretId types.Binary
	LabelId  types.Binary
}

type Selector

type Selector struct {
	Id    types.Binary
	Name  string
	Value string
}

type Service

type Service struct {
	Meta
	Id                            types.Binary
	Type                          string
	ClusterIP                     string
	ClusterIPs                    string
	ExternalIPs                   string
	SessionAffinity               string
	ExternalName                  string
	ExternalTrafficPolicy         sql.NullString
	HealthCheckNodePort           int32
	PublishNotReadyAddresses      types.Bool
	IpFamilies                    string
	IpFamilyPolicy                string
	AllocateLoadBalancerNodePorts types.Bool
	LoadBalancerClass             string
	InternalTrafficPolicy         string
	Selectors                     []Selector         `db:"-"`
	ServiceSelectors              []ServiceSelector  `db:"-"`
	Ports                         []ServicePort      `db:"-"`
	Conditions                    []ServiceCondition `db:"-"`
	Labels                        []Label            `db:"-"`
	ServiceLabels                 []ServiceLabel     `db:"-"`
}

func (*Service) Obtain

func (s *Service) Obtain(k8s kmetav1.Object)

func (*Service) Relations

func (s *Service) Relations() []database.Relation

type ServiceCondition

type ServiceCondition struct {
	ServiceId          types.Binary
	Type               string
	Status             string
	ObservedGeneration int64
	LastTransition     types.UnixMilli
	Reason             string
	Message            string
}

type ServiceLabel

type ServiceLabel struct {
	ServiceId types.Binary
	LabelId   types.Binary
}

type ServicePort

type ServicePort struct {
	ServiceId   types.Binary
	Name        string
	Protocol    string
	AppProtocol string
	Port        int32
	TargetPort  string
	NodePort    int32
}

type ServiceSelector

type ServiceSelector struct {
	ServiceId  types.Binary
	SelectorId types.Binary
}

type StatefulSet

type StatefulSet struct {
	Meta
	Id                                              types.Binary
	DesiredReplicas                                 int32
	ServiceName                                     string
	PodManagementPolicy                             string
	UpdateStrategy                                  string
	MinReadySeconds                                 int32
	PersistentVolumeClaimRetentionPolicyWhenDeleted string
	PersistentVolumeClaimRetentionPolicyWhenScaled  string
	Ordinals                                        int32
	ActualReplicas                                  int32
	ReadyReplicas                                   int32
	CurrentReplicas                                 int32
	UpdatedReplicas                                 int32
	AvailableReplicas                               int32
	Conditions                                      []StatefulSetCondition `db:"-"`
	Labels                                          []Label                `db:"-"`
	StatefulSetLabels                               []StatefulSetLabel     `db:"-"`
}

func (*StatefulSet) Obtain

func (s *StatefulSet) Obtain(k8s kmetav1.Object)

func (*StatefulSet) Relations

func (s *StatefulSet) Relations() []database.Relation

type StatefulSetCondition

type StatefulSetCondition struct {
	StatefulSetId  types.Binary
	Type           string
	Status         string
	LastTransition types.UnixMilli
	Reason         string
	Message        string
}

type StatefulSetLabel

type StatefulSetLabel struct {
	StatefulSetId types.Binary
	LabelId       types.Binary
}

Jump to

Keyboard shortcuts

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