【Github】Jenkinsで本番環境にリリースした筈が変更が反映されなかった話

はじめに

こんにちは、エキサイト株式会社デザイナーの山﨑です。

エキサイトホールディングス Advent Calendar 2024 13日目は、山﨑が担当させていただきます。

qiita.com

今回は、Jenkinsで本番環境にリリースしたはずなのに、リリース内容が反映されなかった事件について紹介します。

トラブル発生

ウーマンエキサイトでは、一部のリポジトリにおいて、ステージング環境や本番環境へのリリースをJenkinsで行っています。

しかし、今回はそこでトラブルが発生しました。

最新コメントランキングという機能の本番リリースを行った後、cssのスタイルがまるまる適用されていないことが判明したのです。

原因調査

原因を調査したところ、Githubのリリースタグが入れ替わっていたことにより、Jenkinsのリリース対象に古いタグが使われていることが判明しました。

以下はJenkinsのリリース画面です。Jenkins側では、最新のタグがv2.426.0であるかのように見えました。

しかし、Githubを確認すると、v2.426.0は2週間前に発行された過去のタグであり、本来の最新のタグはv2.425.0だったのです。

Jenkinsでリストの一番上に表示されていたため、「これが最新のタグだな」と誤認してしまい、結果として2週間前のタグを本番環境にリリースしてしまいました。

このミスにより、最新コメントランキングのスタイルが反映されないという問題が発生しました。

反省

このトラブルの原因は、おそらくGithub上でタグが並び替わるバグにあると推測されます。

今回の件を教訓に、以下の対策を徹底することにしました:

Githubのリリースタグの並び順が正しいか確認すること

Jenkinsだけでなく、Github上でも最新タグが正しく設定されているかを確認する。タグの順番が正しいと思い込まないこと。

②ステージング環境での事前検証を徹底すること

Jenkinsで本番環境にリリースする前は、ブランチタグでステージ確認を行っていたが、mainにマージした後も必ずステージング環境でリリース対象のタグをテストする。

以上より、リリースミスを未然に防ぎ、安定した運用を実現できるよう努めます。

最後に

最後に、エキサイトではデザイナー、フロントエンジニア、バックエンドエンジニア、アプリエンジニアを絶賛募集しております!

興味があればぜひ連絡よろしくお願いいたします!🙇

www.wantedly.com