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

package v1alpha1

import "github.com/argoproj/argo-events/pkg/apis/sensor/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

Variables

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

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

SchemaGroupVersionKind is a group version kind used to attach owner references to sensor executor job

var SchemeGroupVersion = schema.GroupVersion{Group: sensor.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 AWSLambdaTrigger Uses

type AWSLambdaTrigger struct {
    // FunctionName refers to the name of the function to invoke.
    FunctionName string `json:"functionName" protobuf:"bytes,1,name=functionName"`
    // AccessKey refers K8 secret containing aws access key
    AccessKey *corev1.SecretKeySelector `json:"accessKey,omitempty" protobuf:"bytes,2,opt,name=accessKey"`
    // SecretKey refers K8 secret containing aws secret key
    SecretKey *corev1.SecretKeySelector `json:"secretKey,omitempty" protobuf:"bytes,3,opt,name=secretKey"`
    // Namespace refers to Kubernetes namespace to read access related secret from.
    // Defaults to sensor's namespace.
    // +optional.
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,4,opt,name=namespace"`
    // Region is AWS region
    Region string `json:"region" protobuf:"bytes,5,name=region"`
    // Payload is the list of key-value extracted from an event payload to construct the request payload.
    // +listType=payloadParameters
    Payload []TriggerParameter `json:"payload" protobuf:"bytes,6,rep,name=payload"`
    // Parameters is the list of key-value extracted from event's payload that are applied to
    // the trigger resource.
    // +listType=triggerParameters
    // +optional
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,7,rep,name=parameters"`
}

AWSLambdaTrigger refers to specification of the trigger to invoke an AWS Lambda function

func (*AWSLambdaTrigger) DeepCopy Uses

func (in *AWSLambdaTrigger) DeepCopy() *AWSLambdaTrigger

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

func (*AWSLambdaTrigger) DeepCopyInto Uses

func (in *AWSLambdaTrigger) DeepCopyInto(out *AWSLambdaTrigger)

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

type ArgoWorkflowOperation Uses

type ArgoWorkflowOperation string

ArgoWorkflowOperation refers to the type of the operation performed on the Argo Workflow

const (
    Submit   ArgoWorkflowOperation = "submit"   // submit a workflow
    Suspend  ArgoWorkflowOperation = "suspend"  // suspends a workflow
    Resubmit ArgoWorkflowOperation = "resubmit" // resubmit a workflow
    Retry    ArgoWorkflowOperation = "retry"    // retry a workflow
    Resume   ArgoWorkflowOperation = "resume"   // resume a workflow
)

possible values for ArgoWorkflowOperation

type ArgoWorkflowTrigger Uses

type ArgoWorkflowTrigger struct {
    // Source of the K8 resource file(s)
    Source *ArtifactLocation `json:"source" protobuf:"bytes,1,opt,name=source"`
    // Operation refers to the type of operation performed on the argo workflow resource.
    // Default value is Submit.
    // +optional
    Operation ArgoWorkflowOperation `json:"operation,omitempty" protobuf:"bytes,2,opt,name=operation"`
    // Parameters is the list of parameters to pass to resolved Argo Workflow object
    // +listType=triggerParameters
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,3,rep,name=parameters"`
    // The unambiguous kind of this object - used in order to retrieve the appropriate kubernetes api client for this resource
    *metav1.GroupVersionResource `json:",inline" protobuf:"bytes,4,name=groupVersionResource"`
}

ArgoWorkflowTrigger is the trigger for the Argo Workflow

func (*ArgoWorkflowTrigger) DeepCopy Uses

func (in *ArgoWorkflowTrigger) DeepCopy() *ArgoWorkflowTrigger

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

func (*ArgoWorkflowTrigger) DeepCopyInto Uses

func (in *ArgoWorkflowTrigger) DeepCopyInto(out *ArgoWorkflowTrigger)

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

type ArtifactLocation Uses

type ArtifactLocation struct {
    // S3 compliant minio
    S3  *apicommon.S3Artifact `json:"s3,omitempty" protobuf:"bytes,1,opt,name=s3"`
    // Inline minio is embedded in sensor spec as a string
    Inline *string `json:"inline,omitempty" protobuf:"bytes,2,opt,name=inline"`
    // File minio is minio stored in a file
    File *FileArtifact `json:"file,omitempty" protobuf:"bytes,3,opt,name=file"`
    // URL to fetch the minio from
    URL *URLArtifact `json:"url,omitempty" protobuf:"bytes,4,opt,name=url"`
    // Configmap that stores the minio
    Configmap *ConfigmapArtifact `json:"configmap,omitempty" protobuf:"bytes,5,opt,name=configmap"`
    // Git repository hosting the minio
    Git *GitArtifact `json:"git,omitempty" protobuf:"bytes,6,opt,name=git"`
    // Resource is generic template for K8s resource
    Resource *unstructured.Unstructured `json:"resource,omitempty" protobuf:"bytes,7,opt,name=resource"`
}

ArtifactLocation describes the source location for an external minio

func (*ArtifactLocation) DeepCopy Uses

func (in *ArtifactLocation) DeepCopy() *ArtifactLocation

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

func (*ArtifactLocation) DeepCopyInto Uses

func (in *ArtifactLocation) DeepCopyInto(out *ArtifactLocation)

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

func (*ArtifactLocation) HasLocation Uses

func (a *ArtifactLocation) HasLocation() bool

HasLocation whether or not an minio has a location defined

type Backoff Uses

type Backoff struct {
    // Duration is the duration in nanoseconds
    Duration time.Duration `json:"duration" protobuf:"bytes,1,opt,name=duration"`
    // Duration is multiplied by factor each iteration
    Factor float64 `json:"factor" protobuf:"bytes,2,opt,name=factor"`
    // The amount of jitter applied each iteration
    Jitter float64 `json:"jitter" protobuf:"bytes,3,opt,name=jitter"`
    // Exit with error after this many steps
    Steps int `json:"steps" protobuf:"bytes,4,opt,name=steps"`
}

Backoff for an operation

func (*Backoff) DeepCopy Uses

func (in *Backoff) DeepCopy() *Backoff

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

func (*Backoff) DeepCopyInto Uses

func (in *Backoff) DeepCopyInto(out *Backoff)

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

type BasicAuth Uses

type BasicAuth struct {
    // Username refers to the Kubernetes secret that holds the username required for basic auth.
    Username *corev1.SecretKeySelector `json:"username,omitempty" protobuf:"bytes,1,opt,name=username"`
    // Password refers to the Kubernetes secret that holds the password required for basic auth.
    Password *corev1.SecretKeySelector `json:"password,omitempty" protobuf:"bytes,2,opt,name=password"`
    // Namespace to read the secrets from.
    // Defaults to sensor's namespace.
    // +optional
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,9,opt,name=namespace"`
}

BasicAuth contains the reference to K8s secrets that holds the username and password

func (*BasicAuth) DeepCopy Uses

func (in *BasicAuth) DeepCopy() *BasicAuth

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

func (*BasicAuth) DeepCopyInto Uses

func (in *BasicAuth) DeepCopyInto(out *BasicAuth)

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

type Comparator Uses

type Comparator string

Comparator refers to the comparator operator for a data filter

const (
    GreaterThanOrEqualTo Comparator = ">=" // Greater than or equal to value provided in data filter
    GreaterThan          Comparator = ">"  // Greater than value provided in data filter
    EqualTo              Comparator = "="  // Equal to value provided in data filter
    LessThan             Comparator = "<"  // Less than value provided in data filter
    LessThanOrEqualTo    Comparator = "<=" // Less than or equal to value provided in data filter
    EmptyComparator                 = ""   // Equal to value provided in data filter
)

type ConfigmapArtifact Uses

type ConfigmapArtifact struct {
    // Name of the configmap
    Name string `json:"name" protobuf:"bytes,1,name=name"`
    // Namespace where configmap is deployed
    Namespace string `json:"namespace" protobuf:"bytes,2,name=namespace"`
    // Key within configmap data which contains trigger resource definition
    Key string `json:"key" protobuf:"bytes,3,name=key"`
}

ConfigmapArtifact contains information about minio in k8 configmap

func (*ConfigmapArtifact) DeepCopy Uses

func (in *ConfigmapArtifact) DeepCopy() *ConfigmapArtifact

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

func (*ConfigmapArtifact) DeepCopyInto Uses

func (in *ConfigmapArtifact) DeepCopyInto(out *ConfigmapArtifact)

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

type CustomTrigger Uses

type CustomTrigger struct {
    // ServerURL is the url of the gRPC server that executes custom trigger
    ServerURL string `json:"serverURL" protobuf:"bytes,1,name=serverURL"`
    // Secure refers to type of the connection between sensor to custom trigger gRPC
    Secure bool `json:"secure" protobuf:"bytes,2,name=secure"`
    // CertFilePath is path to the cert file within sensor for secure connection between sensor and custom trigger gRPC server.
    CertFilePath string `json:"certFilePath,omitempty" protobuf:"bytes,3,opt,name=certFilePath"`
    // ServerNameOverride for the secure connection between sensor and custom trigger gRPC server.
    ServerNameOverride string `json:"serverNameOverride,omitempty" protobuf:"bytes,4,opt,name=serverNameOverride"`
    // Spec is the custom trigger resource specification that custom trigger gRPC server knows how to interpret.
    Spec map[string]string `json:"spec" protobuf:"bytes,5,name=spec"`
    // Parameters is the list of parameters that is applied to resolved custom trigger trigger object.
    // +listType=triggerParameters
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,6,rep,name=parameters"`
    // Payload is the list of key-value extracted from an event payload to construct the request payload.
    // +listType=payloadParameters
    Payload []TriggerParameter `json:"payload" protobuf:"bytes,7,rep,name=payload"`
}

CustomTrigger refers to the specification of the custom trigger.

func (*CustomTrigger) DeepCopy Uses

func (in *CustomTrigger) DeepCopy() *CustomTrigger

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

func (*CustomTrigger) DeepCopyInto Uses

func (in *CustomTrigger) DeepCopyInto(out *CustomTrigger)

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

type DataFilter Uses

type DataFilter struct {
    // Path is the JSONPath of the event's (JSON decoded) data key
    // Path is a series of keys separated by a dot. A key may contain wildcard characters '*' and '?'.
    // To access an array value use the index as the key. The dot and wildcard characters can be escaped with '\\'.
    // See https://github.com/tidwall/gjson#path-syntax for more information on how to use this.
    Path string `json:"path" protobuf:"bytes,1,opt,name=path"`
    // Type contains the JSON type of the data
    Type JSONType `json:"type" protobuf:"bytes,2,opt,name=type"`
    // +listType=value
    // Value is the allowed string values for this key
    // Booleans are passed using strconv.ParseBool()
    // Numbers are parsed using as float64 using strconv.ParseFloat()
    // Strings are taken as is
    // Nils this value is ignored
    Value []string `json:"value" protobuf:"bytes,3,rep,name=value"`
    // Comparator compares the event data with a user given value.
    // Can be ">=", ">", "=", "<", or "<=".
    // Is optional, and if left blank treated as equality "=".
    Comparator Comparator `json:"comparator,omitempty" protobuf:"bytes,4,opt,name=comparator"`
}

DataFilter describes constraints and filters for event data Regular Expressions are purposefully not a feature as they are overkill for our uses here See Rob Pike's Post: https://commandcenter.blogspot.com/2011/08/regular-expressions-in-lexing-and.html

func (*DataFilter) DeepCopy Uses

func (in *DataFilter) DeepCopy() *DataFilter

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

func (*DataFilter) DeepCopyInto Uses

func (in *DataFilter) DeepCopyInto(out *DataFilter)

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

type DependencyGroup Uses

type DependencyGroup struct {
    // Name of the group
    Name string `json:"name" protobuf:"bytes,1,name=name"`
    // +listType=dependencies
    // Dependencies of events
    Dependencies []string `json:"dependencies" protobuf:"bytes,2,name=dependencies"`
}

DependencyGroup is the group of dependencies

func (*DependencyGroup) DeepCopy Uses

func (in *DependencyGroup) DeepCopy() *DependencyGroup

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

func (*DependencyGroup) DeepCopyInto Uses

func (in *DependencyGroup) DeepCopyInto(out *DependencyGroup)

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

type Event Uses

type Event struct {
    Context *EventContext `json:"context" protobuf:"bytes,1,name=context"`
    Data    []byte        `json:"data" protobuf:"bytes,2,name=data"`
}

Event represents the cloudevent received from a gateway.

func (*Event) DeepCopy Uses

func (in *Event) DeepCopy() *Event

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

func (*Event) DeepCopyInto Uses

func (in *Event) DeepCopyInto(out *Event)

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

type EventContext Uses

type EventContext struct {
    // ID of the event; must be non-empty and unique within the scope of the producer.
    ID  string `json:"id" protobuf:"bytes,1,name=id"`
    // Source - A URI describing the event producer.
    Source string `json:"source" protobuf:"bytes,2,name=source"`
    // SpecVersion - The version of the CloudEvents specification used by the event.
    SpecVersion string `json:"specversion" protobuf:"bytes,3,name=specVersion"`
    // Type - The type of the occurrence which has happened.
    Type string `json:"type" protobuf:"bytes,4,name=type"`
    // DataContentType - A MIME (RFC2046) string describing the media type of `data`.
    DataContentType string `json:"dataContentType" protobuf:"bytes,5,name=dataContentType"`
    // Subject - The subject of the event in the context of the event producer
    Subject string `json:"subject" protobuf:"bytes,6,name=subject"`
    // Time - A Timestamp when the event happened.
    Time metav1.Time `json:"time" protobuf:"bytes,7,name=time"`
}

EventContext holds the context of the cloudevent received from a gateway.

func (*EventContext) DeepCopy Uses

func (in *EventContext) DeepCopy() *EventContext

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

func (*EventContext) DeepCopyInto Uses

func (in *EventContext) DeepCopyInto(out *EventContext)

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

type EventDependency Uses

type EventDependency struct {
    // Name is a unique name of this dependency
    Name string `json:"name" protobuf:"bytes,1,name=name"`
    // GatewayName is the name of the gateway from whom the event is received
    GatewayName string `json:"gatewayName" protobuf:"bytes,2,name=gatewayName"`
    // EventName is the name of the event
    EventName string `json:"eventName" protobuf:"bytes,3,name=eventName"`
    // Filters and rules governing toleration of success and constraints on the context and data of an event
    Filters *EventDependencyFilter `json:"filters,omitempty" protobuf:"bytes,4,opt,name=filters"`
}

EventDependency describes a dependency

func (*EventDependency) DeepCopy Uses

func (in *EventDependency) DeepCopy() *EventDependency

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

func (*EventDependency) DeepCopyInto Uses

func (in *EventDependency) DeepCopyInto(out *EventDependency)

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

type EventDependencyFilter Uses

type EventDependencyFilter struct {
    // Name is the name of event filter
    Name string `json:"name" protobuf:"bytes,1,name=name"`
    // Time filter on the event with escalation
    Time *TimeFilter `json:"time,omitempty" protobuf:"bytes,2,opt,name=time"`
    // Context filter constraints
    Context *EventContext `json:"context,omitempty" protobuf:"bytes,3,opt,name=context"`
    // +listType=data
    // Data filter constraints with escalation
    Data []DataFilter `json:"data,omitempty" protobuf:"bytes,4,opt,name=data"`
}

EventDependencyFilter defines filters and constraints for a event.

func (*EventDependencyFilter) DeepCopy Uses

func (in *EventDependencyFilter) DeepCopy() *EventDependencyFilter

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

func (*EventDependencyFilter) DeepCopyInto Uses

func (in *EventDependencyFilter) DeepCopyInto(out *EventDependencyFilter)

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

type FileArtifact Uses

type FileArtifact struct {
    Path string `json:"path,omitempty" protobuf:"bytes,1,opt,name=path"`
}

FileArtifact contains information about an minio in a filesystem

func (*FileArtifact) DeepCopy Uses

func (in *FileArtifact) DeepCopy() *FileArtifact

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

func (*FileArtifact) DeepCopyInto Uses

func (in *FileArtifact) DeepCopyInto(out *FileArtifact)

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

type GitArtifact Uses

type GitArtifact struct {
    // Git URL
    URL string `json:"url" protobuf:"bytes,1,name=url"`
    // Directory to clone the repository. We clone complete directory because GitArtifact is not limited to any specific Git service providers.
    // Hence we don't use any specific git provider client.
    CloneDirectory string `json:"cloneDirectory" protobuf:"bytes,2,name=cloneDirectory"`
    // Creds contain reference to git username and password
    // +optional
    Creds *GitCreds `json:"creds,omitempty" protobuf:"bytes,3,opt,name=creds"`
    // Namespace where creds are stored.
    // +optional
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,4,opt,name=namespace"`
    // SSHKeyPath is path to your ssh key path. Use this if you don't want to provide username and password.
    // ssh key path must be mounted in sensor pod.
    // +optional
    SSHKeyPath string `json:"sshKeyPath,omitempty" protobuf:"bytes,5,opt,name=sshKeyPath"`
    // Path to file that contains trigger resource definition
    FilePath string `json:"filePath" protobuf:"bytes,6,name=filePath"`
    // Branch to use to pull trigger resource
    // +optional
    Branch string `json:"branch,omitempty" protobuf:"bytes,7,opt,name=branch"`
    // Tag to use to pull trigger resource
    // +optional
    Tag string `json:"tag,omitempty" protobuf:"bytes,8,opt,name=tag"`
    // Ref to use to pull trigger resource. Will result in a shallow clone and
    // fetch.
    // +optional
    Ref string `json:"ref,omitempty" protobuf:"bytes,9,opt,name=ref"`
    // Remote to manage set of tracked repositories. Defaults to "origin".
    // Refer https://git-scm.com/docs/git-remote
    // +optional
    Remote *GitRemoteConfig `json:"remote" protobuf:"bytes,10,opt,name=remote"`
}

GitArtifact contains information about an minio stored in git

func (*GitArtifact) DeepCopy Uses

func (in *GitArtifact) DeepCopy() *GitArtifact

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

func (*GitArtifact) DeepCopyInto Uses

func (in *GitArtifact) DeepCopyInto(out *GitArtifact)

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

type GitCreds Uses

type GitCreds struct {
    Username *corev1.SecretKeySelector `json:"username" protobuf:"bytes,1,opt,name=username"`
    Password *corev1.SecretKeySelector `json:"password" protobuf:"bytes,2,opt,name=password"`
}

GitCreds contain reference to git username and password

func (*GitCreds) DeepCopy Uses

func (in *GitCreds) DeepCopy() *GitCreds

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

func (*GitCreds) DeepCopyInto Uses

func (in *GitCreds) DeepCopyInto(out *GitCreds)

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

type GitRemoteConfig Uses

type GitRemoteConfig struct {
    // Name of the remote to fetch from.
    Name string `json:"name" protobuf:"bytes,1,name=name"`
    // +listType=urls
    // URLs the URLs of a remote repository. It must be non-empty. Fetch will
    // always use the first URL, while push will use all of them.
    URLS []string `json:"urls" protobuf:"bytes,2,rep,name=urls"`
}

GitRemoteConfig contains the configuration of a Git remote

func (*GitRemoteConfig) DeepCopy Uses

func (in *GitRemoteConfig) DeepCopy() *GitRemoteConfig

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

func (*GitRemoteConfig) DeepCopyInto Uses

func (in *GitRemoteConfig) DeepCopyInto(out *GitRemoteConfig)

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

type HTTPSubscription Uses

type HTTPSubscription struct {
    // Port on which sensor server should run.
    Port int `json:"port" protobuf:"bytes,1,name=port"`
}

HTTPSubscription holds the context of the HTTP subscription of events for the sensor.

func (*HTTPSubscription) DeepCopy Uses

func (in *HTTPSubscription) DeepCopy() *HTTPSubscription

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

func (*HTTPSubscription) DeepCopyInto Uses

func (in *HTTPSubscription) DeepCopyInto(out *HTTPSubscription)

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

type HTTPTrigger Uses

type HTTPTrigger struct {
    // URL refers to the URL to send HTTP request to.
    URL string `json:"url" protobuf:"bytes,1,name=url"`
    // Payload is the list of key-value extracted from an event payload to construct the HTTP request payload.
    // +listType=atomic
    Payload []TriggerParameter `json:"payload" protobuf:"bytes,2,rep,name=payload"`
    // TLS configuration for the HTTP client.
    // +optional
    TLS *TLSConfig `json:"tls,omitempty" protobuf:"bytes,3,opt,name=tls"`
    // Method refers to the type of the HTTP request.
    // Refer https://golang.org/src/net/http/method.go for more info.
    // Default value is POST.
    // +optional
    Method string `json:"method,omitempty" protobuf:"bytes,4,opt,name=method"`
    // Parameters is the list of key-value extracted from event's payload that are applied to
    // the HTTP trigger resource.
    // +listType=atomic
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,5,rep,name=parameters"`
    // Timeout refers to the HTTP request timeout in seconds.
    // Default value is 60 seconds.
    // +optional
    Timeout int `json:"timeout,omitempty" protobuf:"bytes,6,opt,name=timeout"`
    // BasicAuth configuration for the http request.
    // +optional
    BasicAuth *BasicAuth `json:"basicAuth,omitempty" protobuf:"bytes,7,opt,name=basicAuth"`
    // Headers for the HTTP request.
    // +mapType=granular
    // +optional
    Headers map[string][]string `json:"headers,omitempty" protobuf:"bytes,8,opt,name=headers"`
}

HTTPTrigger is the trigger for the HTTP request

func (*HTTPTrigger) DeepCopy Uses

func (in *HTTPTrigger) DeepCopy() *HTTPTrigger

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

func (*HTTPTrigger) DeepCopyInto Uses

func (in *HTTPTrigger) DeepCopyInto(out *HTTPTrigger)

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

type JSONType Uses

type JSONType string

JSONType contains the supported JSON types for data filtering

const (
    JSONTypeBool   JSONType = "bool"
    JSONTypeNumber JSONType = "number"
    JSONTypeString JSONType = "string"
)

the various supported JSONTypes

type K8sResourcePolicy Uses

type K8sResourcePolicy struct {
    // Labels required to identify whether a resource is in success state
    Labels map[string]string `json:"labels" protobuf:"bytes,1,name=labels"`
    // Backoff before checking resource state
    Backoff wait.Backoff `json:"backoff" protobuf:"bytes,2,name=backoff"`
    // ErrorOnBackoffTimeout determines whether sensor should transition to error state if the trigger policy is unable to determine
    // the state of the resource
    ErrorOnBackoffTimeout bool `json:"errorOnBackoffTimeout" protobuf:"bytes,3,name=errorOnBackoffTimeout"`
}

K8sResourcePolicy refers to the policy used to check the state of K8s based triggers using using labels

func (*K8sResourcePolicy) DeepCopy Uses

func (in *K8sResourcePolicy) DeepCopy() *K8sResourcePolicy

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

func (*K8sResourcePolicy) DeepCopyInto Uses

func (in *K8sResourcePolicy) DeepCopyInto(out *K8sResourcePolicy)

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

type KafkaTrigger Uses

type KafkaTrigger struct {
    // URL of the Kafka broker.
    URL string `json:"url" protobuf:"bytes,1,name=url"`
    // Name of the topic.
    // More info at https://kafka.apache.org/documentation/#intro_topics
    Topic string `json:"topic" protobuf:"bytes,2,name=topic"`
    // Partition to write data to.
    Partition int `json:"partition" protobuf:"bytes,3,name=partition"`
    // Parameters is the list of parameters that is applied to resolved Kafka trigger object.
    // +listType=triggerParameters
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,4,rep,name=parameters"`
    // RequiredAcks used in producer to tell the broker how many replica acknowledgements
    // Defaults to 1 (Only wait for the leader to ack).
    // +optional.
    RequiredAcks int `json:"requiredAcks,omitempty" protobuf:"bytes,5,opt,name=requiredAcks"`
    // Compress determines whether to compress message or not.
    // Defaults to false.
    // If set to true, compresses message using snappy compression.
    // +optional
    Compress bool `json:"compress,omitempty" protobuf:"bytes,6,opt,name=compress"`
    // FlushFrequency refers to the frequency in milliseconds to flush batches.
    // Defaults to 500 milliseconds.
    // +optional
    FlushFrequency int `json:"flushFrequency,omitempty" protobuf:"bytes,7,opt,name=flushFrequency"`
    // TLS configuration for the Kafka producer.
    // +optional
    TLS *TLSConfig `json:"tls,omitempty" protobuf:"bytes,8,opt,name=tls"`
    // Payload is the list of key-value extracted from an event payload to construct the request payload.
    // +listType=payloadParameters
    Payload []TriggerParameter `json:"payload" protobuf:"bytes,9,rep,name=payload"`
    // The partitioning key for the messages put on the Kafka topic.
    // Defaults to broker url.
    // +optional.
    PartitioningKey string `json:"partitioningKey,omitempty" protobuf:"bytes,10,opt,name=partitioningKey"`
}

KafkaTrigger refers to the specification of the Kafka trigger.

func (*KafkaTrigger) DeepCopy Uses

func (in *KafkaTrigger) DeepCopy() *KafkaTrigger

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

func (*KafkaTrigger) DeepCopyInto Uses

func (in *KafkaTrigger) DeepCopyInto(out *KafkaTrigger)

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

type KubernetesResourceOperation Uses

type KubernetesResourceOperation string

KubernetesResourceOperation refers to the type of operation performed on the K8s resource

const (
    // deprecate create.
    Create KubernetesResourceOperation = "create" // create the resource
    Update KubernetesResourceOperation = "update" // updates the resource
    Patch  KubernetesResourceOperation = "patch"  // patch resource
)

possible values for KubernetesResourceOperation

type NATSSubscription Uses

type NATSSubscription struct {
    // ServerURL refers to NATS server url.
    ServerURL string `json:"serverURL" protobuf:"bytes,1,name=serverURL"`
    // Subject refers to NATS subject name.
    Subject string `json:"subject" protobuf:"bytes,2,name=subject"`
}

NATSSubscription holds the context of the NATS subscription of events for the sensor

func (*NATSSubscription) DeepCopy Uses

func (in *NATSSubscription) DeepCopy() *NATSSubscription

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

func (*NATSSubscription) DeepCopyInto Uses

func (in *NATSSubscription) DeepCopyInto(out *NATSSubscription)

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

type NATSTrigger Uses

type NATSTrigger struct {
    // URL of the NATS cluster.
    URL string `json:"url" protobuf:"bytes,1,name=url"`
    // Name of the subject to put message on.
    Subject string `json:"subject" protobuf:"bytes,2,name=subject"`
    // Payload is the list of key-value extracted from an event payload to construct the request payload.
    // +listType=payloadParameters
    Payload []TriggerParameter `json:"payload" protobuf:"bytes,3,rep,name=payload"`
    // Parameters is the list of parameters that is applied to resolved NATS trigger object.
    // +listType=triggerParameters
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,4,rep,name=parameters"`
    // TLS configuration for the NATS producer.
    // +optional
    TLS *TLSConfig `json:"tls,omitempty" protobuf:"bytes,5,opt,name=tls"`
}

NATSTrigger refers to the specification of the NATS trigger.

func (*NATSTrigger) DeepCopy Uses

func (in *NATSTrigger) DeepCopy() *NATSTrigger

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

func (*NATSTrigger) DeepCopyInto Uses

func (in *NATSTrigger) DeepCopyInto(out *NATSTrigger)

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 (
    NodePhaseComplete NodePhase = "Complete" // the node has finished successfully
    NodePhaseActive   NodePhase = "Active"   // the node is active and waiting on dependencies to resolve
    NodePhaseError    NodePhase = "Error"    // the node has encountered an error in processing
    NodePhaseNew      NodePhase = ""         // the node is new
)

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,2,opt,name=name"`
    // DisplayName is the human readable representation of the node
    DisplayName string `json:"displayName" protobuf:"bytes,3,opt,name=displayName"`
    // Type is the type of the node
    Type NodeType `json:"type" protobuf:"bytes,4,opt,name=type"`
    // Phase of the node
    Phase NodePhase `json:"phase" protobuf:"bytes,5,opt,name=phase"`
    // StartedAt is the time at which this node started
    StartedAt metav1.MicroTime `json:"startedAt,omitempty" protobuf:"bytes,6,opt,name=startedAt"`
    // CompletedAt is the time at which this node completed
    CompletedAt metav1.MicroTime `json:"completedAt,omitempty" protobuf:"bytes,7,opt,name=completedAt"`
    // store data or something to save for event notifications or trigger events
    Message string `json:"message,omitempty" protobuf:"bytes,8,opt,name=message"`
    // Event stores the last seen event for this node
    Event *Event `json:"event,omitempty" protobuf:"bytes,9,opt,name=event"`
    // UpdatedAt refers to the time at which the node was updated.
    UpdatedAt metav1.MicroTime `json:"updatedAt,omitempty" protobuf:"bytes,10,opt,name=updatedAt"`
    // ResolvedAt refers to the time at which the node was resolved.
    ResolvedAt metav1.MicroTime `json:"resolvedAt,omitempty" protobuf:"bytes,11,opt,name=resolvedAt"`
}

