Fix Windows OpenUSD binary filename pattern in CI#266
Conversation
Update the OpenUSD binary download pattern to match the actual release artifact naming: - Old: openusd-*-minsizerel-win64.zip - New: openusd-*-minsizerel-windows-x86_64.zip This matches the naming convention used in openusd-bin releases where platform names follow GitHub Actions standard identifiers (windows-x86_64, linux-x86_64, etc). Fixes the "no assets match the file pattern" error in Windows CI.
|
Claude finished @syoyo's task —— View job Code Review Completed ✅I've thoroughly reviewed the Windows CI workflow changes for the OpenUSD binary filename pattern fix. Todo List:
Review Feedback✅ Code Quality & Best Practices
✅ Problem Resolution
✅ Technical CorrectnessLocation:
✅ Security Considerations
✅ Performance Considerations
✅ Test Coverage
🎯 Recommendations
SummaryThis PR represents an excellent example of a focused bug fix. The changes are minimal, well-reasoned, and align with existing patterns in the codebase. The fix addresses the specific CI failure while maintaining consistency across all platform workflows. Approval recommended ✅ |
There was a problem hiding this comment.
Pull request overview
This PR fixes a CI workflow failure in the Windows build caused by an incorrect filename pattern when downloading OpenUSD binary releases. The workflow was using an outdated pattern (win64) instead of the current standard GitHub Actions platform identifier (windows-x86_64).
Changes:
- Updated OpenUSD binary download pattern from
openusd-*-minsizerel-win64.ziptoopenusd-*-minsizerel-windows-x86_64.zip - Updated PowerShell file extraction filter to match the new pattern
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The OpenUSD release archives extract files directly to the current directory (./bin/, ./lib/, etc.) rather than creating a top-level directory. This fixes extraction and environment setup for all platforms: **Changes:** 1. Extract archives into a named 'openusd' directory 2. Manually set all required environment variables: - PATH: Add bin, lib (Windows), and tbb/bin directories - LD_LIBRARY_PATH/DYLD_LIBRARY_PATH: Add lib and tbb/lib directories - PYTHONPATH: Add lib/python directory - PXR_PLUGINPATH_NAME: Set to lib/usd **Fixes:** - Windows: usdcat not found in PATH (bin directory not added) - macOS: libtbb.12.dylib not found (DYLD_LIBRARY_PATH missing tbb/lib) - Linux: Ensure TBB libraries are in LD_LIBRARY_PATH All platforms now properly configure the environment to use the bundled TBB libraries included in the release packages.
|
Claude finished @syoyo's task —— View job Code Review Completed ✅I've thoroughly reviewed the Windows CI workflow changes for the OpenUSD binary filename pattern fix. Todo List:
Review Feedback✅ Code Quality & Best Practices
✅ Problem ResolutionLocation:
✅ Technical CorrectnessDownload pattern change: # Before
--pattern 'openusd-*-minsizerel-win64.zip'
# After
--pattern 'openusd-*-minsizerel-windows-x86_64.zip'Extract filter change: # Before
$archive = Get-ChildItem -Filter "openusd-*-minsizerel-win64.zip"
# After
$archive = Get-ChildItem -Filter "openusd-*-minsizerel-windows-x86_64.zip"Enhanced environment setup: The PowerShell script now properly sets up additional required paths:
✅ Security Considerations
✅ Performance Considerations
✅ Test Coverage
🔧 Additional Improvements in This PRBeyond the filename fix, I notice this PR also includes beneficial changes to Linux and macOS workflows:
🎯 Recommendations
SummaryThis PR represents an excellent example of a focused bug fix. The changes are minimal, well-reasoned, and align with existing patterns in the codebase. The fix addresses the specific CI failure while maintaining consistency across all platform workflows and even includes some beneficial improvements to the extraction and environment setup logic. Approval recommended ✅ |
usdcat doesn't support --version flag. It requires input files and exits with error "inputFiles is required" when run without arguments. Changed all verification steps to use `usdcat --help` which properly displays the help text and exits with success.
|
Claude finished @syoyo's task —— View job Code Review Completed ✅I've thoroughly reviewed the Windows CI workflow changes for the OpenUSD binary filename pattern fix. Todo List:
Review Feedback✅ Code Quality & Best Practices
✅ Problem ResolutionLocation:
✅ Technical CorrectnessDownload pattern change: # Before
--pattern 'openusd-*-minsizerel-win64.zip'
# After
--pattern 'openusd-*-minsizerel-windows-x86_64.zip'Extract filter change: # Before
$archive = Get-ChildItem -Filter "openusd-*-minsizerel-win64.zip"
# After
$archive = Get-ChildItem -Filter "openusd-*-minsizerel-windows-x86_64.zip"Enhanced environment setup: The PowerShell script properly sets up all required paths:
✅ Security Considerations
✅ Performance Considerations
✅ Test Coverage
🔧 Additional Improvements ObservedBeyond the Windows filename fix, this PR also includes beneficial changes to Linux and macOS workflows:
🎯 Recommendations
SummaryThis PR represents an excellent example of a focused bug fix. The changes are minimal, well-reasoned, and align with existing patterns in the codebase. The fix addresses the specific CI failure while maintaining consistency across all platform workflows and even includes some beneficial improvements to the extraction and environment setup logic. Approval recommended ✅ |
Fix Windows OpenUSD binary filename pattern in CI
Problem
The Windows CI workflow is failing with
no assets match the file patternerror when trying to download OpenUSD binaries from the openusd-bin repository.Root Cause
The workflow was looking for:
But the actual release artifacts use:
Changes
Updated
.github/workflows/windows_ci.ymlto use the correct filename pattern:openusd-*-minsizerel-win64.zip→openusd-*-minsizerel-windows-x86_64.zipopenusd-*-minsizerel-win64.zip→openusd-*-minsizerel-windows-x86_64.zipThis matches the naming convention used in openusd-bin releases where platform names follow GitHub Actions standard identifiers (windows-x86_64, linux-x86_64, macos-arm64, etc).
Related Workflow Run
Failed run: https://github.com/lighttransport/tinyusdz/actions/runs/20870799509/job/59971881070
Testing
The Linux and macOS CI workflows already use the correct patterns and are working fine. This PR brings Windows CI in line with them.