Skip to content

Commit 081b7b2

Browse files
authored
Merge branch 'AcademySoftwareFoundation:main' into R3D
2 parents 0d159fe + 4bf81a0 commit 081b7b2

File tree

383 files changed

+14687
-5955
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

383 files changed

+14687
-5955
lines changed

.github/workflows/analysis.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,13 +87,14 @@ jobs:
8787
fail-fast: false
8888
matrix:
8989
include:
90-
- desc: sonar gcc11/C++17 py310 exr3.2 ocio2.3
90+
- desc: sonar gcc11/C++17 py311 exr3.2 ocio2.3
9191
nametag: static-analysis-sonar
9292
os: ubuntu-latest
93-
container: aswf/ci-osl:2024-clang17
93+
container: aswf/ci-oiio:2024.2
9494
cxx_std: 17
9595
python_ver: "3.11"
9696
simd: "avx2,f16c"
97+
opencolorio_ver: v2.3.2
9798
fmt_ver: 10.1.1
9899
pybind11_ver: v2.12.0
99100
coverage: 1

.github/workflows/build-steps.yml

Lines changed: 46 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@ on:
6868
type: string
6969
nametag:
7070
type: string
71+
required_deps:
72+
type: string
73+
optional_deps:
74+
type: string
7175
secrets:
7276
PASSED_GITHUB_TOKEN:
7377
required: false
@@ -102,29 +106,33 @@ jobs:
102106
ABI_CHECK: ${{inputs.abi_check}}
103107
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
104108
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
109+
# For CI, sometimes we want to require all dependencies to be present,
110+
# except for a select few listed explicitly. This ensures that we don't
111+
# accidentally have a situation in which we think we are building
112+
# against and testing an optional dependency, but in fact are not.
113+
OpenImageIO_REQUIRED_DEPS: ${{inputs.required_deps}}
114+
OpenImageIO_OPTIONAL_DEPS: ${{inputs.optional_deps}}
105115

106116
steps:
107117
- name: Checkout repo
108118
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
109-
- name: Prepare ccache timestamp
110-
id: ccache_cache_keys
111-
shell: bash
112-
run: echo "date=`date -u +'%Y-%m-%dT%H:%M:%SZ'`" >> $GITHUB_OUTPUT
113-
- name: ccache
114-
id: ccache
115-
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
116-
with:
117-
path: ./ccache
118-
key: ${{github.job}}-${{inputs.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
119-
restore-keys: ${{github.job}}-
120-
- name: Setup Nuget.exe (Windows only)
121-
if: runner.os == 'Windows'
122-
uses: nuget/setup-nuget@a21f25cd3998bf370fde17e3f1b4c12c175172f9 # v2.0.0
123119
- name: Build setup
124120
shell: bash
125121
run: |
126122
${{inputs.setenvs}}
127123
src/build-scripts/ci-startup.bash
124+
- name: Prepare ccache timestamp
125+
id: ccache_cache_keys
126+
shell: bash
127+
run: echo "date=`date -u +'%Y-%m-%dT%H:%M:%SZ'`" >> $GITHUB_OUTPUT
128+
- name: ccache-restore
129+
id: ccache-restore
130+
uses: actions/cache/restore@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
131+
with:
132+
path: ${{ env.CCACHE_DIR }}
133+
# path: ./ccache
134+
key: ${{inputs.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
135+
restore-keys: ${{inputs.nametag}}
128136
- name: Dependencies
129137
shell: bash
130138
run: |
@@ -143,6 +151,26 @@ jobs:
143151
if: inputs.skip_build != '1'
144152
shell: bash
145153
run: src/build-scripts/ci-build.bash
154+
- name: Check out ABI standard
155+
if: inputs.abi_check != ''
156+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
157+
with:
158+
ref: ${{inputs.abi_check}}
159+
path: abi_standard
160+
- name: Build ABI standard
161+
if: inputs.abi_check != ''
162+
shell: bash
163+
run: |
164+
mkdir -p abi_standard/build
165+
pushd abi_standard
166+
src/build-scripts/ci-build.bash
167+
popd
168+
- name: ccache-save
169+
id: ccache-save
170+
uses: actions/cache/save@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
171+
with:
172+
path: ${{ env.CCACHE_DIR }}
173+
key: ${{inputs.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
146174
- name: Testsuite
147175
if: inputs.skip_tests != '1'
148176
shell: bash
@@ -159,7 +187,7 @@ jobs:
159187
if: inputs.coverage == '1'
160188
run: src/build-scripts/ci-coverage.bash
161189
- name: Sonar-scanner
162-
if: inputs.sonar == 1
190+
if: inputs.sonar == '1'
163191
env:
164192
GITHUB_TOKEN: ${{ secrets.PASSED_GITHUB_TOKEN }}
165193
SONAR_TOKEN: ${{ secrets.PASSED_SONAR_TOKEN }}
@@ -168,23 +196,9 @@ jobs:
168196
ls -l /__w/OpenImageIO/OpenImageIO/bw_output
169197
echo "BUILD_OUTPUT_DIR is " "${{ env.BUILD_WRAPPER_OUT_DIR }}"
170198
find . -name "*.gcov" -print
171-
# sonar-scanner --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
172-
time sonar-scanner --define sonar.host.url="${{ env.SONAR_SERVER_URL }}" --define sonar.cfamily.build-wrapper-output="$BUILD_WRAPPER_OUT_DIR" --define sonar.cfamily.gcov.reportsPath="_coverage" --define sonar.cfamily.threads="$PARALLEL"
199+
# sonar-scanner --define sonar.cfamily.compile-commands="${{ env.BUILD_WRAPPER_OUT_DIR }}/compile_commands.json"
200+
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"
173201
# Consult https://docs.sonarcloud.io/advanced-setup/ci-based-analysis/sonarscanner-cli/ for more information and options
174-
- name: Check out ABI standard
175-
if: inputs.abi_check != ''
176-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
177-
with:
178-
ref: ${{inputs.abi_check}}
179-
path: abi_standard
180-
- name: Build ABI standard
181-
if: inputs.abi_check != ''
182-
shell: bash
183-
run: |
184-
mkdir -p abi_standard/build
185-
pushd abi_standard
186-
src/build-scripts/ci-build.bash
187-
popd
188202
- name: Check ABI
189203
if: inputs.abi_check != ''
190204
shell: bash
@@ -199,7 +213,7 @@ jobs:
199213
time make sphinx
200214
- name: Upload testsuite debugging artifacts
201215
uses: actions/upload-artifact@6f51ac03b9356f520e9adb1b1b7802705f340c2b # v4.5.0
202-
if: ${{ failure() || inputs.build_docs == '1' || inputs.benchmark == '1' }}
216+
if: ${{ failure() || inputs.build_docs == '1' || inputs.benchmark == '1' || inputs.abi_check != '' }}
203217
with:
204218
name: oiio-${{github.job}}-${{inputs.nametag}}
205219
path: |

0 commit comments

Comments
 (0)