resources

package
v0.43.1 Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2024 License: Apache-2.0 Imports: 18 Imported by: 49

Documentation

Index

Constants

View Source
const (
	CoreAPIVersion        = "v1"
	EventingAPIVersion    = "eventing.knative.dev/v1"
	MessagingAPIVersion   = "messaging.knative.dev/v1"
	FlowsAPIVersion       = "flows.knative.dev/v1"
	ServingAPIVersion     = "serving.knative.dev/v1"
	SourcesV1A2APIVersion = "sources.knative.dev/v1alpha2"
	SourcesV1B1APIVersion = "sources.knative.dev/v1beta1"
	SourcesV1APIVersion   = "sources.knative.dev/v1"
)

API versions for the resources.

View Source
const (
	SubscriptionKind string = "Subscription"

	BrokerKind  string = "Broker"
	TriggerKind string = "Trigger"
)

Kind for eventing resources.

View Source
const (
	InMemoryChannelKind string = "InMemoryChannel"

	ChannelKind  string = "Channel"
	SequenceKind string = "Sequence"
	ParallelKind string = "Parallel"
)

Kind for messaging resources.

View Source
const (
	FlowsSequenceKind string = "Sequence"
	FlowsParallelKind string = "Parallel"
)

Kind for flows resources.

View Source
const (
	ApiServerSourceKind string = "ApiServerSource"
	PingSourceKind      string = "PingSource"
)

Kind for sources resources that exist in Eventing core

View Source
const (
	PerfConsumerService   = "perf-consumer"
	PerfAggregatorService = "perf-aggregator"
	PerfServiceAccount    = "perf-eventing"
)
View Source
const (
	KServiceKind string = "Service"
)

Kind for Knative resources.

View Source
const (
	ServiceKind string = "Service"
)

Kind for core Kubernetes resources.

Variables

View Source
var (
	// KServicesGVR is GroupVersionResource for Knative Service
	KServicesGVR = schema.GroupVersionResource{
		Group:    "serving.knative.dev",
		Version:  "v1",
		Resource: "services",
	}
	// KServiceType is type of Knative Service
	KServiceType = metav1.TypeMeta{
		Kind:       "Service",
		APIVersion: KServicesGVR.GroupVersion().String(),
	}
)

Functions

func Broker

func Broker(name string, options ...BrokerOption) *eventingv1.Broker

Broker returns a v1 Broker.

func ClusterRoleBinding

func ClusterRoleBinding(saName, saNamespace, crName, crbName string) *rbacv1.ClusterRoleBinding

ClusterRoleBinding creates a Kubernetes ClusterRoleBinding with the given ServiceAccount name and namespace, ClusterRole name, ClusterRoleBinding name.

func ConfigMap added in v0.13.0

func ConfigMap(name, namespace string, data map[string]string) *corev1.ConfigMap

ConfigMap returns a ConfigMap.

func Delivery

func Delivery(options ...DeliveryOption) *eventingduckv1beta1.DeliverySpec

Delivery returns a DeliverySpec.

func HelloWorldPod

func HelloWorldPod(name string, options ...PodOption) *corev1.Pod

HelloWorldPod creates a Pod that logs "Hello, World!".

func KServiceDeploymentName added in v0.15.0

func KServiceDeploymentName(client ServingClient, name, namespace string) (string, bool, error)

KServiceDeploymentName returns a name of deployment of Knative Service that receives 100% of traffic. If ksvc isn't ready yet second return value will be false.

func KServiceRef

func KServiceRef(name string) *corev1.ObjectReference

KServiceRef returns a Knative Service ObjectReference for a given Service name.

func KnativeRefForBroker added in v0.14.0

func KnativeRefForBroker(name, namespace string) *duckv1.KReference

func KnativeRefForKservice added in v0.15.0

func KnativeRefForKservice(name, namespace string) *duckv1.KReference

KnativeRefForKservice return a duck reference for Knative Service

func KnativeRefForService added in v0.13.0

func KnativeRefForService(name, namespace string) *duckv1.KReference

func PerformanceAggregatorService

func PerformanceAggregatorService() *corev1.Service

func PerformanceConsumerService

func PerformanceConsumerService() *corev1.Service

