cluster

package
v0.0.0-...-e391bab Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Deployment

type Deployment interface {
	LeaseID() mtypes.LeaseID
	ManifestGroup() manifest.Group
}

Deployment interface defined with LeaseID and ManifestGroup methods

type EventsWatcher

type EventsWatcher interface {
	Shutdown()
	Done() <-chan struct{}
	ResultChan() <-chan *eventsv1.Event
	SendEvent(*eventsv1.Event) bool
}

EventsWatcher

func NewEventsFeed

func NewEventsFeed(ctx context.Context) EventsWatcher

type ExecResult

type ExecResult interface {
	ExitCode() int
}

type ForwardedPortStatus

type ForwardedPortStatus struct {
	Host         string                   `json:"host,omitempty"`
	Port         uint16                   `json:"port"`
	ExternalPort uint16                   `json:"externalPort"`
	Proto        manifest.ServiceProtocol `json:"proto"`
	Available    int32                    `json:"available"`
	Name         string                   `json:"name"`
}

type InventoryStatus

type InventoryStatus struct {
	Active    []atypes.ResourceUnits `json:"active"`
	Pending   []atypes.ResourceUnits `json:"pending"`
	Available []atypes.ResourceUnits `json:"available"`
	Error     error                  `json:"error"`
}

InventoryStatus stores active, pending and available units

type LeaseEvent

type LeaseEvent struct {
	Type                string           `json:"type" yaml:"type"`
	ReportingController string           `json:"reportingController,omitempty" yaml:"reportingController"`
	ReportingInstance   string           `json:"reportingInstance,omitempty" yaml:"reportingInstance"`
	Time                time.Time        `json:"time" yaml:"time"`
	Reason              string           `json:"reason" yaml:"reason"`
	Note                string           `json:"note" yaml:"note"`
	Object              LeaseEventObject `json:"object" yaml:"object"`
}

type LeaseEventObject

type LeaseEventObject struct {
	Kind      string `json:"kind" yaml:"kind"`
	Namespace string `json:"namespace" yaml:"namespace"`
	Name      string `json:"name" yaml:"name"`
}

type LeaseStatus

type LeaseStatus struct {
	Services       map[string]*ServiceStatus        `json:"services"`
	ForwardedPorts map[string][]ForwardedPortStatus `json:"forwarded_ports"` // Container services that are externally accessible
}

LeaseStatus includes list of services with their status

type Node

type Node interface {
	ID() string
	Available() atypes.ResourceUnits
	Allocateable() atypes.ResourceUnits
	Reserve(atypes.ResourceUnits) error
}

Node interface predefined with ID and Available methods

type Reservation

type Reservation interface {
	OrderID() mtypes.OrderID
	Resources() atypes.ResourceGroup
}

Reservation interface implements orders and resources

type ServiceLog

type ServiceLog struct {
	Name    string
	Stream  io.ReadCloser
	Scanner *bufio.Scanner
}

ServiceLog stores name, stream and scanner

type ServiceStatus

type ServiceStatus struct {
	Name      string   `json:"name"`
	Available int32    `json:"available"`
	Total     int32    `json:"total"`
	URIs      []string `json:"uris"`

	ObservedGeneration int64 `json:"observed_generation"`
	Replicas           int32 `json:"replicas"`
	UpdatedReplicas    int32 `json:"updated_replicas"`
	ReadyReplicas      int32 `json:"ready_replicas"`
	AvailableReplicas  int32 `json:"available_replicas"`
}

ServiceStatus stores the current status of service

type Status

type Status struct {
	Leases    uint32          `json:"leases"`
	Inventory InventoryStatus `json:"inventory"`
}

Status stores current leases and inventory statuses

Jump to

Keyboard shortcuts

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