fastlane logo and description on the document page
fastlane's logo and the description

というわけで2020年の振り返り記事にも書いたけど、業務内外でfastlaneをいじる機会が多かったので、昨年末に勢いでfastlaneのCore Contributorやらせてとリクエストしたらアクセプトされた。

fastlaneを知らな人向けに一言で説明すると、Ruby製のモバイルアプリ開発向けのCI/CDをサポートするツール群だ。世の中ではそれなりに使われているはず。fastlane以前では毎回手作業で各個人のMacからビルドしてアプリをiTunes Connectというサイトにアップロードして、コンソールから必要なメタデータの更新をして…みたいな感じだったのがほとんど作業がfastlaneによって自動化出来る時代になっている。昔はprivateなAPIを呼び出して実装されていて動作していたので重宝されていたけど、去年からAppleも公式にそれらの作業を自動化するためのAPIを公開し始めたので必ずしもfastlaneが必須ではなくなって来ているものの、依然として各種ワークフローを実装するための豊富な機能がそなわっているので、すぐに要らなくなることはない。

これまではfastlane/deliverをやっていて、具体的にはスクリーンショットのアップロードの高速化/安定化や、ローカルの画像のロード処理のリファクタとエラーハンドリングの改善 + スクリーンショットのアップロード前のバリデーションの追加でユーザー体験向上、iPhone 12シリーズによる新しい解像度の対応などをした。最近はCircleCIでRuby2.7系でテストを実行するために壊れたテストを直したり、.circleci/config.ymlの壊れているところを直したりした。

今後は元々やりたいなぁと思っていたfastlaneのRuby 3.0の対応のプロジェクトを個人的にリードしてやっていく、というのをさっきアナウンスした。やっていくぞ。こういうった作業は昔からRubyをWeb開発の仕事でも使ってて最近はiOSエンジニアを仕事にしている自分のスキルと経験がマッチしていると思う。

https://github.com/fastlane/fastlane/issues/17931

もし何かfastlaneで困りごとなどがあればTwitrerのDMなどからご相談ください(全ての機能に詳しいわけでは無いけど)。

Core Contributorのチーム全体は現在そこまでアクティブでは無いけど、直近Core Contributorになった他のメンバーなどとお互いにレビューしあったりしながらワイワイやっていて楽しい。数年前まで元々英語は全く読み書きダメだったけど、直近3年間ほど仕事と生活先を英語圏に置くことで強制的に毎日英語を使ったおかげで、難なくこういうことも出来るようになってよかったなぁとしみじみ感じている。


ちなみにタイトルだけ英語にしてみた今後もそうすると思う。基本的に本文は日本語でブログを書きたいけど(そのほうが早いので)、タイトルだけでも英語にしたら誰か翻訳ツールで読むかもしれないと思った。もしかしたらそのうち英語でも記事を書くかもしれない。 実際Twitterは同僚に翻訳して読まれている。