func PerformanceImageAggregatorPod

func PerformanceImageAggregatorPod(expectedRecords int, publish bool, additionalArgs ...string) *corev1.Pod

func PerformanceImageReceiverPod

func PerformanceImageReceiverPod(imageName string, pace string, warmup string, aggregatorHostname string, additionalArgs ...string) *corev1.Pod

func Role

func Role(rName string, options ...RoleOption) *rbacv1.Role

EventWatcherRole creates a Kubernetes Role

func RoleBinding

func RoleBinding(saName, saNamespace, rKind, rName, rbName, rbNamespace string) *rbacv1.RoleBinding

RoleBinding creates a Kubernetes RoleBinding with the given ServiceAccount name and namespace, Role or ClusterRole Kind, name, RoleBinding name and namespace.

func Service

func Service(name string, selector map[string]string, ports []corev1.ServicePort) *corev1.Service

Service creates a Kubernetes Service with the given name, selector and ports

func ServiceAccount

func ServiceAccount(name, namespace string) *corev1.ServiceAccount

ServiceAccount creates a Kubernetes ServiceAccount with the given name and namespace.

func ServiceDefaultHTTP

func ServiceDefaultHTTP(name string, selector map[string]string) *corev1.Service

Service creates a Kubernetes Service with the given name, namespace, and selector. Port 8080 is set as the target port.

func ServiceKRef added in v0.14.0

func ServiceKRef(name string) *v1.KReference

ServiceKRef returns a Service ObjectReference for a given Service name.

func ServiceRef

func ServiceRef(name string) *corev1.ObjectReference

ServiceRef returns a Service ObjectReference for a given Service name.

func Subscription

func Subscription(
	name, channelName string,
	channelTypeMeta *metav1.TypeMeta,
	options ...SubscriptionOption,
) *messagingv1.Subscription

SubscriptionV1 returns a v1 Subscription.

func Trigger

func Trigger(name string, options ...TriggerOption) *eventingv1.Trigger

Trigger returns a v1 Trigger.

Types

type BrokerOption

type BrokerOption func(*eventingv1.Broker)

BrokerOption enables further configuration of a v1 Broker.

func WithBrokerClassForBroker added in v0.14.0

func WithBrokerClassForBroker(brokerClass string) BrokerOption

WithBrokerClassForBroker returns a function that adds a brokerClass annotation to the given v1 Broker.

func WithConfigForBroker added in v0.23.0

func WithConfigForBroker(config *duckv1.KReference) BrokerOption

func WithConfigMapForBrokerConfig added in v0.15.0

func WithConfigMapForBrokerConfig() BrokerOption

WithConfigMapForBrokerConfig returns a function that configures the ConfigMap for the Spec.Config for a given Broker. Note that the CM must exist and has to be in the same namespace as the Broker and have the same Name. Typically you'd do this by calling client.CreateBrokerConfigMapOrFail and then call this method. If those don't apply to your ConfigMap, look at WithConfigForBrokerV1Beta1

func WithCustomAnnotationForBroker added in v0.32.0

func WithCustomAnnotationForBroker(annotationKey, annotationValue string) BrokerOption

WithCustomAnnotationForBroker returns a function that adds a custom annotation to the given v1 Broker.

func WithDeliveryForBroker

func WithDeliveryForBroker(delivery *eventingduckv1.DeliverySpec) BrokerOption

WithDeliveryForBroker returns a function that adds a Delivery for the given v1 Broker.

type DeliveryOption

type DeliveryOption func(*eventingduckv1beta1.DeliverySpec)

DeliveryOption enables further configuration of DeliverySpec.

func WithDeadLetterSinkForDelivery

func WithDeadLetterSinkForDelivery(name string) DeliveryOption

WithDeadLetterSinkForDelivery returns an options that adds a DeadLetterSink for the given DeliverySpec.

type KServiceRoute added in v0.15.0

type KServiceRoute struct {
	TrafficPercent uint8
	DeploymentName string
}

KServiceRoute represents ksvc route, so how much traffic is routed to given deployment

func KServiceRoutes added in v0.15.0

func KServiceRoutes(client ServingClient, name, namespace string) ([]KServiceRoute, bool, error)

