argo-events: github.com/argoproj/argo-events/pkg/apis/gateway/v1alpha1 Index | Files

package v1alpha1

import "github.com/argoproj/argo-events/pkg/apis/gateway/v1alpha1"

Package v1alpha1 is the v1alpha1 version of the API. +groupName=argoproj.io +k8s:deepcopy-gen=package,register +k8s:openapi-gen=true

Index

Package Files

doc.go openapi_generated.go register.go types.go zz_generated.deepcopy.go

Constants

const ArgoEventsGatewayVersion = "v0.11"

Gateway version

Variables

var (
    // SchemeBuilder is the builder for this scheme
    SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

    // AddToScheme adds this
    AddToScheme = SchemeBuilder.AddToScheme
)
var SchemaGroupVersionKind = schema.GroupVersionKind{Group: gateway.Group, Version: "v1alpha1", Kind: gateway.Kind}

SchemaGroupVersionKind is a group version kind used to attach owner references to gateway-controller

var SchemeGroupVersion = schema.GroupVersion{Group: gateway.Group, Version: "v1alpha1"}

SchemeGroupVersion is a group version used to register these objects

func GetOpenAPIDefinitions Uses

func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition

func Kind Uses

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource Uses

func Resource(resource string) schema.GroupResource

Resource takes unqualified resource and returns Group qualified GroupResource

type Gateway Uses

type Gateway struct {
    metav1.TypeMeta   `json:",inline"`
    metav1.ObjectMeta `json:"metadata" protobuf:"bytes,1,opt,name=metadata"`
    Status            GatewayStatus `json:"status" protobuf:"bytes,2,opt,name=status"`
    Spec              GatewaySpec   `json:"spec" protobuf:"bytes,3,opt,name=spec"`
}

Gateway is the definition of a gateway resource +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*Gateway) DeepCopy Uses

func (in *Gateway) DeepCopy() *Gateway

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

func (*Gateway) DeepCopyInto Uses

func (in *Gateway) DeepCopyInto(out *Gateway)

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

func (*Gateway) DeepCopyObject Uses

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

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

type GatewayList Uses

type GatewayList struct {
    metav1.TypeMeta `json:",inline"`
    metav1.ListMeta `json:"metadata" protobuf:"bytes,1,opt,name=metadata"`
    // +listType=items
    Items []Gateway `json:"items" protobuf:"bytes,2,opt,name=items"`
}

GatewayList is the list of Gateway resources +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*GatewayList) DeepCopy Uses

func (in *GatewayList) DeepCopy() *GatewayList

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

func (*GatewayList) DeepCopyInto Uses

func (in *GatewayList) DeepCopyInto(out *GatewayList)

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

func (*GatewayList) DeepCopyObject Uses

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

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

type GatewayNotificationWatcher Uses

type GatewayNotificationWatcher struct {
    // Name is the gateway name
    Name string `json:"name" protobuf:"bytes,1,name=name"`

    // Port is http server port on which gateway is running
    Port string `json:"port" protobuf:"bytes,2,name=port"`

    // Endpoint is REST API endpoint to post event to.
    // Events are sent using HTTP POST method to this endpoint.
    Endpoint string `json:"endpoint" protobuf:"bytes,3,name=endpoint"`

    // Namespace of the gateway
    // +Optional
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,4,opt,name=namespace"`
}

GatewayNotificationWatcher is the gateway interested in listening to notifications from this gateway

func (*GatewayNotificationWatcher) DeepCopy Uses

func (in *GatewayNotificationWatcher) DeepCopy() *GatewayNotificationWatcher

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

func (*GatewayNotificationWatcher) DeepCopyInto Uses

func (in *GatewayNotificationWatcher) DeepCopyInto(out *GatewayNotificationWatcher)

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

type GatewaySpec Uses

type GatewaySpec struct {
    // Template is the pod specification for the gateway
    // Refer https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#pod-v1-core
    Template *corev1.PodTemplateSpec `json:"template" protobuf:"bytes,1,opt,name=template"`

    // EventSource is name of the configmap that stores event source configurations for the gateway
    EventSource string `json:"eventSource,omitempty" protobuf:"bytes,2,opt,name=eventSource"`

    // Type is the type of gateway. Used as metadata.
    Type string `json:"type" protobuf:"bytes,3,opt,name=type"`

    // Service is the specifications of the service to expose the gateway
    // Refer https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#service-v1-core
    Service *common.ServiceTemplateSpec `json:"service,omitempty" protobuf:"bytes,4,opt,name=service"`

    // Watchers are components which are interested listening to notifications from this gateway
    // These only need to be specified when gateway dispatch mechanism is through HTTP POST notifications.
    // In future, support for NATS, KAFKA will be added as a means to dispatch notifications in which case
    // specifying watchers would be unnecessary.
    Watchers *NotificationWatchers `json:"watchers,omitempty" protobuf:"bytes,5,opt,name=watchers"`

    // Port on which the gateway event source processor is running on.
    ProcessorPort string `json:"processorPort" protobuf:"bytes,6,opt,name=processorPort"`

    // EventProtocol is the underlying protocol used to send events from gateway to watchers(components interested in listening to event from this gateway)
    EventProtocol *common.EventProtocol `json:"eventProtocol" protobuf:"bytes,7,opt,name=eventProtocol"`
}