NodeStatus describes the status for an individual node in the sensor's FSM. A single node can represent the status for event or a trigger.

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.

func (NodeStatus) IsComplete Uses

func (node NodeStatus) IsComplete() bool

IsComplete determines if the node has reached an end state

type NodeType Uses

type NodeType string

NodeType is the type of a node

const (
    // NodeTypeEventDependency is a node that represents a single event dependency
    NodeTypeEventDependency NodeType = "EventDependency"
    // NodeTypeTrigger is a node that represents a single trigger
    NodeTypeTrigger NodeType = "Trigger"
    // NodeTypeDependencyGroup is a node that represents a group of event dependencies
    NodeTypeDependencyGroup NodeType = "DependencyGroup"
)

type NotificationType Uses

type NotificationType string

NotificationType represent a type of notifications that are handled by a sensor

const (
    // EventNotification is a notification for an event dependency (from a Gateway)
    EventNotification NotificationType = "Event"
    // ResourceUpdateNotification is a notification that an associated resource was updated
    ResourceUpdateNotification NotificationType = "ResourceUpdate"
)

type OpenWhiskTrigger Uses

type OpenWhiskTrigger struct {
    // Host URL of the OpenWhisk.
    Host string `json:"host" protobuf:"bytes,1,name=host"`
    // Version for the API.
    // Defaults to v1.
    // +optional
    Version string `json:"version,omitempty" protobuf:"bytes,2,opt,name=version"`
    // Namespace for the action.
    // Defaults to "_".
    // +optional.
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,3,opt,name=namespace"`
    // AuthToken for authentication.
    // +optional
    AuthToken *corev1.SecretKeySelector `json:"authToken,omitempty" protobuf:"bytes,4,opt,name=authToken"`
    // Name of the action/function.
    ActionName string `json:"actionName" protobuf:"bytes,5,name=actionName"`
    // Payload is the list of key-value extracted from an event payload to construct the request payload.
    // +listType=payloadParameters
    Payload []TriggerParameter `json:"payload" protobuf:"bytes,6,rep,name=payload"`
    // Parameters is the list of key-value extracted from event's payload that are applied to
    // the trigger resource.
    // +listType=triggerParameters
    // +optional
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,7,rep,name=parameters"`
}

