やりたかった夢
やったぜAWS上で、iOSアプリのリリースができるぜ!
AWSCodePipelineとかで、iOSアプリのビルドだ!
ついでに、ブランチごとの並行ビルドとかもできたら素敵だなっ!
夢ひろがりんぐ~
なので、CI/CDで利用することをベースに検証しました。
TL;DR
頻繁なCI/CDだと毎日起動になってしまうので、価格が年間90万と高くなってしまう。
スポットで使えず(24時間の制約があるため)現状(2020/12/09)は厳しい
Macインスンタンス構築時にハマった罠
HDDの拡張
EBSを500Gとしたが、最初は32Gしかパーティションがきられておらず、コマンドにより、EBSのサイズまで自分で広げる必要あり
参考:Macで外付けHDDから外付けHDDに直接ファイルをコピーする方法
Pros Cons
メリデメ考察
Pros
- AMI(イメージを取得できるため)バージョン切り替えが容易
- Unityのような、1マシンで並行バージョンを想定していない開発環境でも、並行バージョン保持できる
- 通信環境は早い
- メンテナンスフリー
- AMIが取れるため、ビルド環境のロールバックが可能
- 旧バージョンのOSが使える
Cons
- スペックの割に高すぎる1日約2500円 年間90万円
- 専有インスタンスの料金体系が、最低24時間〜なので、スポットで利用ができない
- ビルドしてインスタンスは死ぬみたいな使い方はできない(常時起動みたいな形)
- 東京リージョンにインスタンスがないので、多少遅延がある
- スペックが低い
- Big Sur未対応(2020/12/09現在)
- Appleシリコンのマシンは存在しない
- EBSの容量以外のスペックアップ不可
- 各リージョンに最高台数が存在しており、専有したいときに取れない可能性がある
考慮しないといけなさそうなこと
ソフトウェアライセンス
ソフトウェアライセンス関係の問題を解消する必要ありそう。
例:UnityProを仮想マシンにいれていいのか?
Macインスタンスのユースケース
CI/CDでの利用
一回EC2をたてると初日の2500円かかる。
並行でたてようと思うと台数×2500円が最低料金
2年間で購入と同じ額ぐらいにすると月4回未満ぐらいの利用が限度
月1~年1ぐらい更新のプロダクトなら、まぁ安くあげられるかもしれない。
旧バージョンとの互換チェック
現状の料金体系ならもっぱらこちらになりそう。
今後への期待
- とりあえず、専有権を時間単位にしてほしい。
- 24時間~はやめてほしい。