diff --git a/.github/workflows/build-steps.yml b/.github/workflows/build-steps.yml index 62d89e06..583c4801 100644 --- a/.github/workflows/build-steps.yml +++ b/.github/workflows/build-steps.yml @@ -28,8 +28,8 @@ on: type: string default: 'ON' vfxyear: - type: string - default: '0' + type: number + default: 0 ceres_hack: type: string default: 'OFF' @@ -54,7 +54,7 @@ jobs: steps: - name: Install nodejs20glibc2.17 - VFX2022 only - if: inputs.vfxyear == '2022' + if: inputs.vfxyear == 2022 run: | 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 - @@ -63,17 +63,26 @@ jobs: fetch-depth: '0' - name: Yum config - VFX2022 only - if: inputs.vfxyear == '2022' + if: inputs.vfxyear == 2022 shell: bash run: | yum-config-manager --disable centos-sclo-rh || true sed -i 's,^mirrorlist=,#,; s,^#baseurl=http://mirror\.centos\.org/centos/$releasever,baseurl=https://vault.centos.org/7.9.2009,' /etc/yum.repos.d/CentOS-Base.repo - name: Dependencies + if: inputs.vfxyear < 2024 shell: bash run: | build_scripts/${{ inputs.install_deps }}.bash - + + - name: Dependencies (aswf/ci-rawtoaces) + if: inputs.vfxyear > 2023 + shell: bash + run: | + conan profile detect --force + conan install --requires=nlohmann_json/3.12.0 --requires=nanobind/2.9.2 --generator CMakeDeps --generator CMakeToolchain --output-folder=build_deps --build=missing + python -m pip install pytest + - name: Configure CMake run: > cmake @@ -82,6 +91,7 @@ jobs: -D RTA_CENTOS7_CERES_HACK=${{ inputs.ceres_hack }} -D CMAKE_INSTALL_PREFIX=${{ github.workspace }}/install -D CMAKE_CXX_STANDARD=17 + -D CMAKE_BUILD_TYPE=${{ inputs.build_type }} -D CMAKE_TOOLCHAIN_FILE="${{ inputs.toolchain_file }}" -D ENABLE_SHARED="${{ inputs.build_shared_libs }}" @@ -110,6 +120,7 @@ jobs: -D RAWTOACES_DIR=${{ github.workspace }}/install/lib/cmake/RAWTOACES -D CMAKE_TOOLCHAIN_FILE="${{ inputs.toolchain_file }}" -D CMAKE_CXX_STANDARD=17 + -D CMAKE_BUILD_TYPE=${{ inputs.build_type }} - name: Build config_tests if: inputs.test_install == 'ON' diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 60cf0f4a..62efeb9b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,13 +23,14 @@ jobs: vfxyear: ${{ matrix.vfxyear || 0 }} ceres_hack: ${{ matrix.ceres_hack || 'OFF' }} test_install: ${{ matrix.test_install || 'ON' }} + toolchain_file: ${{ matrix.toolchain_file }} strategy: # Set fail-fast to false to ensure that feedback is delivered for all matrix combinations. Consider changing this to true when your workflow is stable. fail-fast: false matrix: - vfxyear: [ 2022, 2023, 2024 ] + vfxyear: [ 2022, 2023, 2024, 2025, 2026 ] compiler: [ [gcc, g++], [clang, clang++] ] include: - vfxyear: 2022 @@ -40,7 +41,14 @@ jobs: - vfxyear: 2023 container: aswf/ci-osl:2023-clang15 - vfxyear: 2024 - container: aswf/ci-osl:2024-clang17 + container: aswf/ci-rawtoaces:2024.4 + toolchain_file: "/__w/rawtoaces/rawtoaces/build_deps/conan_toolchain.cmake" + - vfxyear: 2025 + container: aswf/ci-rawtoaces:2025.3 + toolchain_file: "/__w/rawtoaces/rawtoaces/build_deps/conan_toolchain.cmake" + - vfxyear: 2026 + container: aswf/ci-rawtoaces:2026.1 + toolchain_file: "/__w/rawtoaces/rawtoaces/build_deps/conan_toolchain.cmake" build: name: "${{matrix.os}} ${{matrix.c_compiler}}"