👋

QAのCIサーバー運用

に公開

以前はオフィスにサーバールームがあって、そこでテストを実行するためのCIサーバーを動かしていた。
リモート勤務するようになったタイミングでCIサーバーをクラウドに移行することにした。チームメンバーの希望もあってインフラチームに構築を頼むのではなくQAチームで構築・運用を行うことにした。気をつけたこと、工夫したことをちょっと書いておく。

気をつけたこと

  • コスト。どれくらいのコストがかかるのか見積もって上司と合意。その金額を上回らないようにコストを定期的にチェック。
  • モニタリング。アカウントが不正使用された場合に検知できるようにアラートを設定。

工夫したこと

  • 稼働していないときに止める。Googleが提供している日本の祝日カレンダーとそれ以外の休日(週末と年末年始などカレンダー上は祝日ではない日)のGoogleカレンダーを用意して、CIサーバー起動時にそれらを参照して起動・停止の制御をするようにした。
  • 上記の制御はGCPのCloud Scheduler + Cloud Buildで実現しているが、どちらかで障害が発生してCIサーバーが停止していることがあった。対策として起動・停止の判断は一定時間をおいて1日に2度行うようにした。

ハマったこと

  • 2024年のクリスマスイブが日本の祝日カレンダーにあったため、平日にも関わらずCIサーバーが停止した。ここを参照して対策した。

他に思い出したことがあれば書き足していく予定。

Discussion