OpenWhiskTrigger refers to the specification of the OpenWhisk trigger.

func (*OpenWhiskTrigger) DeepCopy Uses

func (in *OpenWhiskTrigger) DeepCopy() *OpenWhiskTrigger

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

func (*OpenWhiskTrigger) DeepCopyInto Uses

func (in *OpenWhiskTrigger) DeepCopyInto(out *OpenWhiskTrigger)

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

type Sensor Uses

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

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

func (*Sensor) AreAllNodesSuccess Uses

func (s *Sensor) AreAllNodesSuccess(nodeType NodeType) bool

AreAllNodesSuccess determines if all nodes of the given type have completed successfully

func (*Sensor) DeepCopy Uses

func (in *Sensor) DeepCopy() *Sensor

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

func (*Sensor) DeepCopyInto Uses

func (in *Sensor) DeepCopyInto(out *Sensor)

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

func (*Sensor) DeepCopyObject Uses

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

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

func (*Sensor) IsComplete Uses

func (s *Sensor) IsComplete() bool

IsComplete determines if the sensor has reached an end state

func (*Sensor) NodeID Uses

func (s *Sensor) NodeID(name string) string

NodeID creates a deterministic node ID based on a node name we support 3 kinds of "nodes" - sensors, events, triggers each should pass it's name field

