Rei Shimizu (@_iy4)01-08-2020今日から始めるEnvoyの開発
View Slide
Agenda● 自己紹介● Issueを見つける● 開発環境を整える● テストを書く● コードフォーマットを整える● PRを作ってレビューを受ける2
自己紹介● 大学生 / ソフトウェアエンジニア @ Tetrate.io● Twitter : @_iy43
✨駆け出しコントリビューター ✨
issueを見つけるたくさんある
たくさんありすぎ....どうやって選ぶ?
ラベルの活用● Issueはラベルでカテゴライズされている● 初めてのコントリビュートは Beginner ラベル から探すのがおすすめ● Help Wanted ラベル がつけられているものを潰すと喜ばれる
Help Wanted かつ Beginner な issue は結構たくさんある
issueの詳細が分からなければ...● Slack / issue でどんどん聞けばいい● いろいろ教えてくれる
開発環境を整える● DEVELOPER.md を読みましょう● 書いてあるとおりにやればある程度環境は整う● リモートインスタンスで開発したければ https://github.com/tetratelabs/getenvoy-package/wiki/Envoy-dev-env-setup
Coding...
テストを書く● テストを書いて通さないと基本レビューが貰えない● Envoy では GoogleTest / GoogleMock を使っている● 追加した機能によっては統合テストを書かないとマージされない
コードフォーマットを確認する● push 時に pre-push hooks が走る● 大体なにかしら引っかかる● 指摘されたスクリプトを実行してフォーマットを修正しましょう
CIを通す● Envoy では Circle CI と Azure Pipelines が動く● チェック項目は結構多い● 慣れないとなかなか全項目通せない
レビューを受ける● PRとしての体裁が整ったらレビュアーが見にきます● ドキュメントの修正とかでなければそんなにすぐにマージされない● レビュアーの方々と結構議論することもある● かなり長期に渡って議論されているものも
Let’s Contribute!
We are hiring!