@@ -61,12 +61,12 @@ jobs:
6161 strategy :
6262 fail-fast : true
6363 matrix :
64- build : [7, 8, 9, 10, 11, 12, 13, 14, 15 ]
64+ build : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ]
6565 include :
6666 # -------------------------------------------------------------------
67- # VFX CY2025 (Python 3.11 )
67+ # VFX CY2026 (Python 3.13 )
6868 # -------------------------------------------------------------------
69- - build : 15
69+ - build : 12
7070 build-type : Debug
7171 build-shared : ' ON'
7272 build-docs : ' OFF'
7777 cxx-compiler : clang++
7878 cc-compiler : clang
7979 compiler-desc : Clang
80- vfx-cy : 2025
80+ vfx-cy : 2026
8181 install-ext-packages : MISSING
82- - build : 14
82+ - build : 11
8383 build-type : Release
8484 build-shared : ' ON'
8585 build-docs : ' ON'
9090 cxx-compiler : g++
9191 cc-compiler : gcc
9292 compiler-desc : GCC
93- vfx-cy : 2025
93+ vfx-cy : 2026
9494 install-ext-packages : ALL
95- - build : 13
95+ - build : 10
9696 build-type : Release
9797 build-shared : ' OFF'
9898 build-docs : ' OFF'
@@ -103,12 +103,12 @@ jobs:
103103 cxx-compiler : g++
104104 cc-compiler : gcc
105105 compiler-desc : GCC
106- vfx-cy : 2025
106+ vfx-cy : 2026
107107 install-ext-packages : ALL
108108 # -------------------------------------------------------------------
109- # VFX CY2024 (Python 3.11)
109+ # VFX CY2025 (Python 3.11)
110110 # -------------------------------------------------------------------
111- - build : 12
111+ - build : 9
112112 build-type : Debug
113113 build-shared : ' ON'
114114 build-docs : ' OFF'
@@ -119,9 +119,9 @@ jobs:
119119 cxx-compiler : clang++
120120 cc-compiler : clang
121121 compiler-desc : Clang
122- vfx-cy : 2024
122+ vfx-cy : 2025
123123 install-ext-packages : MISSING
124- - build : 11
124+ - build : 8
125125 build-type : Release
126126 build-shared : ' ON'
127127 build-docs : ' ON'
@@ -132,9 +132,9 @@ jobs:
132132 cxx-compiler : g++
133133 cc-compiler : gcc
134134 compiler-desc : GCC
135- vfx-cy : 2024
135+ vfx-cy : 2025
136136 install-ext-packages : ALL
137- - build : 10
137+ - build : 7
138138 build-type : Release
139139 build-shared : ' OFF'
140140 build-docs : ' OFF'
@@ -145,12 +145,12 @@ jobs:
145145 cxx-compiler : g++
146146 cc-compiler : gcc
147147 compiler-desc : GCC
148- vfx-cy : 2024
148+ vfx-cy : 2025
149149 install-ext-packages : ALL
150150 # -------------------------------------------------------------------
151- # VFX CY2023 (Python 3.10 )
151+ # VFX CY2024 (Python 3.11 )
152152 # -------------------------------------------------------------------
153- - build : 9
153+ - build : 6
154154 build-type : Debug
155155 build-shared : ' ON'
156156 build-docs : ' OFF'
@@ -161,9 +161,9 @@ jobs:
161161 cxx-compiler : clang++
162162 cc-compiler : clang
163163 compiler-desc : Clang
164- vfx-cy : 2023
164+ vfx-cy : 2024
165165 install-ext-packages : MISSING
166- - build : 8
166+ - build : 5
167167 build-type : Release
168168 build-shared : ' ON'
169169 build-docs : ' ON'
@@ -174,9 +174,9 @@ jobs:
174174 cxx-compiler : g++
175175 cc-compiler : gcc
176176 compiler-desc : GCC
177- vfx-cy : 2023
177+ vfx-cy : 2024
178178 install-ext-packages : ALL
179- - build : 7
179+ - build : 4
180180 build-type : Release
181181 build-shared : ' OFF'
182182 build-docs : ' OFF'
@@ -187,136 +187,24 @@ jobs:
187187 cxx-compiler : g++
188188 cc-compiler : gcc
189189 compiler-desc : GCC
190- vfx-cy : 2023
190+ vfx-cy : 2024
191191 install-ext-packages : ALL
192- env :
193- CXX : ${{ matrix.cxx-compiler }}
194- CC : ${{ matrix.cc-compiler }}
195- steps :
196- - name : Checkout
197- uses : actions/checkout@v4
198- - name : Install docs env
199- run : share/ci/scripts/linux/dnf/install_docs_env.sh
200- if : matrix.build-docs == 'ON'
201- - name : Install tests env
202- run : share/ci/scripts/linux/dnf/install_tests_env.sh
203- - name : Create build directories
204- run : |
205- mkdir _install
206- mkdir _build
207- - name : Configure
208- run : |
209- cmake ../. \
210- -DCMAKE_INSTALL_PREFIX=../_install \
211- -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
212- -DCMAKE_CXX_STANDARD=${{ matrix.cxx-standard }} \
213- -DBUILD_SHARED_LIBS=${{ matrix.build-shared }} \
214- -DOCIO_BUILD_DOCS=${{ matrix.build-docs }} \
215- -DOCIO_BUILD_OPENFX=${{ matrix.build-openfx }} \
216- -DOCIO_BUILD_GPU_TESTS=OFF \
217- -DOCIO_USE_SIMD=${{ matrix.use-simd }} \
218- -DOCIO_USE_OIIO_FOR_APPS=${{ matrix.use-oiio }} \
219- -DOCIO_INSTALL_EXT_PACKAGES=${{ matrix.install-ext-packages }} \
220- -DOCIO_WARNING_AS_ERROR=ON \
221- -DPython_EXECUTABLE=$(which python)
222- working-directory : _build
223- - name : Build
224- run : |
225- cmake --build . \
226- --target install \
227- --config ${{ matrix.build-type }} \
228- -- -j$(nproc)
229- echo "ocio_build_path=$(pwd)" >> $GITHUB_ENV
230- working-directory : _build
231- - name : Test
232- run : ctest -V -C ${{ matrix.build-type }}
233- working-directory : _build
234- - name : Test CMake Consumer with shared OCIO
235- if : matrix.build-shared == 'ON'
236- run : |
237- cmake . \
238- -DCMAKE_PREFIX_PATH=../../../_install \
239- -DCMAKE_BUILD_TYPE=${{ matrix.build-type }}
240- cmake --build . \
241- --config ${{ matrix.build-type }}
242- ./consumer
243- working-directory : _build/tests/cmake-consumer-dist
244- - name : Test CMake Consumer with static OCIO
245- if : matrix.build-shared == 'OFF'
246- # The yaml-cpp_VERSION is set below because Findyaml-cpp.cmake needs it but is unable to
247- # extract it from the headers, like the other modules.
248- #
249- # Prefer the static version of each dependencies by using <pkg>_STATIC_LIBRARY.
250- # Alternatively, this can be done by setting <pkg>_LIBRARY and <pkg>_INCLUDE_DIR to
251- # the static version of the package.
252- run : |
253- cmake . \
254- -DCMAKE_PREFIX_PATH=../../../_install \
255- -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
256- -Dexpat_ROOT=${{ env.ocio_build_path }}/ext/dist \
257- -Dexpat_STATIC_LIBRARY=ON \
258- -DImath_ROOT=${{ env.ocio_build_path }}/ext/dist \
259- -DImath_STATIC_LIBRARY=ON \
260- -Dpystring_ROOT=${{ env.ocio_build_path }}/ext/dist \
261- -Dyaml-cpp_ROOT=${{ env.ocio_build_path }}/ext/dist \
262- -Dyaml-cpp_STATIC_LIBRARY=ON \
263- -Dyaml-cpp_VERSION=0.8.0 \
264- -DZLIB_ROOT=${{ env.ocio_build_path }}/ext/dist \
265- -DZLIB_STATIC_LIBRARY=ON \
266- -Dminizip-ng_ROOT=${{ env.ocio_build_path }}/ext/dist \
267- -Dminizip-ng_STATIC_LIBRARY=ON
268- cmake --build . \
269- --config ${{ matrix.build-type }}
270- ./consumer
271- working-directory : _build/tests/cmake-consumer-dist
272-
273- # ---------------------------------------------------------------------------
274- # Linux (unsupported Node.js)
275- # ---------------------------------------------------------------------------
276-
277- linux-old :
278- name : ' Linux VFX CY${{ matrix.vfx-cy }}
279- <${{ matrix.compiler-desc }}
280- config=${{ matrix.build-type }},
281- shared=${{ matrix.build-shared }},
282- simd=${{ matrix.use-simd }},
283- cxx=${{ matrix.cxx-standard }},
284- docs=${{ matrix.build-docs }},
285- oiio=${{ matrix.use-oiio }}>'
286- # Avoid duplicated checks when a pull_request is opened from a local branch.
287- if : |
288- github.event_name == 'push' ||
289- github.event.pull_request.head.repo.full_name != github.repository
290- # GH-hosted VM. The build runs in ASWF 'container' defined below.
291- runs-on : ubuntu-latest
292- container :
293- # DockerHub: https://hub.docker.com/u/aswf
294- # Source: https://github.com/AcademySoftwareFoundation/aswf-docker
295- image : aswf/ci-ocio:${{ matrix.vfx-cy }}
296- volumes :
297- - /node20217:/node20217:rw,rshared
298- - /node20217:/__e/node20:ro,rshared
299- strategy :
300- fail-fast : true
301- matrix :
302- build : [1, 2, 3]
303- include :
304192 # -------------------------------------------------------------------
305- # VFX CY2022 (Python 3.9 )
193+ # VFX CY2023 (Python 3.10 )
306194 # -------------------------------------------------------------------
307- - build : 1
195+ - build : 3
308196 build-type : Debug
309197 build-shared : ' ON'
310198 build-docs : ' OFF'
311199 build-openfx : ' ON'
312200 use-simd : ' ON'
313201 use-oiio : ' ON'
314- cxx-standard : 17
202+ cxx-standard : 20
315203 cxx-compiler : clang++
316204 cc-compiler : clang
317205 compiler-desc : Clang
318- vfx-cy : 2022
319- install-ext-packages : ALL
206+ vfx-cy : 2023
207+ install-ext-packages : MISSING
320208 - build : 2
321209 build-type : Release
322210 build-shared : ' ON'
@@ -328,9 +216,9 @@ jobs:
328216 cxx-compiler : g++
329217 cc-compiler : gcc
330218 compiler-desc : GCC
331- vfx-cy : 2022
332- install-ext-packages : MISSING
333- - build : 3
219+ vfx-cy : 2023
220+ install-ext-packages : ALL
221+ - build : 1
334222 build-type : Release
335223 build-shared : ' OFF'
336224 build-docs : ' OFF'
@@ -341,30 +229,14 @@ jobs:
341229 cxx-compiler : g++
342230 cc-compiler : gcc
343231 compiler-desc : GCC
344- vfx-cy : 2022
232+ vfx-cy : 2023
345233 install-ext-packages : ALL
346234 env :
347235 CXX : ${{ matrix.cxx-compiler }}
348236 CC : ${{ matrix.cc-compiler }}
349237 steps :
350- # Install nodejs 20 with glibc 2.17, to work around the face that the
351- # GHA runners are insisting on a node version that is too new for the
352- # glibc in the ASWF containers prior to 2023.
353- - name : Install nodejs20glibc2.17
354- run : |
355- curl --silent https://unofficial-builds.nodejs.org/download/release/v20.18.1/node-v20.18.1-linux-x64-glibc-217.tar.xz | tar -xJ --strip-components 1 -C /node20217 -f -
356- # We would like to use harden-runner, but it flags too many false
357- # positives, every time we download a dependency. We should use it only
358- # on CI runs where we are producing artifacts that users might rely on.
359- # - name: Harden Runner
360- # uses: step-security/harden-runner@248ae51c2e8cc9622ecf50685c8bf7150c6e8813 # v1.4.3
361- # with:
362- # egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs
363- - uses : actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
364- # Note: can't upgrade to actions/checkout 4.0 because it needs newer
365- # glibc than these containers have.
366238 - name : Checkout
367- uses : actions/checkout@v3
239+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
368240 - name : Install docs env
369241 run : share/ci/scripts/linux/dnf/install_docs_env.sh
370242 if : matrix.build-docs == 'ON'
@@ -517,11 +389,11 @@ jobs:
517389 python-version : ' 3.9'
518390 steps :
519391 - name : Setup Python
520- uses : actions/setup-python@v5
392+ uses : actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
521393 with :
522394 python-version : ${{ matrix.python-version }}
523395 - name : Checkout
524- uses : actions/checkout@v4
396+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
525397 - name : Install docs env
526398 run : share/ci/scripts/macos/install_docs_env.sh
527399 if : matrix.build-docs == 'ON'
@@ -643,11 +515,11 @@ jobs:
643515 python-version : ' 3.12'
644516 steps :
645517 - name : Setup Python
646- uses : actions/setup-python@v5
518+ uses : actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
647519 with :
648520 python-version : ${{ matrix.python-version }}
649521 - name : Checkout
650- uses : actions/checkout@v4
522+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
651523 - name : Install docs env
652524 run : share/ci/scripts/macos/install_docs_env.sh
653525 if : matrix.build-docs == 'ON'
@@ -791,11 +663,11 @@ jobs:
791663 python-version : ' 3.9'
792664 steps :
793665 - name : Setup Python
794- uses : actions/setup-python@v5
666+ uses : actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
795667 with :
796668 python-version : ${{ matrix.python-version }}
797669 - name : Checkout
798- uses : actions/checkout@v4
670+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
799671 - name : Install docs env
800672 run : |
801673 DOXYGEN_PATH=$GITHUB_WORKSPACE/doxygen
0 commit comments