-
Notifications
You must be signed in to change notification settings - Fork 81
Development
Following sections describe how to obtain dependencies for building OVPM.
You should set up Golang >=v1.16 on your system.
You should have the latest protobuf compiler together with Google development headers and types present on your system.
# on Fedora 33
$ dnf install -y protobuf-compiler protobuf-staticAlso you should have the latest go, grpc, grpc-gateway and openapiv2 proto compiler plugins on your system.
# on Go 1.16
$ go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
$ go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
$ go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway@latest
$ go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2@latestYou should have the latest Yarn package manager on your system for building the WebUI.
# on Fedora 33
$ dnf -y yarnpkg nodejsYou should have go-bindata on your system in order to be able to bundle assets and static files into the ovpmd server binary.
$ go install github.com/kevinburke/go-bindata/go-bindata@latestYou should have the latest nfpm on your system in order to be able to create OS distributions.
$ go install github.com/goreleaser/nfpm/cmd/nfpm@latestIn order to bundle all assets and statics into a go package you can invoke $ make bundle.
In order to build and output binaries to the ./bin/ directory you can invoke $ make build.
In order to create DEB and RPM distributions to ./dist/ directory you can invoke $ make dist.