Skip to content

Commit ac8b61d

Browse files
committed
ci: update container versions, move 3 variants from 2022 to Ubuntu (#5119)
TL;DR: * Bump ASWF containers to the latest versions for their years. * Move the "oldest" and "hobbled" tests off the 2022 containers entirely, do as close as possible to equivalent on Unbuntu. Detailed explanation follows: First of all, bump to the latest ASWF docker containers for each year. We had been locking down, but hadn't bumped to the latest for a while. (Exception: leave the sanitizer test where it is -- the newer containers have additional checks that are catching UB that I am tracking down separately.) Also, we are trying to reduce the surface area of the CentOS 7-based 2022 aswf-docker containers, which are getting long in the tooth, cannot upgrade to the latest "actions" (because of a tricky interplay between runner configuration, node version the actions require, and glibc on the old containers), and may have a limited time that they will continue working. In most film studios, CentOS is long gone or taking its last breaths, so being able to support and test on 2022 era dependencies and OS distros is of dwindling relevance. We do, however, want to keep testing versus the oldest supported versions we can muster for many major dependencies. So to this end, this PR also does the following: * Move three tests from running in the 2022 containers to just running on bare Ubutu and by hook or by crook using the right dependencies: - the "oldest" versions we claim to support for as much of the toolchain toolchain and dependencies as is easily achievable, built with gcc - and the same, built with clang - the "hobbled" test, which is similar to the "oldest" test but with as many of the optional dependencies missing or disabled, to make sure we really do build with only required dependencies (this also is the test build for no SIMD use) * Keep two last tests running on 2022 containers, these are only for the purpose of testing "pure" CentOS VFX Platform 2022 compliance for just a bit longer. * A few minor related touch-ups necessary to force some older dependencies on the bare Ubuntu runner. --------- Signed-off-by: Larry Gritz <lg@larrygritz.com>
1 parent bafbd33 commit ac8b61d

7 files changed

Lines changed: 193 additions & 103 deletions

File tree

.github/workflows/build-steps.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,18 @@ on:
3737
type: string
3838
fmt_commit:
3939
type: string
40+
gcc_action_ver:
41+
type: string
42+
llvm_action_ver:
43+
type: string
4044
opencolorio_ver:
4145
type: string
4246
openexr_ver:
4347
type: string
4448
pybind11_ver:
4549
type: string
50+
python_action_ver:
51+
type: string
4652
python_ver:
4753
type: string
4854
setenvs:
@@ -80,6 +86,8 @@ on:
8086
type: string
8187
optional_deps:
8288
type: string
89+
build_local_deps:
90+
type: string
8391
secrets:
8492
PASSED_GITHUB_TOKEN:
8593
required: false
@@ -125,6 +133,7 @@ jobs:
125133
# against and testing an optional dependency, but in fact are not.
126134
OpenImageIO_REQUIRED_DEPS: ${{inputs.required_deps}}
127135
OpenImageIO_OPTIONAL_DEPS: ${{inputs.optional_deps}}
136+
OpenImageIO_BUILD_LOCAL_DEPS: ${{inputs.build_local_deps}}
128137
SETENVS: ${{inputs.setenvs}}
129138
DEPCMDS: ${{inputs.depcmds}}
130139

@@ -167,6 +176,22 @@ jobs:
167176
# path: ./ccache
168177
key: ${{inputs.nametag}}-${{steps.ccache_cache_keys.outputs.date}}
169178
restore-keys: ${{inputs.nametag}}
179+
- name: Install gcc
180+
if: inputs.gcc_action_ver != ''
181+
run: |
182+
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
183+
sudo apt-get update -y
184+
sudo apt-get install -y g++-${{inputs.gcc_action_ver}}
185+
- name: Install python
186+
if: inputs.python_action_ver != ''
187+
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
188+
with:
189+
python-version: ${{ inputs.python_action_ver }}
190+
- name: Install LLVM and Clang
191+
if: inputs.llvm_action_ver != ''
192+
uses: KyleMayes/install-llvm-action@ebc0426251bc40c7cd31162802432c68818ab8f0 # v2.0.9
193+
with:
194+
version: ${{ inputs.llvm_action_ver }}
170195
- name: Dependencies
171196
shell: bash
172197
run: |

0 commit comments

Comments
 (0)