type SensorList Uses

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

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

func (*SensorList) DeepCopy Uses

func (in *SensorList) DeepCopy() *SensorList

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

func (*SensorList) DeepCopyInto Uses

func (in *SensorList) DeepCopyInto(out *SensorList)

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

func (*SensorList) DeepCopyObject Uses

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

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

type SensorResources Uses

type SensorResources struct {
    // Deployment holds the metadata of the deployment for the sensor
    Deployment *metav1.ObjectMeta `json:"deployment" protobuf:"bytes,1,name=deployment"`
    // Service holds the metadata of the service for the sensor
    // +optional
    Service *metav1.ObjectMeta `json:"service,omitempty" protobuf:"bytes,2,opt,name=service"`
}

SensorResources holds the metadata of the resources created for the sensor

func (*SensorResources) DeepCopy Uses

func (in *SensorResources) DeepCopy() *SensorResources

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

func (*SensorResources) DeepCopyInto Uses

func (in *SensorResources) DeepCopyInto(out *SensorResources)

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

type SensorSpec Uses

type SensorSpec struct {
    // +listType=dependencies
    // Dependencies is a list of the events that this sensor is dependent on.
    Dependencies []EventDependency `json:"dependencies" protobuf:"bytes,1,rep,name=dependencies"`
    // +listType=triggers
    // Triggers is a list of the things that this sensor evokes. These are the outputs from this sensor.
    Triggers []Trigger `json:"triggers" protobuf:"bytes,2,rep,name=triggers"`
    // Template is the pod specification for the sensor
    // +optional
    Template Template `json:"template,omitempty" protobuf:"bytes,3,opt,name=template"`
    // Subscription refers to the modes of events subscriptions for the sensor.
    // At least one of the types of subscription must be defined in order for sensor to be meaningful.
    Subscription *Subscription `json:"subscription" protobuf:"bytes,4,name=subscription"`
    // Circuit is a boolean expression of dependency groups
    Circuit string `json:"circuit,omitempty" protobuf:"bytes,5,rep,name=circuit"`
    // +listType=dependencyGroups
    // DependencyGroups is a list of the groups of events.
    DependencyGroups []DependencyGroup `json:"dependencyGroups,omitempty" protobuf:"bytes,6,rep,name=dependencyGroups"`
    // ErrorOnFailedRound if set to true, marks sensor state as `error` if the previous trigger round fails.
    // Once sensor state is set to `error`, no further triggers will be processed.
    ErrorOnFailedRound bool `json:"errorOnFailedRound,omitempty" protobuf:"bytes,7,opt,name=errorOnFailedRound"`
    // ServiceLabels to be set for the service generated
    ServiceLabels map[string]string `json:"serviceLabels,omitempty" protobuf:"bytes,11,rep,name=serviceLabels"`
    // ServiceAnnotations refers to annotations to be set
    // for the service generated
    ServiceAnnotations map[string]string `json:"serviceAnnotations,omitempty" protobuf:"bytes,9,rep,name=serviceAnnotations"`
}

