Перейти к основному содержимому

Генератор конвейеров Unity CI/CD

Выберите платформу CI/CD и постройте цели; каждый хост получает различную форму YAML, триггеры и модель секретов.

Выбор платформы определяет расположение файла (.github/workflows, .gitlab-ci.yml, azure-pipelines.yml и т. д.), синтаксис триггеров, а также способ выражения секретов и кэшей.

Workflow YAML в `.github/workflows/`. Секреты: репозиторий → Settings → Secrets. Матрица = отдельный job на `targetPlatform`. Часто: `game-ci/unity-builder` + секрет `UNITY_LICENSE`.

Сгенерированный файл (положить в репо как).github/workflows/unity-build.yml
name: Unity Build

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]
  workflow_dispatch:

concurrency:
  group: unity-build-${{ github.ref }}
  cancel-in-progress: true

jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        targetPlatform:
          - StandaloneWindows64
          - StandaloneLinux64

    steps:
      - uses: actions/checkout@v4
        with:
          lfs: true

      - uses: actions/cache@v4
        with:
          path: |
            Library
            Temp
          key: Library-${{ matrix.targetPlatform }}-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}
          restore-keys: |
            Library-${{ matrix.targetPlatform }}-

      - name: Build
        uses: game-ci/unity-builder@v4
        env:
          UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
        with:
          unityVersion: 6000.0.36f1
          targetPlatform: ${{ matrix.targetPlatform }}
          projectPath: .
          buildsPath: build
          buildName: game

      - uses: actions/upload-artifact@v4
        with:
          name: Build-${{ matrix.targetPlatform }}
          path: build/${{ matrix.targetPlatform }}
Сгенерированный Markdown
Лицензия Unity в CI?
Следуйте текущей лицензионной документации Unity и вашего хоста; Контрольный список секретов напоминает вам, что нужно настроить.