Writing an eventing source the hard way

This tutorial walks you through creating an event source for Knative Eventing “the hard way”, without using helper objects like ContainerSource ( Go to ContainerSource sample to see how to create an event source using ContainerSource ).

After completing through this tutorial, you'll have a basic working event source controller and dispatcher (TODO) based on the Kubebuilder framework.

Just want to see the code? The reference project is https://github.com/grantr/sample-source.

Target Audience

The target audience is already familiar with Kubernetes and Go development and wants to develop a new event source for use with Knative Eventing.

Before you begin

You'll need these tools installed:

Steps

  1. Bootstrap Project
  2. Define The Source Resource
  3. Reconcile Sources
  4. Publish to Cluster
  5. (TODO) Dispatching Events

Alternatives

Kubebuilder not your thing? Prefer the easy way? Check out these alternatives.