SensorSpec represents desired sensor state

func (*SensorSpec) DeepCopy Uses

func (in *SensorSpec) DeepCopy() *SensorSpec

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

func (*SensorSpec) DeepCopyInto Uses

func (in *SensorSpec) DeepCopyInto(out *SensorSpec)

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

type SensorStatus Uses

type SensorStatus struct {
    // Phase is the high-level summary of the sensor.
    Phase NodePhase `json:"phase" protobuf:"bytes,1,opt,name=phase"`
    // StartedAt is the time at which this sensor was initiated
    StartedAt metav1.Time `json:"startedAt,omitempty" protobuf:"bytes,2,opt,name=startedAt"`
    // CompletedAt is the time at which this sensor was completed
    CompletedAt metav1.Time `json:"completedAt,omitempty" protobuf:"bytes,3,opt,name=completedAt"`
    // Message is a human readable string indicating details about a sensor 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 FSM of this sensor.
    Nodes map[string]NodeStatus `json:"nodes,omitempty" protobuf:"bytes,5,rep,name=nodes"`
    // TriggerCycleCount is the count of sensor's trigger cycle runs.
    TriggerCycleCount int32 `json:"triggerCycleCount,omitempty" protobuf:"varint,6,opt,name=triggerCycleCount"`
    // TriggerCycleState is the status from last cycle of triggers execution.
    TriggerCycleStatus TriggerCycleState `json:"triggerCycleStatus" protobuf:"bytes,7,opt,name=triggerCycleStatus"`
    // LastCycleTime is the time when last trigger cycle completed
    LastCycleTime metav1.Time `json:"lastCycleTime" protobuf:"bytes,8,opt,name=lastCycleTime"`
    // Resources refers to metadata of the resources created for the sensor
    Resources *SensorResources `json:"resources" protobuf:"bytes,9,name=resources"`
}

