So you want to hack on Knative Eventing Kafka Broker? Yay! Please refer to Knative's overall contribution guidelines to find out how you can help.
You need to install:
ko
- (required)Go
- (required)- check go <version> for the required Go version used in this project
Java
(we recommend anopenjdk
build) - (required)- check java.version maven property for the required Java version used in this project
GNU sed
- (required)- To install on macOS, run
brew install gnu-sed
. Follow the brew post-install instructions to replace the default macOS sed with GNU sed. If you miss the post-install message, runbrew info gnu-sed
for instructions on making GNU sed the default.
- To install on macOS, run
protoc
- To install protoc, you can follow https://grpc.io/docs/protoc-installation/
protoc-gen-go
- To install
protoc-gen-go
rungo install google.golang.org/protobuf/cmd/protoc-gen-go@[version]
- To install
Note: See protoc
and protoc-gen-go
current used versions
Requirements signaled as "optional" are not required, but it's highly recommended having them installed. If a specific version of a requirement is not explicitly defined above, any version will work during development.
To check out this repository:
- Create your own fork of this repository:
- Clone it to your machine:
mkdir -p ${GOPATH}/src/knative.dev
cd ${GOPATH}/src/knative.dev
git clone git@github.com:knative/eventing.git # clone eventing repo
git clone git@github.com:${YOUR_GITHUB_USERNAME}/eventing-kafka-broker.git
cd eventing-kafka-broker
git remote add upstream https://github.com/knative-extensions/eventing-kafka-broker.git
git remote set-url --push upstream no_push
Adding the upstream
remote sets you up nicely for regularly
syncing your fork.
Once you reach this point you are ready to do a full build and deploy as follows.