Skip to content

Conversation

ryo0ka
Copy link
Contributor

@ryo0ka ryo0ka commented Oct 4, 2025

Changes

  1. Fixed the issue where the Windows action fails to properly read build profile paths that contain space characters
  2. Added new Windows/macOS test workflow matrices to include Unity 6000+ images and sample build profiles

Related Issues

Related PRs

Successful Workflow Run Link

Checklist

  • Read the contribution guide and accept the
    code of conduct
  • Docs (If new inputs or outputs have been added or changes to behavior that should be documented. Please make a PR
    in the documentation repo)
  • Readme (updated or not needed)
  • Tests (added, updated or not needed)

Notes

Summary by CodeRabbit

  • New Features

    • Added Build Profile support to macOS and Windows build pipelines.
    • Build artifacts now indicate when a Build Profile was used.
  • Chores

    • Expanded build matrix to include Unity 6000.0.36f1 for macOS and Windows targets.
    • Added sample Build Profile assets for macOS and Windows to the test project.

Copy link

github-actions bot commented Oct 4, 2025

Cat Gif

Copy link

coderabbitai bot commented Oct 4, 2025

📝 Walkthrough

Walkthrough

Adds optional Build Profile support to macOS and Windows GitHub Actions workflows by extending matrix entries, passing matrix.buildProfile to the build step, and conditionally appending “With Build Profile” to artifact names. Introduces two Unity asset meta files for sample macOS and Windows Build Profiles.

Changes

Cohort / File(s) Summary
GitHub Actions — macOS workflow
.github/workflows/build-tests-mac.yml
Extends matrix with Unity 6000.0.36f1 and entries including buildProfile; forwards matrix.buildProfile to build; conditionally suffixes artifact name when buildProfile is set.
GitHub Actions — Windows workflow
.github/workflows/build-tests-windows.yml
Adds matrix entries for Unity 6000.0.36f1 including a buildProfile case; passes matrix.buildProfile to build; conditionally updates artifact name to include “With Build Profile.”
Unity Build Profile assets (meta)
test-project/Assets/Settings/Build Profiles/Sample Windows Build Profile.asset.meta, test-project/Assets/Settings/Build Profiles/Sample macOS Build Profile.asset.meta
Adds meta files for sample Build Profile assets; metadata only, no runtime logic.

Sequence Diagram(s)

sequenceDiagram
    autonumber
    actor Dev as Developer
    participant GA as GitHub Actions (Workflow)
    participant MX as Matrix
    participant UB as unity-builder (Build Step)
    participant AR as Artifact Upload

    Dev->>GA: Push/PR triggers workflow
    GA->>MX: Expand matrix (platform, unityVersion, optional buildProfile)
    loop For each matrix job
        MX->>UB: Run build with inputs<br/>platform, unityVersion, buildProfile?
        note over UB: If buildProfile present,<br/>pass it to builder
        UB-->>GA: Build result (success/failure)
        GA->>AR: Upload artifact<br/>name += " With Build Profile" if buildProfile
    end
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • webbertakken
  • davidmfinol

Poem

A nibble of YAML, a hop through the sky,
Matrix multiplies while artifacts fly.
Profiles in pockets, we bounce to the build,
Mac and Win bunnies, delight fulfilled.
With a twitch of the nose—success compiled! 🐇✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The title succinctly summarizes the primary fix by referencing the Windows build profile name truncation issue, directly reflecting the main change in the pull request without extraneous details.
Description Check ✅ Passed The pull request description follows the repository’s template by clearly listing the Changes, Related Issues, Related PRs, Successful Workflow Run Link, and a completed Checklist, ensuring all required sections are present and adequately filled out.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f7f3f70 and c402a09.

⛔ Files ignored due to path filters (3)
  • dist/platforms/windows/build.ps1 is excluded by !**/dist/**
  • test-project/Assets/Settings/Build Profiles/Sample Windows Build Profile.asset is excluded by !**/*.asset
  • test-project/Assets/Settings/Build Profiles/Sample macOS Build Profile.asset is excluded by !**/*.asset
📒 Files selected for processing (4)
  • .github/workflows/build-tests-mac.yml (3 hunks)
  • .github/workflows/build-tests-windows.yml (3 hunks)
  • test-project/Assets/Settings/Build Profiles/Sample Windows Build Profile.asset.meta (1 hunks)
  • test-project/Assets/Settings/Build Profiles/Sample macOS Build Profile.asset.meta (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2024-12-05T17:12:46.110Z
Learnt from: GabLeRoux
PR: game-ci/unity-builder#0
File: :0-0
Timestamp: 2024-12-05T17:12:46.110Z
Learning: For Unity version 6 and above, the -activeBuildProfile parameter cannot be used together with -buildTarget parameter as they are mutually exclusive. Build profiles are a new feature that encapsulate build settings including the target platform.

Applied to files:

  • .github/workflows/build-tests-mac.yml
  • .github/workflows/build-tests-windows.yml

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

codecov bot commented Oct 4, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 38.34%. Comparing base (f7f3f70) to head (c402a09).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main     #745   +/-   ##
=======================================
  Coverage   38.34%   38.34%           
=======================================
  Files          78       78           
  Lines        3169     3169           
  Branches      663      663           
=======================================
  Hits         1215     1215           
  Misses       1809     1809           
  Partials      145      145           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@davidmfinol davidmfinol merged commit 88a89c9 into game-ci:main Oct 4, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants