天天看點

PowerProto gRPC工具鍊的一鍵的一鍵安裝與版本控制

PowerProto主要用于解決下面三個問題:

降低gRPC的使用門檻與使用成本。

解決protoc以及其相關插件(比如protoc-gen-go、protoc-gen-grpc-gateway)的版本控制問題。

高效管理proto的編譯,實作多平台相容、一鍵安裝與編譯。

功能

實作protoc的一鍵安裝與多版本管理。

實作protoc相關插件(比如protoc-gen-go)的一鍵安裝與多版本管理。

通過配置檔案管理proto的編譯,而非shell腳本,提高可讀性與相容性。

引導式生成配置檔案,跨平台相容,一份配置在多個平台均可以實作一鍵編譯。

支援批量、遞歸編譯proto檔案,提高效率。

跨平台支援PostAction,可以在編譯完成之後執行一些正常操作(比如替換掉所有生成檔案中的"omitempty")。

支援PostShell,在編譯完成之後執行特定的shell腳本。

支援 google api, gogo protobuf 等的一鍵安裝與版本控制。

安裝與依賴

目前版本的 PowerProto 依賴 go(>=1.16) 以及 git(未來可能會直接使用CDN拉取建構好的二進制),請確定運作環境中包含這兩個指令。

protoc的下載下傳源是Github,PowerProto在下載下傳protoc時尊重 HTTP_PROXY、HTTPS_PROXY環境變量,如果遇到網絡問題,請自行配置代理。

在查詢protoc的版本清單時,會對github.com使用git ls-remote,如果遇到網絡問題,請自行為git配置代理。

在目前版本,下載下傳和查詢插件版本均依賴go指令,是以如果遇到網絡問題,請自行配置 GOPROXY環境變量。

預設會使用 使用者目錄/.powerproto作為安裝目錄,用于放置下載下傳好的各種插件以及全局配置,可以通過 POWERPROTO_HOME環境變量來修改安裝目錄。

如果認為powerproto名字太長,可以通過alias成一個更簡單的名字來提高輸入效率,比如沒有人會介意你叫它pp。

一、通過Go進行安裝

直接執行下面的指令即可進行安裝:

go install github.com/storyicon/powerproto/cmd/[email protected]

二、開箱即用版本

可以通過  Github Release Page 下載下傳開箱即用版本。

GitHub - storyicon/powerproto: 🎉 An awesome version control tool for protoc and its related plugins.

繼續閱讀