GatewaySpec represents gateway specifications

func (*GatewaySpec) DeepCopy Uses

func (in *GatewaySpec) DeepCopy() *GatewaySpec

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

func (*GatewaySpec) DeepCopyInto Uses

func (in *GatewaySpec) DeepCopyInto(out *GatewaySpec)

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

type GatewayStatus Uses

type GatewayStatus struct {
    // Phase is the high-level summary of the gateway
    Phase NodePhase `json:"phase" protobuf:"bytes,1,opt,name=phase"`

    // StartedAt is the time at which this gateway was initiated
    StartedAt metav1.Time `json:"startedAt,omitempty" protobuf:"bytes,2,opt,name=startedAt"`

    // Message is a human readable string indicating details about a gateway in its phase
    Message string `json:"message,omitempty" protobuf:"bytes,4,opt,name=message"`

    // Nodes is a mapping between a node ID and the node's status
    // it records the states for the configurations of gateway.
    Nodes map[string]NodeStatus `json:"nodes,omitempty" protobuf:"bytes,5,rep,name=nodes"`
}

GatewayStatus contains information about the status of a gateway.

func (*GatewayStatus) DeepCopy Uses

func (in *GatewayStatus) DeepCopy() *GatewayStatus

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

func (*GatewayStatus) DeepCopyInto Uses

func (in *GatewayStatus) DeepCopyInto(out *GatewayStatus)

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

type NodePhase Uses

type NodePhase string

NodePhase is the label for the condition of a node.

const (
    NodePhaseRunning        NodePhase = "Running"        // the node is running
    NodePhaseError          NodePhase = "Error"          // the node has encountered an error in processing
    NodePhaseNew            NodePhase = ""               // the node is new
    NodePhaseCompleted      NodePhase = "Completed"      // node has completed running
    NodePhaseRemove         NodePhase = "Remove"         // stale node
    NodePhaseResourceUpdate NodePhase = "ResourceUpdate" // resource is updated
)

possible types of node phases

type NodeStatus Uses

type NodeStatus struct {
    // ID is a unique identifier of a node within a sensor
    // It is a hash of the node name
    ID  string `json:"id" protobuf:"bytes,1,opt,name=id"`

    // Name is a unique name in the node tree used to generate the node ID
    Name string `json:"name" protobuf:"bytes,3,opt,name=name"`

    // DisplayName is the human readable representation of the node
    DisplayName string `json:"displayName" protobuf:"bytes,5,opt,name=displayName"`

    // Phase of the node
    Phase NodePhase `json:"phase" protobuf:"bytes,6,opt,name=phase"`

    // StartedAt is the time at which this node started
    // +k8s:openapi-gen=false
    StartedAt metav1.MicroTime `json:"startedAt,omitempty" protobuf:"bytes,7,opt,name=startedAt"`

    // Message store data or something to save for configuration
    Message string `json:"message,omitempty" protobuf:"bytes,8,opt,name=message"`

    // UpdateTime is the time when node(gateway configuration) was updated
    UpdateTime metav1.MicroTime `json:"updateTime,omitempty" protobuf:"bytes,9,opt,name=updateTime"`
}

NodeStatus describes the status for an individual node in the gateway configurations. A single node can represent one configuration.

func (*NodeStatus) DeepCopy Uses

func (in *NodeStatus) DeepCopy() *NodeStatus

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

func (*NodeStatus) DeepCopyInto Uses

func (in *NodeStatus) DeepCopyInto(out *NodeStatus)

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

type NotificationWatchers Uses

type NotificationWatchers struct {
    // +listType=gateways
    // Gateways is the list of gateways interested in listening to notifications from this gateway
    Gateways []GatewayNotificationWatcher `json:"gateways,omitempty" protobuf:"bytes,1,opt,name=gateways"`

    // +listType=sensors
    // Sensors is the list of sensors interested in listening to notifications from this gateway
    Sensors []SensorNotificationWatcher `json:"sensors,omitempty" protobuf:"bytes,2,rep,name=sensors"`
}

NotificationWatchers are components which are interested listening to notifications from this gateway

func (*NotificationWatchers) DeepCopy Uses

func (in *NotificationWatchers) DeepCopy() *NotificationWatchers

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

func (*NotificationWatchers) DeepCopyInto Uses

func (in *NotificationWatchers) DeepCopyInto(out *NotificationWatchers)

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

type SensorNotificationWatcher Uses

type SensorNotificationWatcher struct {
    // Name is the name of the sensor
    Name string `json:"name" protobuf:"bytes,1,name=name"`

    // Namespace of the sensor
    // +Optional
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,2,opt,name=namespace"`
}

SensorNotificationWatcher is the sensor interested in listening to notifications from this gateway

func (*SensorNotificationWatcher) DeepCopy Uses

func (in *SensorNotificationWatcher) DeepCopy() *SensorNotificationWatcher

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

func (*SensorNotificationWatcher) DeepCopyInto Uses

func (in *SensorNotificationWatcher) DeepCopyInto(out *SensorNotificationWatcher)

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

Package v1alpha1 imports 8 packages (graph) and is imported by 12 packages. Updated 2019-11-12. Refresh now. Tools for package owners.