You need a working Go environment (1.11 or newer).
$ go get github.com/osrg/gobgp/...
Now ready to modify the code and build two binaries, cmd/gobgp
and cmd/gobgpd
.
GoBGP releases are time-based. Minor releases will occur every month (Semantic Versioning). Major releases occur only when absolutely necessary.
The GoBGP project adopts Standard Go Project Layout.
If you change the gRPC API, generate api/gobgp.pb.go
in the following way:
$ protoc -I ~/protobuf/src -I ${GOBGP}/api --go_out=plugins=grpc:${GOBGP}/api \
${GOBGP}/api/gobgp.proto ${GOBGP}/api/attribute.proto ${GOBGP}/api/capability.proto