Skip to content

test-windows

test-windows #47

Workflow file for this run

name: test-windows
on:
push:
branches: [ main ]
pull_request:
branches: [ main, dev ]
# Run tests once a week on Sunday.
schedule:
- cron: "0 6 * * 0"
permissions:
contents: read
jobs:
test-windows:
runs-on: windows-2019
timeout-minutes: 300
strategy:
fail-fast: false
matrix:
usd: ["v23.11", "v24.08"]
python: ["3.7", "3.10"]
include:
- usd: "v24.08"
python: "3.11"
name: "USD-${{ matrix.usd }}-py${{ matrix.python }}"
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- name: Create Build Environment
run: |
vcpkg install --triplet=x64-windows gtest
python -m pip install -r ${{github.workspace}}\test\requirements.txt
cmake -E make_directory ${{github.workspace}}\build
cmake -E make_directory ${{runner.temp}}\USD
- name: Install USD
working-directory: ${{runner.temp}}/USD
shell: cmd
run: |
call "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Auxiliary/Build/vcvars64.bat"
set VCPKG_TARGET_TRIPLET=x64-windows
set CMAKE_TOOLCHAIN_FILE=%VCPKG_INSTALLATION_ROOT%/scripts/buildsystems/vcpkg.cmake
git clone https://github.com/PixarAnimationStudios/OpenUSD.git ^
--depth 1 --branch ${{ matrix.usd }} ./src
python ./src/build_scripts/build_usd.py . ^
--generator "Visual Studio 16 2019" ^
--no-tests ^
--no-examples ^
--no-tutorials ^
--no-tools ^
--no-docs ^
--no-imaging ^
--no-materialx ^
-v
- name: Configure & Build
shell: bash
working-directory: ${{github.workspace}}/build
run: |
export PATH="${{runner.temp}}/USD/bin;${{runner.temp}}/USD/lib;${PATH}"
export PYTHONPATH="${{runner.temp}}/USD/lib/python;${PYTHONPATH}"
cmake \
-G "Visual Studio 16 2019" -A x64 \
-D "CMAKE_TOOLCHAIN_FILE=${VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake" \
-D "VCPKG_TARGET_TRIPLET=x64-windows" \
-D "BUILD_DOCS=OFF" \
-D "CMAKE_INCLUDE_PATH=${{runner.temp}}/USD/include" \
-D "CMAKE_LIBRARY_PATH=${{runner.temp}}/USD/lib" \
..
cmake --build . --config Release
- name: Check for formatting errors
shell: bash
working-directory: ${{github.workspace}}/build
run: |
cmake --build . --target format
STATUS_OUTPUT=$(git -C .. status --porcelain)
if [ -n "$STATUS_OUTPUT" ]; then
echo "Code formatting errors found:"
git -C .. diff
exit 1
else
echo "No formatting errors found."
fi
- name: Run Test
shell: bash
working-directory: ${{github.workspace}}/build
run: ctest -VV -C Release
env:
CTEST_OUTPUT_ON_FAILURE: True