3535 type : string
3636 fmt_ver :
3737 type : string
38+ fmt_commit :
39+ type : string
3840 opencolorio_ver :
3941 type : string
4042 openexr_ver :
@@ -109,6 +111,7 @@ jobs:
109111 CTEST_TEST_TIMEOUT : ${{inputs.ctest_test_timeout}}
110112 USE_SIMD : ${{inputs.simd}}
111113 fmt_BUILD_VERSION : ${{inputs.fmt_ver}}
114+ fmt_GIT_COMMIT : ${{inputs.fmt_commit}}
112115 OPENCOLORIO_VERSION : ${{inputs.opencolorio_ver}}
113116 OPENEXR_VERSION : ${{inputs.openexr_ver}}
114117 PYBIND11_VERSION : ${{inputs.pybind11_ver}}
@@ -122,25 +125,42 @@ jobs:
122125 # against and testing an optional dependency, but in fact are not.
123126 OpenImageIO_REQUIRED_DEPS : ${{inputs.required_deps}}
124127 OpenImageIO_OPTIONAL_DEPS : ${{inputs.optional_deps}}
128+ SETENVS : ${{inputs.setenvs}}
129+ DEPCMDS : ${{inputs.depcmds}}
125130
126131 steps :
127132 - name : install nodejs20glibc2.17
128133 if : inputs.old_node == '1'
129134 run : |
130135 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 -
131136 - name : Checkout repo
132- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
137+ if : inputs.old_node != '1'
138+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
139+ - name : Checkout repo-OLD
140+ if : inputs.old_node == '1'
141+ # Must use an old checkout action for old containers
142+ uses : actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
133143 - name : Build setup
134144 shell : bash
135145 run : |
136- ${{inputs.setenvs}}
146+ eval "$SETENVS"
137147 src/build-scripts/ci-startup.bash
138148 - name : Prepare ccache timestamp
139149 id : ccache_cache_keys
140150 shell : bash
141151 run : echo "date=`date -u +'%Y-%m-%dT%H:%M:%SZ'`" >> $GITHUB_OUTPUT
142152 - name : ccache-restore
153+ if : inputs.old_node != '1'
143154 id : ccache-restore
155+ uses : actions/cache/restore@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
156+ with :
157+ path : ${{ env.CCACHE_DIR }}
158+ key : ${{inputs.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
159+ restore-keys : ${{inputs.nametag}}
160+ - name : ccache-restore-OLD
161+ if : inputs.old_node == '1'
162+ id : ccache-restore-old
163+ # Must use an old cache restore action for old containers
144164 uses : actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
145165 with :
146166 path : ${{ env.CCACHE_DIR }}
@@ -150,7 +170,7 @@ jobs:
150170 - name : Dependencies
151171 shell : bash
152172 run : |
153- ${{inputs.depcmds}}
173+ eval "$DEPCMDS"
154174 if [[ "$RUNNER_OS" == "Linux" ]]; then
155175 src/build-scripts/gh-installdeps.bash
156176 elif [[ "$RUNNER_OS" == "macOS" ]]; then
@@ -160,14 +180,14 @@ jobs:
160180 fi
161181 - name : Install sonar-scanner and build-wrapper
162182 if : inputs.sonar == '1'
163- uses : sonarsource/sonarqube-scan-action@fd88b7d7ccbaefd23d8f36f73b59db7a3d246602 # v6 .0.0
183+ uses : sonarsource/sonarqube-scan-action@a31c9398be7ace6bbfaf30c0bd5d415f843d45e9 # v7 .0.0
164184 - name : Build
165185 if : inputs.skip_build != '1'
166186 shell : bash
167187 run : src/build-scripts/ci-build.bash
168188 - name : Check out ABI standard
169189 if : inputs.abi_check != ''
170- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2 .2
190+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0 .2
171191 with :
172192 ref : ${{inputs.abi_check}}
173193 path : abi_standard
@@ -180,7 +200,16 @@ jobs:
180200 src/build-scripts/ci-build.bash
181201 popd
182202 - name : ccache-save
203+ if : inputs.old_node != '1'
183204 id : ccache-save
205+ uses : actions/cache/save@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
206+ with :
207+ path : ${{ env.CCACHE_DIR }}
208+ key : ${{inputs.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
209+ - name : ccache-save-OLD
210+ if : inputs.old_node == '1'
211+ id : ccache-save-old
212+ # Must use an old cache action for old containers
184213 uses : actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
185214 with :
186215 path : ${{ env.CCACHE_DIR }}
@@ -208,10 +237,10 @@ jobs:
208237 run : |
209238 which sonar-scanner
210239 ls -l /__w/OpenImageIO/OpenImageIO/bw_output
211- echo "BUILD_OUTPUT_DIR is " "${{ env. BUILD_WRAPPER_OUT_DIR } }"
240+ echo "BUILD_OUTPUT_DIR is ${ BUILD_WRAPPER_OUT_DIR}"
212241 find . -name "*.gcov" -print
213- # sonar-scanner --define sonar.cfamily.compile-commands="${{ env. BUILD_WRAPPER_OUT_DIR } }/compile_commands.json"
214- time sonar-scanner --define sonar.host.url="${{ env. SONAR_SERVER_URL } }" --define sonar.cfamily.compile-commands="$BUILD_WRAPPER_OUT_DIR/compile_commands.json" --define sonar.cfamily.gcov.reportsPath="_coverage" --define sonar.cfamily.threads="$PARALLEL"
242+ # sonar-scanner --define sonar.cfamily.compile-commands="${BUILD_WRAPPER_OUT_DIR}/compile_commands.json"
243+ time sonar-scanner --define sonar.host.url="${SONAR_SERVER_URL}" --define sonar.cfamily.compile-commands="$BUILD_WRAPPER_OUT_DIR/compile_commands.json" --define sonar.cfamily.gcov.reportsPath="_coverage" --define sonar.cfamily.threads="$PARALLEL"
215244 # Consult https://docs.sonarcloud.io/advanced-setup/ci-based-analysis/sonarscanner-cli/ for more information and options
216245 - name : Check ABI
217246 if : inputs.abi_check != ''
@@ -226,8 +255,24 @@ jobs:
226255 time make doxygen
227256 time make sphinx
228257 - name : Upload testsuite debugging artifacts
258+ uses : actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
259+ if : ${{ inputs.old_node != '1' && (failure() || inputs.build_docs == '1' || inputs.benchmark == '1' || inputs.abi_check != '') }}
260+ with :
261+ name : oiio-${{github.job}}-${{inputs.nametag}}
262+ path : |
263+ build/cmake-save
264+ build/compat_reports
265+ build/sphinx
266+ build/benchmarks
267+ build/testsuite/*/*.*
268+ !build/testsuite/oiio-images
269+ !build/testsuite/openexr-images
270+ !build/testsuite/fits-images
271+ !build/testsuite/j2kp4files_v1_5
272+ ${{ inputs.extra_artifacts }}
273+ - name : Upload testsuite debugging artifacts-OLD
229274 uses : actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
230- if : ${{ failure() || inputs.build_docs == '1' || inputs.benchmark == '1' || inputs.abi_check != '' }}
275+ if : ${{ inputs.old_node == '1' && ( failure() || inputs.build_docs == '1' || inputs.benchmark == '1' || inputs.abi_check != '') }}
231276 with :
232277 name : oiio-${{github.job}}-${{inputs.nametag}}
233278 path : |
0 commit comments