Skip to content

Commit 5331ae5

Browse files
authored
Merge pull request #1903 from danrbailey/windows_ci
Move all debug and static windows builds to the weekly CI
2 parents c2b179f + 7fad116 commit 5331ae5

File tree

3 files changed

+126
-39
lines changed

3 files changed

+126
-39
lines changed

.github/workflows/build.yml

Lines changed: 9 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -130,47 +130,34 @@ jobs:
130130
run: ccache --evict-older-than 1d
131131

132132
windows:
133-
# Windows CI. Tests static and dynamic builds with MT and MD respectively.
133+
# Windows CI. Tests a dynamic build with MD.
134134
if: |
135135
github.event_name != 'workflow_dispatch' ||
136136
github.event.inputs.type == 'all' ||
137137
github.event.inputs.type == 'win'
138138
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'windows-2022-8c-32g-300h') || 'windows-latest' }}
139-
name: windows-vc:${{ matrix.config.vc }}-type:${{ matrix.config.build }}
139+
name: windows
140140
env:
141-
VCPKG_DEFAULT_TRIPLET: ${{ matrix.config.vc }}
141+
VCPKG_DEFAULT_TRIPLET: x64-windows
142142
strategy:
143-
matrix:
144-
config:
145-
# static build of blosc from vcpkg does not build internal sources.
146-
# USE_STATIC_DEPENDENCIES is required for IlmBase/OpenEXR defines and
147-
# Boost as both shared and static libs are installed.
148-
# USE_EXPLICIT_INSTANTIATION is disabled for debug static libraries
149-
# due to disk space constraints
150-
# @note Commented out the static debug build due to linker OOM LNK1102
151-
- { vc: 'x64-windows-static', components: 'core,bin,view,render,test', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
152-
#- { vc: 'x64-windows-static', components: 'core,bin,view,render,test', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON -DUSE_EXPLICIT_INSTANTIATION=OFF' }
153-
- { vc: 'x64-windows', components: 'core,bin,view,render,python,test', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
154-
- { vc: 'x64-windows', components: 'core,bin,view,render,python,test', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
155-
#- { vc: 'x64-windows', build: 'Release', cmake: '-G \"MinGW Makefiles\" -DOPENVDB_CORE_STATIC=OFF' }
156143
fail-fast: false
157144
steps:
158145
- uses: actions/checkout@v3
159146
- name: path
160147
shell: pwsh
161148
run: |
162149
# note: system path must be modified in a previous step to it's use
163-
echo "$Env:VCPKG_INSTALLATION_ROOT\installed\${{ matrix.config.vc }}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
164-
echo "${{github.workspace}}\build\openvdb\openvdb\${{ matrix.config.build }}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
150+
echo "$Env:VCPKG_INSTALLATION_ROOT\installed\x64-windows\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
151+
echo "${{github.workspace}}\build\openvdb\openvdb\Release" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
165152
- name: install
166153
run: ./ci/install_windows.sh
167154
- name: build
168155
run: >
169156
./ci/build.sh -v
170-
--config=${{ matrix.config.build }}
171-
--components=${{ matrix.config.components }}
157+
--config='Release'
158+
--components='core,bin,view,render,python,test'
172159
--cargs=\'
173-
${{ matrix.config.cmake }}
160+
-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF
174161
-DMSVC_COMPRESS_PDB=ON
175162
-DUSE_EXR=ON
176163
-DUSE_PNG=ON
@@ -181,10 +168,7 @@ jobs:
181168
# Print the build directy size (monitor if we're hitting runner limits)
182169
run: du -h build
183170
- name: test
184-
# Always run tests on weekly builds but skip Debug on commits as they take a while.
185-
# https://github.community/t/distinct-job-for-each-schedule/17811/2
186-
if: contains(github.event.schedule, '0 7 * * 1') || matrix.config.build == 'Release'
187-
run: cd build && ctest -V -C ${{ matrix.config.build }}
171+
run: cd build && ctest -V -C Release
188172

189173
macos:
190174
if: |

.github/workflows/nanovdb.yml

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -104,27 +104,18 @@ jobs:
104104
github.event.inputs.type == 'win'
105105
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'windows-2022-8c-32g-300h') || 'windows-latest' }}
106106
env:
107-
VCPKG_DEFAULT_TRIPLET: ${{ matrix.config.vc }}
107+
VCPKG_DEFAULT_TRIPLET: 'x64-windows'
108108
visual_studio: "Visual Studio 17 2022"
109109
cuda: "12.4.0"
110110
strategy:
111-
matrix:
112-
config:
113-
# static build of blosc from vcpkg does not build internal sources.
114-
# USE_STATIC_DEPENDENCIES is required for IlmBase/OpenEXR defines and
115-
# Boost as both shared and static libs are installed.
116-
- { vc: 'x64-windows-static', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded' }
117-
- { vc: 'x64-windows-static', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreadedDebug' }
118-
- { vc: 'x64-windows', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
119-
- { vc: 'x64-windows', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
120111
fail-fast: false
121112
steps:
122113
- uses: actions/checkout@v3
123114
- name: path
124115
run: |
125116
# note: system path must be modified in a previous step to it's use
126-
echo "$Env:VCPKG_INSTALLATION_ROOT\installed\${{ matrix.config.vc }}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
127-
echo "${{github.workspace}}\build\openvdb\openvdb\${{ matrix.config.build }}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
117+
echo "$Env:VCPKG_INSTALLATION_ROOT\installed\x64-windows\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
118+
echo "${{github.workspace}}\build\openvdb\openvdb\Release" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
128119
- name: install_cuda
129120
shell: powershell
130121
run: .\ci\install_windows_cuda.ps1
@@ -135,10 +126,10 @@ jobs:
135126
shell: bash
136127
run: >
137128
./ci/build.sh -v
138-
--config=${{ matrix.config.build }}
129+
--config=Release
139130
--components=core,nano,nanotest,nanoexam,nanobench,nanotool
140131
--cargs=\'
141-
${{ matrix.config.cmake }}
132+
-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF
142133
-DMSVC_COMPRESS_PDB=ON
143134
-DUSE_EXPLICIT_INSTANTIATION=OFF
144135
-DNANOVDB_USE_CUDA=ON

.github/workflows/weekly.yml

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,60 @@ jobs:
229229
- name: test
230230
run: cd build && ctest -V
231231

232+
windows:
233+
# Windows CI. Tests static and dynamic builds with MT and MD respectively.
234+
if: |
235+
github.event_name != 'workflow_dispatch' ||
236+
github.event.inputs.type == 'all' ||
237+
github.event.inputs.type == 'win'
238+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'windows-2022-8c-32g-300h') || 'windows-latest' }}
239+
name: windows-vc:${{ matrix.config.vc }}-type:${{ matrix.config.build }}
240+
env:
241+
VCPKG_DEFAULT_TRIPLET: ${{ matrix.config.vc }}
242+
strategy:
243+
matrix:
244+
config:
245+
# static build of blosc from vcpkg does not build internal sources.
246+
# USE_STATIC_DEPENDENCIES is required for IlmBase/OpenEXR defines and
247+
# Boost as both shared and static libs are installed.
248+
# USE_EXPLICIT_INSTANTIATION is disabled for debug static libraries
249+
# due to disk space constraints
250+
- { vc: 'x64-windows-static', components: 'core,bin,view,render,test', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
251+
- { vc: 'x64-windows', components: 'core,bin,view,render,python,test', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
252+
- { vc: 'x64-windows', components: 'core,bin,view,render,python,test', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
253+
fail-fast: false
254+
steps:
255+
- uses: actions/checkout@v3
256+
- name: path
257+
shell: pwsh
258+
run: |
259+
# note: system path must be modified in a previous step to it's use
260+
echo "$Env:VCPKG_INSTALLATION_ROOT\installed\${{ matrix.config.vc }}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
261+
echo "${{github.workspace}}\build\openvdb\openvdb\${{ matrix.config.build }}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
262+
- name: install
263+
run: ./ci/install_windows.sh
264+
- name: build
265+
run: >
266+
./ci/build.sh -v
267+
--config=${{ matrix.config.build }}
268+
--components=${{ matrix.config.components }}
269+
--cargs=\'
270+
${{ matrix.config.cmake }}
271+
-DMSVC_COMPRESS_PDB=ON
272+
-DUSE_EXR=ON
273+
-DUSE_PNG=ON
274+
-DVCPKG_TARGET_TRIPLET=${VCPKG_DEFAULT_TRIPLET}
275+
-DCMAKE_TOOLCHAIN_FILE=\"${VCPKG_INSTALLATION_ROOT}\\scripts\\buildsystems\\vcpkg.cmake\"
276+
\'
277+
- name: size
278+
# Print the build directy size (monitor if we're hitting runner limits)
279+
run: du -h build
280+
- name: test
281+
# Always run tests on weekly builds but skip Debug on commits as they take a while.
282+
# https://github.community/t/distinct-job-for-each-schedule/17811/2
283+
if: contains(github.event.schedule, '0 7 * * 1') || matrix.config.build == 'Release'
284+
run: cd build && ctest -V -C ${{ matrix.config.build }}
285+
232286
#############################################################################
233287
############################ AX Library Extras ##############################
234288
#############################################################################
@@ -396,6 +450,64 @@ jobs:
396450
################################## Blosc ####################################
397451
#############################################################################
398452

453+
windows-nanovdb:
454+
if: |
455+
github.event_name != 'workflow_dispatch' ||
456+
github.event.inputs.type == 'all' ||
457+
github.event.inputs.type == 'win'
458+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'windows-2022-8c-32g-300h') || 'windows-latest' }}
459+
env:
460+
VCPKG_DEFAULT_TRIPLET: ${{ matrix.config.vc }}
461+
visual_studio: "Visual Studio 17 2022"
462+
cuda: "12.4.0"
463+
strategy:
464+
matrix:
465+
config:
466+
# static build of blosc from vcpkg does not build internal sources.
467+
# USE_STATIC_DEPENDENCIES is required for IlmBase/OpenEXR defines and
468+
# Boost as both shared and static libs are installed.
469+
- { vc: 'x64-windows-static', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded' }
470+
- { vc: 'x64-windows-static', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreadedDebug' }
471+
- { vc: 'x64-windows', build: 'Release', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
472+
- { vc: 'x64-windows', build: 'Debug', cmake: '-A x64 -G \"Visual Studio 17 2022\" -DOPENVDB_CORE_STATIC=OFF' }
473+
fail-fast: false
474+
steps:
475+
- uses: actions/checkout@v3
476+
- name: path
477+
shell: powershell
478+
run: |
479+
# note: system path must be modified in a previous step to it's use
480+
echo "$Env:VCPKG_INSTALLATION_ROOT\installed\${{ matrix.config.vc }}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
481+
echo "${{github.workspace}}\build\openvdb\openvdb\${{ matrix.config.build }}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
482+
- name: install_cuda
483+
shell: powershell
484+
run: .\ci\install_windows_cuda.ps1
485+
- name: install_deps
486+
shell: bash
487+
run: ./ci/install_windows.sh
488+
- name: build
489+
shell: bash
490+
run: >
491+
./ci/build.sh -v
492+
--config=${{ matrix.config.build }}
493+
--components=core,nano,nanotest,nanoexam,nanobench,nanotool
494+
--cargs=\'
495+
${{ matrix.config.cmake }}
496+
-DMSVC_COMPRESS_PDB=ON
497+
-DUSE_EXPLICIT_INSTANTIATION=OFF
498+
-DNANOVDB_USE_CUDA=ON
499+
-DNANOVDB_USE_OPENVDB=ON
500+
-DVCPKG_TARGET_TRIPLET=${VCPKG_DEFAULT_TRIPLET}
501+
-DCMAKE_TOOLCHAIN_FILE=\"${VCPKG_INSTALLATION_ROOT}\\scripts\\buildsystems\\vcpkg.cmake\"
502+
\'
503+
- name: test
504+
shell: bash
505+
run: cd build && ctest -V -E ".*cuda.*"
506+
507+
#############################################################################
508+
################################## Blosc ####################################
509+
#############################################################################
510+
399511
linux-blosc:
400512
if: |
401513
github.event_name != 'workflow_dispatch' ||

0 commit comments

Comments
 (0)