SensorStatus contains information about the status of a sensor.

func (*SensorStatus) DeepCopy Uses

func (in *SensorStatus) DeepCopy() *SensorStatus

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

func (*SensorStatus) DeepCopyInto Uses

func (in *SensorStatus) DeepCopyInto(out *SensorStatus)

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

type SlackTrigger Uses

type SlackTrigger struct {
    // Parameters is the list of key-value extracted from event's payload that are applied to
    // the trigger resource.
    // +listType=triggerParameters
    // +optional
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,1,rep,name=parameters"`
    // SlackToken refers to the Kubernetes secret that holds the slack token required to send messages.
    SlackToken *corev1.SecretKeySelector `json:"slackToken" protobuf:"bytes,2,name=slackToken"`
    // Namespace to read the password secret from.
    // This is required if the password secret selector is specified.
    // +optional
    Namespace string `json:"namespace,omitempty" protobuf:"bytes,3,opt,name=namespace"`
    // Channel refers to which Slack channel to send slack message.
    // +optional
    Channel string `json:"channel,omitempty" protobuf:"bytes,4,opt,name=channel"`
    // Message refers to the message to send to the Slack channel.
    // +optional
    Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"`
}

SlackTrigger refers to the specification of the slack notification trigger.

func (*SlackTrigger) DeepCopy Uses

func (in *SlackTrigger) DeepCopy() *SlackTrigger

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

func (*SlackTrigger) DeepCopyInto Uses

func (in *SlackTrigger) DeepCopyInto(out *SlackTrigger)

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

type StandardK8sTrigger Uses

type StandardK8sTrigger struct {
    // The unambiguous kind of this object - used in order to retrieve the appropriate kubernetes api client for this resource
    *metav1.GroupVersionResource `json:",inline" protobuf:"bytes,1,name=groupVersionResource"`
    // Source of the K8 resource file(s)
    Source *ArtifactLocation `json:"source" protobuf:"bytes,2,opt,name=source"`
    // Operation refers to the type of operation performed on the k8s resource.
    // Default value is Create.
    // +optional
    Operation KubernetesResourceOperation `json:"operation,omitempty" protobuf:"bytes,3,opt,name=operation"`
    // Parameters is the list of parameters that is applied to resolved K8s trigger object.
    // +listType=triggerParameters
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,4,rep,name=parameters"`
    // PatchStrategy controls the K8s object patching strategy when the trigger operation is specified as patch.
    // possible values:
    // "application/json-patch+json"
    // "application/merge-patch+json"
    // "application/strategic-merge-patch+json"
    // "application/apply-patch+yaml".
    // Defaults to "application/merge-patch+json"
    // +optional
    PatchStrategy k8stypes.PatchType `json:"patchStrategy,omitempty" protobuf:"bytes,5,opt,name=patchStrategy"`
    // LiveObject specifies whether the resource should be directly fetched from K8s instead
    // of being marshaled from the resource artifact. If set to true, the resource artifact
    // must contain the information required to uniquely identify the resource in the cluster,
    // that is, you must specify "apiVersion", "kind" as well as "name" and "namespace" meta
    // data.
    // Only valid for operation type `update`
    // +optional
    LiveObject bool `json:"liveObject,omitempty" protobuf:"bytes,6,opt,name=liveObject"`
}

StandardK8sTrigger is the standard Kubernetes resource trigger

func (*StandardK8sTrigger) DeepCopy Uses

func (in *StandardK8sTrigger) DeepCopy() *StandardK8sTrigger

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

func (*StandardK8sTrigger) DeepCopyInto Uses

func (in *StandardK8sTrigger) DeepCopyInto(out *StandardK8sTrigger)

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

type StatusPolicy Uses

type StatusPolicy struct {
    // Allow refers to the list of allowed response statuses. If the response status of the the trigger is within the list,
    // the trigger will marked as successful else it will result in trigger failure.
    // +listType=allowedStatuses
    Allow []int `json:"allow" protobuf:"bytes,1,name=allow"`
}

StatusPolicy refers to the policy used to check the state of the trigger using response status

func (*StatusPolicy) DeepCopy Uses

func (in *StatusPolicy) DeepCopy() *StatusPolicy

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

func (*StatusPolicy) DeepCopyInto Uses

func (in *StatusPolicy) DeepCopyInto(out *StatusPolicy)

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

type Subscription Uses

type Subscription struct {
    // HTTP refers to the HTTP subscription of events for the sensor.
    // +optional
    HTTP *HTTPSubscription `json:"http,omitempty" protobuf:"bytes,1,opt,name=http"`
    // NATS refers to the NATS subscription of events for the sensor
    // +optional
    NATS *NATSSubscription `json:"nats,omitempty" protobuf:"bytes,2,opt,name=nats"`
}

