smi

package
v0.8.0-rc.2 Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2021 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Overview

Package smi is a generated GoMock package.

Package smi implements the Service Mesh Interface (SMI) kubernetes client to observe and retrieve information regarding SMI traffic resources.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

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

Client is a struct for all components necessary to connect to and maintain state of a Kubernetes cluster.

func (*Client) GetAnnouncementsChannel

func (c *Client) GetAnnouncementsChannel() <-chan a.Announcement

GetAnnouncementsChannel returns the announcement channel for the SMI client.

func (*Client) GetTCPRoute added in v0.7.0

func (c *Client) GetTCPRoute(namespacedName string) *smiSpecs.TCPRoute

GetTCPRoute returns an SMI TCPRoute resource given its name of the form <namespace>/<name>

func (*Client) ListHTTPTrafficSpecs

func (c *Client) ListHTTPTrafficSpecs() []*smiSpecs.HTTPRouteGroup

ListHTTPTrafficSpecs lists SMI HTTPRouteGroup resources

func (*Client) ListServiceAccounts

func (c *Client) ListServiceAccounts() []service.K8sServiceAccount

ListServiceAccounts lists ServiceAccounts specified in SMI TrafficTarget resources

func (*Client) ListTCPTrafficSpecs added in v0.4.0

func (c *Client) ListTCPTrafficSpecs() []*smiSpecs.TCPRoute

ListTCPTrafficSpecs lists SMI TCPRoute resources

func (*Client) ListTrafficSplits

func (c *Client) ListTrafficSplits() []*smiSplit.TrafficSplit

ListTrafficSplits implements mesh.MeshSpec by returning the list of traffic splits.

func (*Client) ListTrafficTargets

func (c *Client) ListTrafficTargets() []*smiAccess.TrafficTarget

ListTrafficTargets implements mesh.Topology by returning the list of traffic targets.

type MeshSpec

type MeshSpec interface {
	// ListTrafficSplits lists SMI TrafficSplit resources
	ListTrafficSplits() []*split.TrafficSplit

	// ListServiceAccounts lists ServiceAccount resources specified in SMI TrafficTarget resources
	ListServiceAccounts() []service.K8sServiceAccount

	// ListHTTPTrafficSpecs lists SMI HTTPRouteGroup resources
	ListHTTPTrafficSpecs() []*spec.HTTPRouteGroup

	// ListTCPTrafficSpecs lists SMI TCPRoute resources
	ListTCPTrafficSpecs() []*spec.TCPRoute

	// GetTCPRoute returns an SMI TCPRoute resource given its name of the form <namespace>/<name>
	GetTCPRoute(string) *spec.TCPRoute

	// ListTrafficTargets lists SMI TrafficTarget resources
	ListTrafficTargets() []*access.TrafficTarget
}

MeshSpec is an interface declaring functions, which provide the specs for a service mesh declared with SMI.

func NewFakeMeshSpecClient

func NewFakeMeshSpecClient() MeshSpec

NewFakeMeshSpecClient creates a fake Mesh Spec used for testing.

func NewMeshSpecClient

func NewMeshSpecClient(smiKubeConfig *rest.Config, kubeClient kubernetes.Interface, osmNamespace string, kubeController k8s.Controller, stop chan struct{}) (MeshSpec, error)

NewMeshSpecClient implements mesh.MeshSpec and creates the Kubernetes client, which retrieves SMI specific CRDs.

type MockMeshSpec added in v0.6.0

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

MockMeshSpec is a mock of MeshSpec interface

func NewMockMeshSpec added in v0.6.0

func NewMockMeshSpec(ctrl *gomock.Controller) *MockMeshSpec

NewMockMeshSpec creates a new mock instance

func (*MockMeshSpec) EXPECT added in v0.6.0

EXPECT returns an object that allows the caller to indicate expected use

func (*MockMeshSpec) GetTCPRoute added in v0.7.0

func (m *MockMeshSpec) GetTCPRoute(arg0 string) *v1alpha4.TCPRoute

GetTCPRoute mocks base method

func (*MockMeshSpec) ListHTTPTrafficSpecs added in v0.6.0

func (m *MockMeshSpec) ListHTTPTrafficSpecs() []*v1alpha4.HTTPRouteGroup

ListHTTPTrafficSpecs mocks base method

func (*MockMeshSpec) ListServiceAccounts added in v0.6.0

func (m *MockMeshSpec) ListServiceAccounts() []service.K8sServiceAccount

ListServiceAccounts mocks base method

func (*MockMeshSpec) ListTCPTrafficSpecs added in v0.6.0

func (m *MockMeshSpec) ListTCPTrafficSpecs() []*v1alpha4.TCPRoute

ListTCPTrafficSpecs mocks base method

func (*MockMeshSpec) ListTrafficSplits added in v0.6.0

func (m *MockMeshSpec) ListTrafficSplits() []*v1alpha2.TrafficSplit

ListTrafficSplits mocks base method

func (*MockMeshSpec) ListTrafficTargets added in v0.6.0

func (m *MockMeshSpec) ListTrafficTargets() []*v1alpha3.TrafficTarget

ListTrafficTargets mocks base method

type MockMeshSpecMockRecorder added in v0.6.0

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

MockMeshSpecMockRecorder is the mock recorder for MockMeshSpec

func (*MockMeshSpecMockRecorder) GetTCPRoute added in v0.7.0

func (mr *MockMeshSpecMockRecorder) GetTCPRoute(arg0 interface{}) *gomock.Call

GetTCPRoute indicates an expected call of GetTCPRoute

func (*MockMeshSpecMockRecorder) ListHTTPTrafficSpecs added in v0.6.0

func (mr *MockMeshSpecMockRecorder) ListHTTPTrafficSpecs() *gomock.Call

ListHTTPTrafficSpecs indicates an expected call of ListHTTPTrafficSpecs

func (*MockMeshSpecMockRecorder) ListServiceAccounts added in v0.6.0

func (mr *MockMeshSpecMockRecorder) ListServiceAccounts() *gomock.Call

ListServiceAccounts indicates an expected call of ListServiceAccounts

func (*MockMeshSpecMockRecorder) ListTCPTrafficSpecs added in v0.6.0

func (mr *MockMeshSpecMockRecorder) ListTCPTrafficSpecs() *gomock.Call

ListTCPTrafficSpecs indicates an expected call of ListTCPTrafficSpecs

func (*MockMeshSpecMockRecorder) ListTrafficSplits added in v0.6.0

func (mr *MockMeshSpecMockRecorder) ListTrafficSplits() *gomock.Call

ListTrafficSplits indicates an expected call of ListTrafficSplits

func (*MockMeshSpecMockRecorder) ListTrafficTargets added in v0.6.0

func (mr *MockMeshSpecMockRecorder) ListTrafficTargets() *gomock.Call

ListTrafficTargets indicates an expected call of ListTrafficTargets

Jump to

Keyboard shortcuts

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