🐙

argo-helmでCODEOWNERSの一員になった話

2022/06/14に公開

これは何?

ArgoCDArgoWorkflowsのHelm Chartを管理しているargo-helmargo-cdargo-workflows に対するCODEOWNERSに加えて頂きました。これを記念して自身の振り返りをまとめました。

https://github.com/argoproj/argo-helm/pull/1319

きっかけ

業務でArgoCD / ArgoWorkflowを利用していることもありargo-helmは日常的に利用しているのですが、argo-workflows Helm Chart v0.15.0辺りでArgoWorkflowでの権限不足によるエラーを観測しました。

Helm Chart側の定義によるものなので「誰かが対応するのを待つのも良いけど、せっかく見つけたし直すかー」と思い立って修正PRを出したのが始まりでした。

https://github.com/argoproj/argo-helm/pull/1278

継続的なISSUE解決

初回の修正を機にISSUEを眺めることが度々あり、その際に意外にも自分でもシュッと対応できそうなものがあることに気づきました。例えば「特定リソースに対して任意のannotationを付与できるようにしてほしい」というISSUEです。

argo-helmはArgoCD / ArgoWorkflowなどのアップストリームのリソースを動かすためのHelm Chartです。Kubernetesの基本的な事項(特にRBAC)とアップストリーム側の基本的な仕様を(公式docを追いながら)ある程度把握することで実装を追えます。

もちろんダイナミックな改変は既存コードの経緯やアップストリーム側の詳細な仕様理解などが必要なため自分にはまだ手に負えませんが...、軽微な修正対応などには貢献できると感じました。

そこで既存リソースの軽微な拡張・修正関連のISSUEを率先して対応するようになりました。もちろん「出ているISSUEに対して全て真に受けてPRを作れば良い」という訳ではないので、「このISSUEは確かに対応した方が利用者は喜びそうだな」と思えるものをピックアップして対応しました。

もちろん自分が業務で利用しているツールなので便利になることで自分が恩恵を受けますが、それに加えて自分と同じようにこのプロジェクトを利用している人たちの役に立てているという感覚は新鮮でした。「場合によってはほんの数行手直しするだけで世界中の人から喜ばれる(大袈裟)と考えるとなかなかに面白いなー」と思いました。

CODEOWNERSに参加するための条件

(途中で知ったのですが)argo-helmの場合には以下のpinned ISSUEでCODEOWNERSに自己推薦する条件が記載されています(他のコミュニティでも同じように記載がありそう?)。

We could always do with more reviewers! If you’ve submitted some PRs, and maybe done a few reviewers, you can self-nominate by submitting a PR adding yourself to the CODEOWNERS file.

https://github.com/argoproj/argo-helm/issues/612

私はCODEOWNERSに自己推薦するまでに出したPRは10件程度でしたが、当時はまだ「もうちょっと継続できたら自己推薦してみようかなー」と思っていました。....が、メンテナーの方に「そろそろ自己推薦してみてもええんちゃう?」と言っていただいたのでアッサリ自己推薦に踏み切りました(笑)。

感想

まずはここまで続けられた自分を褒めつつも(といってもまだ1ヶ月程度)、OSS活動は燃え尽き症候群とも隣り合わせなので楽しくやれる範囲でやっていこうと思います。特にOSS活動は短距離走ではなくシルクロードを旅するような途方もない距離を歩んでいくものだと思うので、気張らずやっていこうと思います。

多くの方にとっては「OSSでCODEOWNERSにまでなる気はないなぁ」と思われるかもしれませんが、ほとんどのOSSコミュニティにおいて第三者が(そのコミュニティのルールを守った上で)ISSUEやPRを出すのは大歓迎だと思います。OSSは利用者が増えてナンボのものですので、ツールを良くしていくためにも、不具合に遭遇したり、改善案を思いついたり、docに載っていない疑問などがあれば際には是非ともISSUEとして声を上げて頂きたいと思っています。

argo-helmのように参加へのハードルが低いプロジェクトも存在するので、OSSで継続的に活動していきたいとお考えの方は是非とも調べてみてください。「利用者は多いがメンテナーが不足している」という問題はOSSあるあるだとは思いますので、新規参入者はいつでもウェルカムだと思います。

というわけで、私の冒険はこれからも続く!

Discussion