Subscription holds different modes of subscription available for sensor to consume events.

func (*Subscription) DeepCopy Uses

func (in *Subscription) DeepCopy() *Subscription

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

func (*Subscription) DeepCopyInto Uses

func (in *Subscription) DeepCopyInto(out *Subscription)

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

type TLSConfig Uses

type TLSConfig struct {
    // CACertPath refers the file path that contains the CA cert.
    CACertPath string `json:"caCertPath" protobuf:"bytes,1,name=caCertPath"`
    // ClientCertPath refers the file path that contains client cert.
    ClientCertPath string `json:"clientCertPath" protobuf:"bytes,2,name=clientCertPath"`
    // ClientKeyPath refers the file path that contains client key.
    ClientKeyPath string `json:"clientKeyPath" protobuf:"bytes,3,name=clientKeyPath"`
}

TLSConfig refers to TLS configuration for the HTTP client

func (*TLSConfig) DeepCopy Uses

func (in *TLSConfig) DeepCopy() *TLSConfig

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

func (*TLSConfig) DeepCopyInto Uses

func (in *TLSConfig) DeepCopyInto(out *TLSConfig)

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

type Template Uses

type Template struct {
    // ServiceAccountName is the name of the ServiceAccount to use to run gateway pod.
    // More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
    // +optional
    ServiceAccountName string `json:"serviceAccountName,omitempty" protobuf:"bytes,1,opt,name=serviceAccountName"`
    // Container is the main container image to run in the gateway pod
    // +optional
    Container *corev1.Container `json:"container,omitempty" protobuf:"bytes,2,opt,name=container"`
    // Volumes is a list of volumes that can be mounted by containers in a workflow.
    // +patchStrategy=merge
    // +patchMergeKey=name
    // +optional
    Volumes []corev1.Volume `json:"volumes,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,3,opt,name=volumes"`
    // SecurityContext holds pod-level security attributes and common container settings.
    // Optional: Defaults to empty.  See type description for default values of each field.
    // +optional
    SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty" protobuf:"bytes,4,opt,name=securityContext"`
    // Spec holds the sensor deployment spec.
    // DEPRECATED: Use Container instead.
    Spec *corev1.PodSpec `json:"spec,omitempty" protobuf:"bytes,5,opt,name=spec"`
}

Template holds the information of a sensor deployment template

func (*Template) DeepCopy Uses

func (in *Template) DeepCopy() *Template

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

func (*Template) DeepCopyInto Uses

func (in *Template) DeepCopyInto(out *Template)

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

type TimeFilter Uses

type TimeFilter struct {
    // Start is the beginning of a time window.
    // Before this time, events for this event are ignored and
    // format is hh:mm:ss
    Start string `json:"start,omitempty" protobuf:"bytes,1,opt,name=start"`
    // StopPattern is the end of a time window.
    // After this time, events for this event are ignored and
    // format is hh:mm:ss
    Stop string `json:"stop,omitempty" protobuf:"bytes,2,opt,name=stop"`
}

TimeFilter describes a window in time. DataFilters out event events that occur outside the time limits. In other words, only events that occur after Start and before Stop will pass this filter.

func (*TimeFilter) DeepCopy Uses

func (in *TimeFilter) DeepCopy() *TimeFilter

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

func (*TimeFilter) DeepCopyInto Uses

func (in *TimeFilter) DeepCopyInto(out *TimeFilter)

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

type Trigger Uses

type Trigger struct {
    // Template describes the trigger specification.
    Template *TriggerTemplate `json:"template" protobuf:"bytes,1,name=template"`
    // +listType=templateParameters
    // Parameters is the list of parameters applied to the trigger template definition
    Parameters []TriggerParameter `json:"parameters,omitempty" protobuf:"bytes,2,rep,name=parameters"`
    // Policy to configure backoff and execution criteria for the trigger
    Policy *TriggerPolicy `json:"policy" protobuf:"bytes,3,opt,name=policy"`
}

Trigger is an action taken, output produced, an event created, a message sent

func (*Trigger) DeepCopy Uses

func (in *Trigger) DeepCopy() *Trigger

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

func (*Trigger) DeepCopyInto Uses

func (in *Trigger) DeepCopyInto(out *Trigger)

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

type TriggerCycleState Uses

type TriggerCycleState string

TriggerCycleState is the label for the state of the trigger cycle

const (
    TriggerCycleSuccess TriggerCycleState = "Success" // all triggers are successfully executed
    TriggerCycleFailure TriggerCycleState = "Failure" // one or more triggers failed
)

possible values of trigger cycle states

type TriggerParameter Uses

type TriggerParameter struct {
    // Src contains a source reference to the value of the parameter from a dependency
    Src *TriggerParameterSource `json:"src" protobuf:"bytes,1,name=src"`
    // Dest is the JSONPath of a resource key.
    // A path is a series of keys separated by a dot. The colon character can be escaped with '.'
    // The -1 key can be used to append a value to an existing array.
    // See https://github.com/tidwall/sjson#path-syntax for more information about how this is used.
    Dest string `json:"dest" protobuf:"bytes,2,name=dest"`
    // Operation is what to do with the existing value at Dest, whether to
    // 'prepend', 'overwrite', or 'append' it.
    Operation TriggerParameterOperation `json:"operation,omitempty" protobuf:"bytes,3,opt,name=operation"`
}

TriggerParameter indicates a passed parameter to a service template

func (*TriggerParameter) DeepCopy Uses

func (in *TriggerParameter) DeepCopy() *TriggerParameter

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

func (*TriggerParameter) DeepCopyInto Uses

func (in *TriggerParameter) DeepCopyInto(out *TriggerParameter)

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

type TriggerParameterOperation Uses

type TriggerParameterOperation string

TriggerParameterOperation represents how to set a trigger destination resource key

const (
    // TriggerParameterOpNone is the zero value of TriggerParameterOperation
    TriggerParameterOpNone TriggerParameterOperation = ""
    // TriggerParameterOpAppend means append the new value to the existing
    TriggerParameterOpAppend TriggerParameterOperation = "append"
    // TriggerParameterOpOverwrite means overwrite the existing value with the new
    TriggerParameterOpOverwrite TriggerParameterOperation = "overwrite"
    // TriggerParameterOpPrepend means prepend the new value to the existing
    TriggerParameterOpPrepend TriggerParameterOperation = "prepend"
)

type TriggerParameterSource Uses

