v1alpha2

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: Sep 16, 2022 License: Apache-2.0 Imports: 4 Imported by: 16

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the traffic v1alpha2 API group +kubebuilder:object:generate=true +groupName=traffic.ferryproxy.io

Index

Constants

View Source
const (
	// ConnectedCondition means that Controller can connect to the Apiserver
	ConnectedCondition = "Connected"

	// TunnelHealthCondition means the Tunnel is healthy
	TunnelHealthCondition = "TunnelHealth"

	// HubReady means the hub is able to service.
	HubReady = "Ready"
)
View Source
const (
	// ExportHubReadyCondition means the Hub of export is ready.
	ExportHubReadyCondition = "ExportHubReady"

	// ImportHubReadyCondition means the Hub of export is ready.
	ImportHubReadyCondition = "ImportHubReady"

	// PortsAllocatedCondition means ports has been allocated to it in the Tunnel.
	PortsAllocatedCondition = "PortsAllocated"

	// PathReachableCondition means path of the Route is reachable.
	PathReachableCondition = "PathReachable"

	// RouteSyncedCondition means the Route is synced to tunnel.
	RouteSyncedCondition = "Synced"

	// RouteReady means the Route is able to service requests.
	RouteReady = "Ready"
)
View Source
const (
	// RoutePolicyReady means the RoutePolicy have been converted to Routes
	RoutePolicyReady = "Ready"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "traffic.ferryproxy.io", Version: "v1alpha2"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = GroupVersion

SchemeGroupVersion is group version used to register these objects.

Functions

func Resource

func Resource(resource string) schema.GroupResource

Types

type Hub

type Hub struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   HubSpec   `json:"spec,omitempty"`
	Status HubStatus `json:"status,omitempty"`
}

Hub is the Schema for the hubs API

func (*Hub) DeepCopy

func (in *Hub) DeepCopy() *Hub

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Hub.

func (*Hub) DeepCopyInto

func (in *Hub) DeepCopyInto(out *Hub)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Hub) DeepCopyObject

func (in *Hub) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HubList

type HubList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Hub `json:"items"`
}

HubList contains a list of Hub

func (*HubList) DeepCopy

func (in *HubList) DeepCopy() *HubList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubList.

func (*HubList) DeepCopyInto

func (in *HubList) DeepCopyInto(out *HubList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*HubList) DeepCopyObject