KServiceRoutes gets routes of given ksvc. If ksvc isn't ready yet second return value will be false.

type MetaResource

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

MetaResource includes necessary meta data to retrieve the generic Kubernetes resource.

func NewMetaResource

func NewMetaResource(name, namespace string, typemeta *metav1.TypeMeta) *MetaResource

NewMetaResource returns a MetaResource built from the given name, namespace and typemeta.

type MetaResourceList

type MetaResourceList struct {
	metav1.TypeMeta `json:",inline"`
	Namespace       string
}

MetaResourceList includes necessary meta data to retrieve the generic Kubernetes resource list.

func NewMetaResourceList

func NewMetaResourceList(namespace string, typemeta *metav1.TypeMeta) *MetaResourceList

NewMetaResourceList returns a MetaResourceList built from the given namespace and typemeta.

type PodOption

type PodOption func(*corev1.Pod)

PodOption enables further configuration of a Pod.

func WithLabelsForPod

func WithLabelsForPod(labels map[string]string) PodOption

WithLabelsForPod returns an option setting the pod labels

type RoleOption

type RoleOption func(*rbacv1.Role)

Option enables further configuration of a Role.

func WithRuleForRole

func WithRuleForRole(rule *rbacv1.PolicyRule) RoleOption

WithRuleForRole is a Role Option for adding a rule

type ServingClient added in v0.15.0

type ServingClient struct {
	Kube    kubernetes.Interface
	Dynamic dynamic.Interface
}

ServingClient holds clients required to get serving resources

type SubscriptionOption

type SubscriptionOption func(*messagingv1.Subscription)

SubscriptionOption enables further configuration of a v1 Subscription.

func WithDeadLetterSinkForSubscription

func WithDeadLetterSinkForSubscription(name string) SubscriptionOption

WithDeadLetterSinkForSubscription returns an options that adds a DeadLetterSink for the given v1 Subscription.

func WithReplyForSubscription

func WithReplyForSubscription(name string, typemeta *metav1.TypeMeta) SubscriptionOption

WithReplyForSubscription returns an options that adds a ReplyStrategy for the given v1 Subscription.

func WithSubscriberForSubscription

func WithSubscriberForSubscription(name string) SubscriptionOption

WithSubscriberForSubscription returns an option that adds a Subscriber for the given v1 Subscription.

func WithURIForSubscription added in v0.40.0

func WithURIForSubscription(uri *apis.URL) SubscriptionOption

WithURIForSubscription returns an option that adds a URI for the given v1 Subscription

type TriggerOption

type TriggerOption func(*eventingv1.Trigger)

TriggerOption enables further configuration of a v1 Trigger.

func WithAttributesTriggerFilter

func WithAttributesTriggerFilter(eventSource, eventType string, extensions map[string]interface{}) TriggerOption

WithAttributesTriggerFilter returns an option that adds a TriggerFilter with Attributes for the given Trigger.

func WithBroker

func WithBroker(name string) TriggerOption

WithBroker returns an option that adds a broker for the given Trigger.

func WithDependencyAnnotationTrigger added in v0.13.1

func WithDependencyAnnotationTrigger(dependencyAnnotation string) TriggerOption

WithDependencyAnnotationTrigger returns an option that adds a dependency annotation to the given Trigger.

func WithSubscriberDestination added in v0.24.0

func WithSubscriberDestination(destFactory func(t *eventingv1.Trigger) duckv1.Destination) TriggerOption

WithSubscriberDestination returns an option that adds a Subscriber for given duckv1.Destination.

func WithSubscriberKServiceRefForTrigger

func WithSubscriberKServiceRefForTrigger(name string) TriggerOption

WithSubscriberKServiceRefForTrigger returns an option that adds a Subscriber Knative Service Ref for the given Trigger.

func WithSubscriberServiceRefForTrigger

func WithSubscriberServiceRefForTrigger(name string) TriggerOption

WithSubscriberServiceRefForTrigger returns an option that adds a Subscriber Knative Service Ref for the given v1 Trigger.

func WithSubscriberURIForTrigger

func WithSubscriberURIForTrigger(uri string) TriggerOption

WithSubscriberURIForTrigger returns an option that adds a Subscriber URI for the given v1 Trigger.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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