Documentation ¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the traffic v1alpha2 API group +kubebuilder:object:generate=true +groupName=traffic.ferryproxy.io
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type Hub
- type HubList
- type HubSpec
- type HubSpecGateway
- type HubSpecGatewayProxy
- type HubSpecGatewayWay
- type HubStatus
- type Route
- type RouteList
- type RoutePolicy
- type RoutePolicyList
- type RoutePolicySpec
- type RoutePolicySpecRule
- type RoutePolicySpecRuleService
- type RoutePolicyStatus
- type RouteSpec
- type RouteSpecRule
- type RouteSpecRuleService
- type RouteStatus
Constants ¶
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" )
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" )
const (
// RoutePolicyReady means the RoutePolicy have been converted to Routes
RoutePolicyReady = "Ready"
)
Variables ¶
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 )
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Hub.
func (*Hub) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Hub) DeepCopyObject ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubList.
func (*HubList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HubList) DeepCopyObject ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubSpec.
func (*HubSpec) DeepCopyInto ¶
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"` // 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"` // 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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubStatus.
func (*HubStatus) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.
func (*Route) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Route) DeepCopyObject ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteList.
func (*RouteList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteList) DeepCopyObject ¶
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 ¶
func (in *RoutePolicySpecRuleService) DeepCopy() *RoutePolicySpecRuleService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicySpecRuleService.
func (*RoutePolicySpecRuleService) DeepCopyInto ¶
func (in *RoutePolicySpecRuleService) DeepCopyInto(out *RoutePolicySpecRuleService)
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.
func (*RouteSpec) DeepCopyInto ¶
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 ¶
func (in *RouteSpecRuleService) DeepCopy() *RouteSpecRuleService
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.