riff is for functions
Installation of the latest release
See Getting Started for how to install riff with a Helm Chart, and how to install the riff CLI.
Developer installation
See Installing the riff development version using Helm to install the latest unreleased builds (git master branch) of riff.
Manual build
This is the best option if you want to modify the riff components.
Prerequisites
You need:
-
A working Go environment
-
A local 1.7+ Kubernetes cluster
-
A docker daemon
To build images with docker in minikube use
eval $(minikube docker-env)
Get the main riff repo and install the CLI
go get github.com/projectriff/riff
Build the riff core components
cd $(go env GOPATH)/src/github.com/projectriff/riff
make dockerize
Setup for development
If you want to quickly standup a development copy of riff:
make dev-setup
Which will:
-
Create a
riff-system
namespace -
Deploy a non-replicated Kafka broker
-
Install riff CRDs and system components
Deploying with RBAC
If your cluster has RBAC enabled, then you also need to create a Role and a RoleBinding:
kubectl apply -n riff-system -f config/rbac
To tear it all down
Once you’re done playing with riff (see samples below), you can destroy everything created above by running:
make teardown
Running the tests
To run all riff’s unit and integration tests, ensure Kafka (with auto.create.topics.enable=true
, which
is the default) and Zookeeper are running locally, then issue:
KAFKA_BROKERS=localhost:9092 KAFKA_BROKER=localhost:9092 make test
Contributing to riff
Please refer to the Contributors' Guide.
Maintaining riff
Please refer to the Maintainers' Guide.