github.com/ConsenSys/Quorum@v20.10.0+incompatible/plugin/gen/gen.go (about) 1 // generate stub/mock files for plugins, documentation and unit tests for plugin interfaces defined in .proto files 2 // 3 // need to install: 4 // - protoc: 3.9.0+ 5 // - protoc-gen-go: 1.3.2+ 6 // - protoc-gen-doc: `go get -u github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc` 7 // - mockgen: `go get -u github.com/golang/mock/mockgen` 8 // - goimports: `go get -u golang.org/x/tools/cmd/goimports` 9 // 10 // go to terminal and run `go generate` from this directory 11 12 // generate stubs 13 //go:generate protoc -I ../../vendor/github.com/jpmorganchase/quorum-plugin-definitions -I ../../vendor --go_out=plugins=grpc:proto_common init.proto 14 15 // generate mocks for unit testing 16 //go:generate mockgen -package proto_common -destination proto_common/mock_init.go -source proto_common/init.pb.go 17 18 // fix fmt 19 //go:generate goimports -w ./ 20 21 // generate documentation 22 //go:generate protoc -I ../../vendor/github.com/jpmorganchase/quorum-plugin-definitions -I ../../vendor --doc_out=docs.markdown.tmpl,init_interface.md:../../docs/PluggableArchitecture/Plugins/ init.proto 23 //go:generate protoc -I ../../vendor/github.com/jpmorganchase/quorum-plugin-definitions -I ../../vendor --doc_out=docs.markdown.tmpl,interface.md:../../docs/PluggableArchitecture/Plugins/helloworld/ helloworld.proto 24 //go:generate protoc -I ../../vendor/github.com/jpmorganchase/quorum-plugin-definitions -I ../../vendor --doc_out=docs.markdown.tmpl,interface.md:../../docs/PluggableArchitecture/Plugins/security/ security.proto 25 //go:generate protoc -I ../../vendor/github.com/jpmorganchase/quorum-plugin-definitions -I ../../vendor --doc_out=docs.markdown.tmpl,interface.md:../../docs/PluggableArchitecture/Plugins/account/ account.proto 26 27 package gen