type TriggerParameterSource struct {
    // DependencyName refers to the name of the dependency. The event which is stored for this dependency is used as payload
    // for the parameterization. Make sure to refer to one of the dependencies you have defined under Dependencies list.
    DependencyName string `json:"dependencyName" protobuf:"bytes,1,opt,name=dependencyName"`
    // ContextKey is the JSONPath of the event's (JSON decoded) context key
    // ContextKey is a series of keys separated by a dot. A key may contain wildcard characters '*' and '?'.
    // To access an array value use the index as the key. The dot and wildcard characters can be escaped with '\\'.
    // See https://github.com/tidwall/gjson#path-syntax for more information on how to use this.
    ContextKey string `json:"contextKey,omitempty" protobuf:"bytes,2,opt,name=contextKey"`
    // ContextTemplate is a go-template for extracting a string from the event's context.
    // If a ContextTemplate is provided with a ContextKey, the template will be evaluated first and fallback to the ContextKey.
    // The templating follows the standard go-template syntax as well as sprig's extra functions.
    // See https://pkg.go.dev/text/template and https://masterminds.github.io/sprig/
    ContextTemplate string `json:"contextTemplate,omitempty" protobuf:"bytes,3,opt,name=contextTemplate"`
    // DataKey is the JSONPath of the event's (JSON decoded) data key
    // DataKey is a series of keys separated by a dot. A key may contain wildcard characters '*' and '?'.
    // To access an array value use the index as the key. The dot and wildcard characters can be escaped with '\\'.
    // See https://github.com/tidwall/gjson#path-syntax for more information on how to use this.
    DataKey string `json:"dataKey,omitempty" protobuf:"bytes,3,opt,name=dataKey"`
    // DataTemplate is a go-template for extracting a string from the event's data.
    // If a DataTemplate is provided with a DataKey, the template will be evaluated first and fallback to the DataKey.
    // The templating follows the standard go-template syntax as well as sprig's extra functions.
    // See https://pkg.go.dev/text/template and https://masterminds.github.io/sprig/
    DataTemplate string `json:"dataTemplate,omitempty" protobuf:"bytes,4,opt,name=dataTemplate"`
    // Value is the default literal value to use for this parameter source
    // This is only used if the DataKey is invalid.
    // If the DataKey is invalid and this is not defined, this param source will produce an error.
    Value *string `json:"value,omitempty" protobuf:"bytes,5,opt,name=value"`
}

TriggerParameterSource defines the source for a parameter from a event event

func (*TriggerParameterSource) DeepCopy Uses

func (in *TriggerParameterSource) DeepCopy() *TriggerParameterSource

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

func (*TriggerParameterSource) DeepCopyInto Uses

func (in *TriggerParameterSource) DeepCopyInto(out *TriggerParameterSource)

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

type TriggerPolicy Uses

type TriggerPolicy struct {
    // K8sResourcePolicy refers to the policy used to check the state of K8s based triggers using using labels
    K8s *K8sResourcePolicy `json:"k8s,omitempty" protobuf:"bytes,1,opt,name=k8s"`
    // Status refers to the policy used to check the state of the trigger using response status
    Status *StatusPolicy `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"`
}

TriggerPolicy dictates the policy for the trigger retries

func (*TriggerPolicy) DeepCopy Uses

func (in *TriggerPolicy) DeepCopy() *TriggerPolicy

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

func (*TriggerPolicy) DeepCopyInto Uses

func (in *TriggerPolicy) DeepCopyInto(out *TriggerPolicy)

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

type TriggerSwitch Uses

type TriggerSwitch struct {
    // +listType=any
    // Any acts as a OR operator between dependencies
    Any []string `json:"any,omitempty" protobuf:"bytes,1,rep,name=any"`
    // +listType=all
    // All acts as a AND operator between dependencies
    All []string `json:"all,omitempty" protobuf:"bytes,2,rep,name=all"`
}

TriggerSwitch describes condition which must be satisfied in order to execute a trigger. Depending upon condition type, status of dependency groups is used to evaluate the result.

func (*TriggerSwitch) DeepCopy Uses

func (in *TriggerSwitch) DeepCopy() *TriggerSwitch

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

func (*TriggerSwitch) DeepCopyInto Uses

func (in *TriggerSwitch) DeepCopyInto(out *TriggerSwitch)

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

type TriggerTemplate Uses

type TriggerTemplate struct {
    // Name is a unique name of the action to take.
    Name string `json:"name" protobuf:"bytes,1,name=name"`
    // Switch is the condition to execute the trigger.
    // +optional
    Switch *TriggerSwitch `json:"switch,omitempty" protobuf:"bytes,2,opt,name=switch"`
    // StandardK8sTrigger refers to the trigger designed to create or update a generic Kubernetes resource.
    // +optional
    K8s *StandardK8sTrigger `json:"k8s,omitempty" protobuf:"bytes,3,opt,name=k8s"`
    // ArgoWorkflow refers to the trigger that can perform various operations on an Argo workflow.
    // +optional
    ArgoWorkflow *ArgoWorkflowTrigger `json:"argoWorkflow,omitempty" protobuf:"bytes,4,opt,name=argoWorkflow"`
    // HTTP refers to the trigger designed to dispatch a HTTP request with on-the-fly constructable payload.
    // +optional
    HTTP *HTTPTrigger `json:"http,omitempty" protobuf:"bytes,4,opt,name=http"`
    // AWSLambda refers to the trigger designed to invoke AWS Lambda function with with on-the-fly constructable payload.
    // +optional
    AWSLambda *AWSLambdaTrigger `json:"awsLambda,omitempty" protobuf:"bytes,6,opt,name=awsLambda"`
    // CustomTrigger refers to the trigger designed to connect to a gRPC trigger server and execute a custom trigger.
    // +optional
    CustomTrigger *CustomTrigger `json:"custom,omitempty" protobuf:"bytes,7,opt,name=custom"`
    // Kafka refers to the trigger designed to place messages on Kafka topic.
    // +optional.
    Kafka *KafkaTrigger `json:"kafka,omitempty" protobuf:"bytes,8,opt,name=kafka"`
    // NATS refers to the trigger designed to place message on NATS subject.
    // +optional.
    NATS *NATSTrigger `json:"nats,omitempty" protobuf:"bytes,9,opt,name=nats"`
    // Slack refers to the trigger designed to send slack notification message.
    // +optional
    Slack *SlackTrigger `json:"slack,omitempty" protobuf:"bytes,10,opt,name=slack"`
    // OpenWhisk refers to the trigger designed to invoke OpenWhisk action.
    // +optional
    OpenWhisk *OpenWhiskTrigger `json:"openWhisk,omitempty" protobuf:"bytes,11,opt,name=openWhisk"`
}

TriggerTemplate is the template that describes trigger specification.

func (*TriggerTemplate) DeepCopy Uses

func (in *TriggerTemplate) DeepCopy() *TriggerTemplate

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

func (*TriggerTemplate) DeepCopyInto Uses

func (in *TriggerTemplate) DeepCopyInto(out *TriggerTemplate)

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

type URLArtifact Uses

type URLArtifact struct {
    // Path is the complete URL
    Path string `json:"path" protobuf:"bytes,1,name=path"`
    // VerifyCert decides whether the connection is secure or not
    VerifyCert bool `json:"verifyCert,omitempty" protobuf:"bytes,2,opt,name=verifyCert"`
}

URLArtifact contains information about an minio at an http endpoint.

func (*URLArtifact) DeepCopy Uses

func (in *URLArtifact) DeepCopy() *URLArtifact

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

func (*URLArtifact) DeepCopyInto Uses

func (in *URLArtifact) DeepCopyInto(out *URLArtifact)

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

Package v1alpha1 imports 14 packages (graph) and is imported by 38 packages. Updated 2020-05-26. Refresh now. Tools for package owners.