Skip to content

Run build

Run build #5

Workflow file for this run

name: Run build
on:
workflow_dispatch: {}
push:
tags:
- 'v*'
pull_request:
branches:
- main
types: [opened, synchronize, reopened]
jobs:
build:
if: |
github.event.pull_request.base.ref == 'main' &&
(
github.event.pull_request.head.ref == 'develop' ||
startsWith(github.event.pull_request.head.ref, 'feat/*') ||
startsWith(github.event.pull_request.head.ref, 'fix/*')
)
name: Run builds for Windows, Mac, and Linux
strategy:
fail-fast: false
matrix:
targetPlatform:
- StandaloneWindows64
- StandaloneOSX
- StandaloneLinux64
# Unityのバージョンをここで指定します
unityVersion: ['6000.0.31f1']
include:
- targetPlatform: StandaloneWindows64
runsOn: ubuntu-latest
- targetPlatform: StandaloneLinux64
runsOn: ubuntu-latest
- targetPlatform: StandaloneOSX
runsOn: macos-latest
runs-on: ${{ matrix.runsOn }}
steps:
# リポジトリのチェックアウト
- name: Check out my unity project.
uses: actions/[email protected]
- name: Create LFS file list
run: git lfs ls-files -l | cut -d' ' -f1 | sort > .lfs-assets-id
# LFSファイルのキャッシュを取得する
- name: Restore LFS cache
uses: actions/[email protected]
id: lfs-cache
with:
path: .git/lfs
key: ${{ runner.os }}-lfs-${{ hashFiles('.lfs-assets-id') }}
# LFSファイルをPullする
- name: Git LFS Pull
run: |
git lfs pull
git add .
git reset --hard
# ファイル名にgitのハッシュを含めたいので$GITHUB_OUTPUTに保存しておく
- name: Set outputs
id: vars
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
# Cache
- uses: actions/[email protected]
with:
path: Library
key: Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}
restore-keys: |
Library-
# Unityプロジェクトのビルド
- name: Run the build for ${{ matrix.targetPlatform }}
uses: game-ci/[email protected]
env:
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
with:
targetPlatform: ${{ matrix.targetPlatform }}
unityVersion: ${{ matrix.unityVersion }}
# 成果物をZIPにしてアップロードする
- name: Upload the Build for ${{ matrix.targetPlatform }}
uses: actions/[email protected]
with:
name: Build-${{ matrix.targetPlatform }}-${{ steps.vars.outputs.sha_short }}
path: build