1111 - ' openvdb_maya/**'
1212 - ' openvdb_houdini/**'
1313 - ' openvdb_ax/**'
14+ - ' pendingchanges/**'
1415 - ' **.md'
1516 pull_request :
1617 branches :
2122 - ' openvdb_maya/**'
2223 - ' openvdb_houdini/**'
2324 - ' openvdb_ax/**'
25+ - ' pendingchanges/**'
2426 - ' **.md'
2527 schedule :
2628 # run this workflow every day at 7am UTC
3133
3234jobs :
3335 linux-vfx :
34- runs-on : ubuntu-16.04
35- name : linux-vfx:${{ matrix.config.image }}-abi:${{ matrix.config.abi }}-cxx:${{ matrix.config.cxx }}-type:${{ matrix.config.build }}
36+ # VFX platform jobs. These are run on the appropriate CentOS images from
37+ # the provided ASWF docker containers
38+ runs-on : ubuntu-latest
39+ name : >
40+ linux-vfx:${{ matrix.config.image }}-
41+ abi:${{ matrix.config.abi }}-
42+ cxx:${{ matrix.config.cxx }}-
43+ type:${{ matrix.config.build }}
3644 container :
3745 image : aswf/ci-openvdb:${{ matrix.config.image }}
3846 env :
3947 CXX : ${{ matrix.config.cxx }}
4048 strategy :
4149 matrix :
4250 config :
43- - { cxx: clang++, image: '2019', abi: '6', build: 'Release', test: 'ON' }
44- - { cxx: clang++, image: '2020', abi: '7', build: 'Release', test: 'ON' }
45- - { cxx: clang++, image: '2021', abi: '8', build: 'Release', test: 'ON' }
46- - { cxx: clang++, image: '2021', abi: '9', build: 'Release', test: 'ON' }
47- - { cxx: clang++, image: '2021', abi: '8', build: 'Debug', test: 'OFF' }
48- - { cxx: g++, image: '2020', abi: '7', build: 'Release', test: 'ON' }
49- - { cxx: g++, image: '2021', abi: '8', build: 'Release', test: 'ON' }
51+ - { cxx: clang++, image: '2019', abi: '6', build: 'Release' }
52+ - { cxx: clang++, image: '2020', abi: '7', build: 'Release' }
53+ - { cxx: clang++, image: '2021', abi: '8', build: 'Release' }
54+ - { cxx: clang++, image: '2021', abi: '9', build: 'Release' }
55+ - { cxx: clang++, image: '2021', abi: '8', build: 'Debug' }
56+ - { cxx: g++, image: '2020', abi: '7', build: 'Release' }
57+ - { cxx: g++, image: '2021', abi: '8', build: 'Release' }
5058 fail-fast : false
5159 steps :
52- - uses : actions/checkout@v1
60+ - uses : actions/checkout@v2
5361 - name : install_gtest
5462 run : ./ci/install_gtest.sh 1.8.0
5563 - name : build
56- run : ./ci/build.sh ${{ matrix.config.build }} ${{ matrix.config.abi }} ON None "core,python,bin,test" -DOPENVDB_CXX_STRICT=ON
64+ run : ./ci/build.sh ${{ matrix.config.build }} "core,python,bin,test" \
65+ -DOPENVDB_CXX_STRICT=ON -DOPENVDB_ABI_VERSION_NUMBER=${{ matrix.config.abi }}
5766 - name : test
58- # Always run tests on weekly builds
67+ # Always run tests on weekly builds but skip Debug on commits as they take a while.
5968 # https://github.community/t/distinct-job-for-each-schedule/17811/2
60- if : contains(github.event.schedule, '0 0 * * 1') || matrix.config.test == 'ON '
69+ if : contains(github.event.schedule, '0 0 * * 1') || matrix.config.build == 'Release '
6170 run : |
62- ./ci/test.sh
63- ./ci/test_install.sh
71+ cd build && ctest -V
72+ cd - && ./ci/test_install.sh
6473
6574 windows :
75+ # Windows CI. Tests static and dynamic builds with MT and MD respectively.
6676 runs-on : windows-2019
6777 name : windows-vc:${{ matrix.config.vc }}-type:${{ matrix.config.build }}
6878 env :
@@ -73,10 +83,10 @@ jobs:
7383 # static build of blosc from vcpkg does not build internal sources.
7484 # USE_STATIC_DEPENDENCIES is required for IlmBase/OpenEXR defines and
7585 # Boost as both shared and static libs are installed.
76- - { vc: 'x64-windows-static', build: 'Release', test: 'ON', cmake: '-DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
77- - { vc: 'x64-windows-static', build: 'Debug', test: 'OFF', cmake: '-DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
78- - { vc: 'x64-windows', build: 'Release', test: 'ON', cmake: '-DOPENVDB_CORE_STATIC=OFF' }
79- - { vc: 'x64-windows', build: 'Debug', test: 'OFF', cmake: '-DOPENVDB_CORE_STATIC=OFF' }
86+ - { vc: 'x64-windows-static', build: 'Release', cmake: '-DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
87+ - { vc: 'x64-windows-static', build: 'Debug', cmake: '-DOPENVDB_CORE_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
88+ - { vc: 'x64-windows', build: 'Release', cmake: '-DOPENVDB_CORE_STATIC=OFF' }
89+ - { vc: 'x64-windows', build: 'Debug', cmake: '-DOPENVDB_CORE_STATIC=OFF' }
8090 fail-fast : false
8191 steps :
8292 - uses : actions/checkout@v2
@@ -93,89 +103,74 @@ jobs:
93103 run : ./ci/build_windows.sh ${{ matrix.config.build }} ${{ matrix.config.cmake }}
94104 - name : test
95105 shell : bash
96- # Always run tests on weekly builds
106+ # Always run tests on weekly builds but skip Debug on commits as they take a while.
97107 # https://github.community/t/distinct-job-for-each-schedule/17811/2
98- if : contains(github.event.schedule, '0 0 * * 1') || matrix.config.test == 'ON'
99- run : ./ci/test.sh
100-
101- testabi8lite :
102- runs-on : ubuntu-16.04
103- env :
104- CXX : clang++
105- container :
106- image : aswf/ci-openvdb:2021
107- steps :
108- - uses : actions/checkout@v1
109- - name : install_gtest
110- run : ./ci/install_gtest.sh 1.10.0
111- - name : build
112- run : ./ci/build.sh Release 8 OFF None "core,python,bin,test" -DOPENVDB_CXX_STRICT=ON -DUSE_ZLIB=OFF
113- - name : test
114- run : ./ci/test.sh
108+ if : contains(github.event.schedule, '0 0 * * 1') || matrix.config.build == 'Release'
109+ run : cd build && ctest -V
115110
116- testabi8half :
117- runs-on : ubuntu-16.04
118- env :
119- CXX : clang++
111+ linux-extra :
112+ # Extra configuration tests, all run on the ASWF docker images. These run weekly
113+ # rather than on PR/merge
114+ if : contains(github.event.schedule, '0 0 * * 1')
115+ runs-on : ubuntu-latest
116+ name : linux-extra:${{ matrix.config.name }}
120117 container :
121118 image : aswf/ci-openvdb:2021
122- steps :
123- - uses : actions/checkout@v1
124- - name : install_gtest
125- run : ./ci/install_gtest.sh 1.10.0
126- - name : build
127- run : ./ci/build.sh Release 8 OFF None "core,python,bin,test" -DOPENVDB_CXX_STRICT=ON -DUSE_IMATH_HALF=ON
128- - name : test
129- run : ./ci/test.sh
130-
131- testabi8sse :
132- runs-on : ubuntu-16.04
133119 env :
134120 CXX : clang++
135- container :
136- image : aswf/ci-openvdb:2021
121+ strategy :
122+ matrix :
123+ config :
124+ - { name: 'abi8lite', cmake: '-DUSE_BLOSC=OFF -DUSE_ZLIB=OFF' }
125+ - { name: 'abi8half', cmake: '-DUSE_BLOSC=OFF -DUSE_IMATH_HALF=ON' }
126+ - { name: 'abi8sse', cmake: '-DOPENVDB_SIMD=SSE42' }
127+ - { name: 'abi8avx', cmake: '-DOPENVDB_SIMD=AVX' }
128+ fail-fast : false
137129 steps :
138- - uses : actions/checkout@v1
130+ - uses : actions/checkout@v2
139131 - name : install_gtest
140132 run : ./ci/install_gtest.sh 1.10.0
141133 - name : build
142- run : ./ci/build.sh Release 8 ON SSE42 "core,python,bin,test" -DOPENVDB_CXX_STRICT=ON
134+ run : ./ci/build.sh Release "core,python,bin,test" \
135+ -DOPENVDB_CXX_STRICT=ON -DOPENVDB_ABI_VERSION_NUMBER=8 ${{ matrix.config.cmake }}
143136 - name : test
144- run : ./ci/test.sh
137+ run : cd build && ctest -V
145138
146139 testabi8gcc10 :
147140 runs-on : ubuntu-20.04
148141 env :
149142 CXX : g++-10
150143 steps :
151- - uses : actions/checkout@v1
144+ - uses : actions/checkout@v2
152145 - name : install_boost
153146 run : sudo apt-get -q install -y libboost-dev libboost-system-dev libboost-iostreams-dev
154147 - name : install_tbb
155148 run : sudo apt-get -q install -y libtbb-dev
156149 - name : install_gtest
157150 run : sudo apt-get -q install -y libgtest-dev
158151 - name : build
159- run : ./ci/build.sh Release 8 OFF None "core,test" -DUSE_ZLIB=OFF -DCMAKE_INSTALL_PREFIX=`pwd`
152+ run : ./ci/build.sh Release "core,test" \
153+ -DUSE_BLOSC=OFF -DUSE_ZLIB=OFF -DOPENVDB_ABI_VERSION_NUMBER=8 -DCMAKE_INSTALL_PREFIX=`pwd`
160154 - name : test
161- run : ./ci/test.sh
155+ run : cd build && ctest -V
162156
163157 testabi8clang10 :
164158 runs-on : ubuntu-20.04
165159 env :
166160 CXX : clang++-10
167161 steps :
168- - uses : actions/checkout@v1
162+ - uses : actions/checkout@v2
169163 - name : install_boost
170164 run : sudo apt-get -q install -y libboost-dev libboost-system-dev libboost-iostreams-dev
171165 - name : install_tbb
172166 run : sudo apt-get -q install -y libtbb-dev
173167 - name : install_gtest
174168 run : sudo apt-get -q install -y libgtest-dev
175169 - name : build
176- run : ./ci/build.sh Release 8 OFF None "core,test" -DUSE_ZLIB=OFF -DCMAKE_INSTALL_PREFIX=`pwd`
170+ run : ./ci/build.sh Release "core,test" \
171+ -DUSE_BLOSC=OFF -DUSE_ZLIB=OFF -DOPENVDB_ABI_VERSION_NUMBER=8 -DCMAKE_INSTALL_PREFIX=`pwd`
177172 - name : test
178- run : ./ci/test.sh
173+ run : cd build && ctest -V
179174
180175 testmacos1015 :
181176 runs-on : macos-10.15
@@ -200,7 +195,8 @@ jobs:
200195 shell : bash
201196 # Also need to disable compiler warnings for ABI 6 and above due to
202197 # the version of clang installed
203- run : ./ci/build.sh Release 8 ON SSE42 "core,python,bin,test" -DOPENVDB_CXX_STRICT=OFF
198+ run : ./ci/build.sh Release "core,python,bin,test" \
199+ -DOPENVDB_CXX_STRICT=OFF -DOPENVDB_ABI_VERSION_NUMBER=8 -DOPENVDB_SIMD=SSE42
204200 - name : test
205201 shell : bash
206- run : ./ci/test.sh
202+ run : cd build && ctest -V
0 commit comments