endpointslice

package
v0.9.0-m2 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2021 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

© 2020 Red Hat, Inc. and others

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

© 2020 Red Hat, Inc. and others

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

© 2020 Red Hat, Inc. and others

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Controller

type Controller struct {
	// Indirection hook for unit tests to supply fake client sets
	NewClientset NewClientsetFunc
	// contains filtered or unexported fields
}

func NewController

func NewController(endpointSliceStore Store) *Controller

func (*Controller) IsHealthy added in v0.8.0

func (c *Controller) IsHealthy(name, namespace, clusterID string) bool

func (*Controller) Start

func (c *Controller) Start(kubeConfig *rest.Config) error

func (*Controller) Stop

func (c *Controller) Stop()

type Map

type Map struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

func NewMap

func NewMap() *Map

func (*Map) Get added in v0.8.0

func (m *Map) Get(key string) *endpointInfo

func (*Map) GetIPs

func (m *Map) GetIPs(hostname, cluster, namespace, name string, checkCluster func(string) bool) ([]string, bool)

func (*Map) Put

func (m *Map) Put(es *discovery.EndpointSlice)

func (*Map) Remove

func (m *Map) Remove(es *discovery.EndpointSlice)

type NewClientsetFunc added in v0.8.0

type NewClientsetFunc func(kubeConfig *rest.Config) (kubernetes.Interface, error)
var NewClientset NewClientsetFunc

NewClientset is an indirection hook for unit tests to supply fake client sets

type Store

type Store interface {
	Put(endpointSlice *discovery.EndpointSlice)

	Remove(endpointSlice *discovery.EndpointSlice)

	Get(key string) *endpointInfo
}

Jump to

Keyboard shortcuts

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