# CI環境を作る方法

Unity Cloud Buildを使う

自分で頑張る (中止)

ubuntu準備 ライブラリinstall wget https://public-cdn.cloud.unity3d.com/hub/prod/UnityHub.AppImage

この手順ではダメそう。 必要なライブラリ libgtk は The Gimp Toolkit というもので、ディスプレイ表示するUI用

Game CI Docker Image から深掘りしていく

GitHub Actionとは?

GitHub上での動作に応じて Test / Build / Deploy などを実行 Jobは指定の仮想環境上で実行される

  • 2コアCPU : 7 GBのRAMメモリー : 14 GBのSSDディスク容量

動作の定義(ワークフロー)はyamlで行う. リポジトリの .github/workflows/ に配置する

jobs:

  • Job名
    • steps: (同じJobのStepは同じ仮想環境で実行される)
      • Action 具体的なアクション (単にrunでコマンドを実行する / Githubやサードパーティの公開アクションを利用(use)することも)

on (workflowと同列):トリガーを決める runs-on : ビルド環境を指定 run : shellコマンドを記載

uses :

  • uses: hoge/fuga@vN hogeコミュニティのfugaリポジトリのversion N を実行する

使用可能な Github Actionsは以下で検索できる https://github.com/marketplace?type=actions&query=game-ci+

Unity Builderを使えばビルドできそう https://github.com/marketplace/actions/unity-builder

Unity Builderの解析

https://github.com/game-ci/unity-builder

Currently images are only available with Ubuntu as the base operating system. やはり GUI付きのUbuntuにインストールした後Docker Imagerにしたっぽい?

DockerImage https://hub.docker.com/r/unityci/base

DockerFileを読む https://github.com/game-ci/docker/blob/main/base/Dockerfile

ぱっと見これはbaseなので Unity を使うための下準備っぽい感じがする

https://github.com/game-ci/docker/blob/main/editor/Dockerfile

Yes! baseImage をベースに Unity AppImage ファイルをインストールしている。

yaml解析

1

https://qiita.com/makihiro_dev/items/03208a83d4c3a1fb426b