func (in *HubList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HubSpec

type HubSpec struct {
	// Gateway is the default gateway of this Hub
	Gateway HubSpecGateway `json:"gateway"`

	// Override will replace the peer default gateway, the key is the name of peer Hub
	Override map[string]HubSpecGateway `json:"override,omitempty"`
}

HubSpec defines the desired state of Hub

func (*HubSpec) DeepCopy

func (in *HubSpec) DeepCopy() *HubSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubSpec.

func (*HubSpec) DeepCopyInto

func (in *HubSpec) DeepCopyInto(out *HubSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HubSpecGateway

type HubSpecGateway struct {
	// Reachable indicates that this Hub is reachable
	Reachable bool `json:"reachable"`

	// Address is the address of this Hub,
	// used when Reachable is true
	Address string `json:"address,omitempty"`

	// NavigationWay is a list of Hub names through which this Hub needs to reach other Hubs,
	// used when this Hub reaches other Hubs,
	// used by RoutePolicy to calculate Routes
	NavigationWay []HubSpecGatewayWay `json:"navigationWay,omitempty"`

	// ReceptionWay is a list of Hub names through which other hubs needs to reach this Hub,
	// used when other Hubs reaches this Hub and Reachable is true,
	// used by RoutePolicy to calculate Routes
	ReceptionWay []HubSpecGatewayWay `json:"receptionWay,omitempty"`

	// NavigationProxy is a list of proxies through which this Hub to reach other Hubs must need to go through,
	// used when this Hub reaches other Hubs
	NavigationProxy []HubSpecGatewayProxy `json:"navigationProxy,omitempty"`

	// ReceptionProxy is a list of proxies through which other Hubs to reach this Hub must need to go through,
	// used when other Hubs reaches this Hub and Reachable is true
	ReceptionProxy []HubSpecGatewayProxy `json:"receptionProxy,omitempty"`
}

HubSpecGateway defines the desired state of Hub

func (*HubSpecGateway) DeepCopy

func (in *HubSpecGateway) DeepCopy() *HubSpecGateway

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubSpecGateway.

func (*HubSpecGateway) DeepCopyInto

func (in *HubSpecGateway) DeepCopyInto(out *HubSpecGateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HubSpecGatewayProxy added in v0.4.0

type HubSpecGatewayProxy struct {
	// HubName is the name of Hub to proxy,
	// cannot be specified together with Proxy
	HubName string `json:"hubName,omitempty"`

	// Proxy is the proxy to use,
	// cannot be specified together with HubName
	Proxy string `json:"proxy,omitempty"`
}

HubSpecGatewayProxy defines the desired state of HubSpecGateway

func (*HubSpecGatewayProxy) DeepCopy added in v0.4.0

func (in *HubSpecGatewayProxy) DeepCopy() *HubSpecGatewayProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubSpecGatewayProxy.

func (*HubSpecGatewayProxy) DeepCopyInto added in v0.4.0

func (in *HubSpecGatewayProxy) DeepCopyInto(out *HubSpecGatewayProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HubSpecGatewayWay

type HubSpecGatewayWay struct {
	// HubName is the name of Hub
	HubName string `json:"hubName"`
}

HubSpecGatewayWay defines the desired state of HubSpecGateway

func (*HubSpecGatewayWay) DeepCopy

func (in *HubSpecGatewayWay) DeepCopy() *HubSpecGatewayWay

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubSpecGatewayWay.

func (*HubSpecGatewayWay) DeepCopyInto

func (in *HubSpecGatewayWay) DeepCopyInto(out *HubSpecGatewayWay)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HubStatus

type HubStatus struct {
	// Phase is the phase of the Hub
	Phase string `json:"phase,omitempty"`

	// LastSynchronizationTimestamp is the last time synchronization
	LastSynchronizationTimestamp metav1.Time `json:"lastSynchronizationTimestamp,omitempty"`

	// Conditions current service state
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

HubStatus defines the observed state of Hub

func (*HubStatus) DeepCopy

func (in *HubStatus) DeepCopy() *HubStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubStatus.

func (*HubStatus) DeepCopyInto

func (in *HubStatus) DeepCopyInto(out *HubStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Route

type Route struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RouteSpec   `json:"spec,omitempty"`
	Status RouteStatus `json:"status,omitempty"`
}

Route is the Schema for the routes API

func (*Route) DeepCopy

func (in *Route) DeepCopy() *Route

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.

func (*Route) DeepCopyInto

func (in *Route) DeepCopyInto(out *Route)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Route) DeepCopyObject

func (in *Route) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RouteList

type RouteList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Route `json:"items"`
}

RouteList contains a list of Route

func (*RouteList) DeepCopy

func (in *RouteList) DeepCopy() *RouteList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteList.

func (*RouteList) DeepCopyInto

func (in *RouteList) DeepCopyInto(out *RouteList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouteList) DeepCopyObject

func (in *RouteList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RoutePolicy

type RoutePolicy struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RoutePolicySpec   `json:"spec,omitempty"`
	Status RoutePolicyStatus `json:"status,omitempty"`
}

RoutePolicy is the Schema for the routepolicies API

func (*RoutePolicy) DeepCopy

func (in *RoutePolicy) DeepCopy() *RoutePolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicy.

func (*RoutePolicy) DeepCopyInto

func (in *RoutePolicy) DeepCopyInto(out *RoutePolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RoutePolicy) DeepCopyObject

func (in *RoutePolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RoutePolicyList

type RoutePolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []RoutePolicy `json:"items"`
}

RoutePolicyList contains a list of RoutePolicy

func (*RoutePolicyList) DeepCopy

func (in *RoutePolicyList) DeepCopy() *RoutePolicyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicyList.

func (*RoutePolicyList) DeepCopyInto

func (in *RoutePolicyList) DeepCopyInto(out *RoutePolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RoutePolicyList) DeepCopyObject

func (in *RoutePolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RoutePolicySpec

type RoutePolicySpec struct {
	// Exports is a list of exports of the RoutePolicy
	Exports []RoutePolicySpecRule `json:"exports"`

	// Imports is a list of imports of the RoutePolicy
	Imports []RoutePolicySpecRule `json:"imports"`
}

RoutePolicySpec defines the desired state of RoutePolicy

func (*RoutePolicySpec) DeepCopy

func (in *RoutePolicySpec) DeepCopy() *RoutePolicySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicySpec.

func (*RoutePolicySpec) DeepCopyInto

func (in *RoutePolicySpec) DeepCopyInto(out *RoutePolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RoutePolicySpecRule

type RoutePolicySpecRule struct {
	// HubName is specifies the name of the Hub
	HubName string `json:"hubName"`

	// Service is specifies the service of matched
	Service RoutePolicySpecRuleService `json:"service,omitempty"`
}

RoutePolicySpecRule defines the desired import of RoutePolicySpec

func (*RoutePolicySpecRule) DeepCopy

func (in *RoutePolicySpecRule) DeepCopy() *RoutePolicySpecRule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicySpecRule.

func (*RoutePolicySpecRule) DeepCopyInto

func (in *RoutePolicySpecRule) DeepCopyInto(out *RoutePolicySpecRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RoutePolicySpecRuleService

type RoutePolicySpecRuleService struct {
	// Labels is specifies the labels of matched
	Labels map[string]string `json:"labels,omitempty"`

	// Namespace is specifies the namespace of matched
	Namespace string `json:"namespace,omitempty"`

	// Name is specifies the name of matched
	Name string `json:"name,omitempty"`
}

RoutePolicySpecRuleService defines the desired match of RoutePolicySpecRule

func (*RoutePolicySpecRuleService) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicySpecRuleService.

func (*RoutePolicySpecRuleService) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RoutePolicyStatus

type RoutePolicyStatus struct {
	// RouteCount is the number of Route in the RoutePolicy
	RouteCount int `json:"routeCount,omitempty"`

	// Phase is the phase of the RoutePolicy
	Phase string `json:"phase,omitempty"`

	// LastSynchronizationTimestamp is the last time synchronization
	LastSynchronizationTimestamp metav1.Time `json:"lastSynchronizationTimestamp,omitempty"`

	// Conditions current service state
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

RoutePolicyStatus defines the observed state of RoutePolicy

func (*RoutePolicyStatus) DeepCopy

func (in *RoutePolicyStatus) DeepCopy() *RoutePolicyStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicyStatus.

func (*RoutePolicyStatus) DeepCopyInto

func (in *RoutePolicyStatus) DeepCopyInto(out *RoutePolicyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteSpec

type RouteSpec struct {
	// Import is one of import of the Route
	Import RouteSpecRule `json:"import"`

	// Export is one of export of the Route
	Export RouteSpecRule `json:"export"`
}

RouteSpec defines the desired state of Route

func (*RouteSpec) DeepCopy

func (in *RouteSpec) DeepCopy() *RouteSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.

func (*RouteSpec) DeepCopyInto

func (in *RouteSpec) DeepCopyInto(out *RouteSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteSpecRule

type RouteSpecRule struct {
	// HubName is specifies the name of the Hub
	HubName string `json:"hubName"`

	// Service is the service
	Service RouteSpecRuleService `json:"service"`
}

RouteSpecRule defines the desired state of RouteSpec

func (*RouteSpecRule) DeepCopy

func (in *RouteSpecRule) DeepCopy() *RouteSpecRule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpecRule.

func (*RouteSpecRule) DeepCopyInto

func (in *RouteSpecRule) DeepCopyInto(out *RouteSpecRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteSpecRuleService

type RouteSpecRuleService struct {
	// Name is the service name
	Name string `json:"name"`

	// Namespace is the service namespace
	Namespace string `json:"namespace"`
}

RouteSpecRuleService defines the desired state of RouteSpecRule

func (*RouteSpecRuleService) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpecRuleService.

func (*RouteSpecRuleService) DeepCopyInto

func (in *RouteSpecRuleService) DeepCopyInto(out *RouteSpecRuleService)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteStatus

type RouteStatus struct {
	// Way is describe of the way
	Way string `json:"way,omitempty"`

	// Export is describe of the export
	Export string `json:"export,omitempty"`

	// Import is describe of the import
	Import string `json:"import,omitempty"`

	// Phase is the phase of the Route
	Phase string `json:"phase,omitempty"`

	// LastSynchronizationTimestamp is the last time synchronization
	LastSynchronizationTimestamp metav1.Time `json:"lastSynchronizationTimestamp,omitempty"`

	// Conditions current service state
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

RouteStatus defines the observed state of Route

func (*RouteStatus) DeepCopy

func (in *RouteStatus) DeepCopy() *RouteStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteStatus.

func (*RouteStatus) DeepCopyInto

func (in *RouteStatus) DeepCopyInto(out *RouteStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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