Coin.fr/)は、個人が地域コミュニティで新品や中古品をオンライン売買できるようにするポータルサイトです。Coinはフランスで最も検索されたウェブサイトのトップ10の1つで、Google、Facebook、YouTubeなどに続いてます。CoinがZuulを選んだ理由や、どのようにGitHub、Gerrit、OpenStackとZuulを使用しているのかについての回答を得ました。CoinはどのようにZuulを始めましたか?2年前にZuulv2とJenkinsと一緒にオープンソースのCIツールであるZuulを使い始めました。Coinに参加したため、このソリューションでは不十分でした。いくつかの調査や実証実験の後、Zuulを試してみました。GerritとJenkinsの間で動かしました。1か月も経たないうちに(公式の分厚いドキュメントを使わずに)、完全に新しいスタックをセットアップできました。Zuulv3に移行するまで1年間実行していました。Zuulv3はセットアップの点ではより複雑ですが、AnsibleやOpenStackのような最新のツールを使用してより多くの機能をもたらしてくれます。どのように利用しているか教えてくださいZuulv3とGerritを使用しています。私たちのワークフローはOpenStackのワークフローに近いものです。レビューごとに、品質、統合、ビルドという3つの「チェック」パイプラインをZuulはトリガーします。結果が正しい場合はゲートシステムを使用してコードをリポジトリにマージし、アーティファクトをビルドします。COMPUTE)を使用しています。Zuulは現在、すべてのGerritプロジェクトといくつかのGitHubプロジェクトでもセットアップされています。以下は、本番環境でのZuulv3インフラと、データセンターが失われた場合のZuulv3インフラです。Ram、および80ToがCephクラスターで使用可能です。ジョブに関しては、1か月あたり約60,000のジョブを実行しました。これは1日あたり約2,500のジョブになります。ジョブの平均時間は5分未満です。Coinが非常に急速に成長しているなか(そしてマイクロサービスも🙂)、Zuulはすべてを、大規模にテストできるようにしてくれます。ZuulはGerritやGitHubと連携することもできます。これにより、CIをより多くのチームとワークフローに開くことができました。課題は何でしたか(また、どのように解決しましたか)?私たちの大きな課題は、Zuulv2からZuulv3に移行することでした。すべてがAnsibleを使用していても、すべてのCIジョブ(約500のJenkinsジョブ)を移行するのは非常に面倒でした。IRCにいるZuul利用者の協力を得て、OpenStackが使っているAnsibleのロールとプレイブックを利用しましたが、移行には約1年もかかりました。Zuulでの今後の計画は何ですか?次のステップは、linterのような小さなジョブにKubernetesバックエンドを使用することと、GitHubでZuulを改善することです。Zuulに興味のある組織は、どのようにしてさらに学び、参加することができますか?私はOpenStackから来たので、サミットやIRCでコミュニティと会うことは良いスタートだと思います。Zuulにはもっと良い可視性が必要です。Zuulは強力なツールですが、オンラインで得られる情報は限られています。すべてのコミットがリポジトリにマージされるのが明確で、破損しないことです。3とのより良い統合、新しいノードプール機能とプロバイダー、完全なHA、そしてインターネット上での可視性の向上に取り組んでほしいです。※本コラムは以下の文章を意訳したものです。https://superuser.openstack.org/articles/using-github-and-gerrit-with-zuul-a-leboncoin-case-study/※本コラムは原文執筆者が公式に発表しているものでなく、翻訳者が独自に意訳しているものです。著者:野田貴子氏1983年生まれ。大学卒業後、ソフトウェア開発の営業を経て、ソフトウェア開発業務に転向。ローカライズ案件などを担当。