Retty Advent Calendar 2022 Part1の5日目は、Protocol Buffersの定義ファイルに対してlintやフォーマット、破壊的変更のチェックを Buf でする方法を紹介します。 Part1: adventar.org Part2: adventar.org はじめに Rettyではマイクロサービス化を進めており、サービス間の通信の大半にgRPCを利用しています。 gRPCとは、ローカルから別の場所(リモート)にある関数を呼び出して実行する仕組みであるRemote Procedure Call(RPC)を実現するためにGoogleが提案・開発したプロトコルで、この関数の定義や引数、戻り値をProtocol Buffersとよばれる言語で定義します。 Protocol Buffersの定義ファイルの拡張子が proto なので以降protoファイルと記述します