聞いたことメモ
以下、Tech Academyのメンターの方から聞いたこと。
- ビルド作業はプログラマー以外にはハードルが高いため、自動化していることが多い。
- ビルドマシンを用意している。
- JenkinsなどのCIツールがあって、GitHubからブランチを取得してビルド専用マシン上でビルドする。
- Jenkinsのコマンドを作ってUnityと接続している。
- ビルド環境をメンテナンスする専任担当がいる。
- デイリービルドしているが、Unitテストはやっていない(というよりスマホゲーム系はUnitテストまでやっている会社は少なく、リリースしてバグだらけというのがはびこっているのが実態←!)
- Jenkinsはほとんどの現場である。
- データベースのデータについてExcelファイル→CSV→バイナリへと変換するということもやってる
- 今の現場だと開発ブランチと一個区切ったステージングブランチがある感じ
- デイリービルドは開発ブランチに対してかけていて、ビルド時にエラーがあればすぐ通知が来る。
- デバッグチームが存在し、ビルドが通った成果物の動作確認もしている。問題があれば連絡があり、当日中に取るような感じ。
- とはいえ、そもそもpush前に実装者が動作確認はすべきなので、そのような事態を招いた人は反省すべき
まとめ
- ビルドはJenkins使っている現場が多い
- ただしUnitテストは実装する余力がなく、そもそも実装してもやっぱこうした方がいいなという修正も入るためやっていない現場が多数。結果、リリースしてバグだらけというのがはびこっているのがスマホゲーム業界(ひぃーーーーー!!!)