Skip to content

Bump actions/upload-artifact from 3 to 4 #848

Bump actions/upload-artifact from 3 to 4

Bump actions/upload-artifact from 3 to 4 #848

Workflow file for this run

# SPDX-License-Identifier: BSD-3-Clause
# Copyright (c) Contributors to the OpenEXR Project.
# The CI workflow uses steps defined in ci_steps.yml, via the "uses:"
# directive. Linux, macOS, and Windows all share a common set of
# configure/build/validate steps.
name: CI
on:
push:
paths:
- '**'
- '!**.md'
- '!.github/workflows/**'
- '.github/workflows/ci_workflow.yml'
- '.github/workflows/ci_steps.yml'
pull_request:
paths:
- '**'
- '!**.md'
- '!.github/workflows/**'
- '.github/workflows/ci_workflow.yml'
- '.github/workflows/ci_steps.yml'
permissions:
contents: read
# NOTE: All jobs have a "build" number that appears in the "jobs"
# listing on the GitHub actions page. This build number also
# identifies the reference install manifest in
# share/ci/install_manifest. The validate_install.py script compares
# the job's generated install_manifest.txt to the reference file to
# validate that the proper files have been installed.
#
# If you add jobs, you must add a corresponding
# share/ci/install_manifest file.
jobs:
linux:
name: 'Linux.${{ matrix.build}}: ${{ matrix.label }}'
uses: ./.github/workflows/ci_steps.yml
with:
# Set values for the "inputs:" as defined in ci_steps.yml
# Note the defaults provided here for the builds that don't specify
# values.
os: ubuntu-latest
build: ${{ matrix.build }}
# DockerHub: https://hub.docker.com/u/aswf
# Source: https://github.com/AcademySoftwareFoundation/aswf-docker
container: aswf/ci-openexr:${{ matrix.vfx-cy || '2024' }}
cxx-standard: ${{ matrix.cxx-standard || '17' }}
cxx-compiler: ${{ matrix.cxx-compiler || 'g++' }}
cc-compiler: ${{ matrix.cc-compiler || 'gcc' }}
build-type: ${{ matrix.build-type || 'Release' }}
python: ${{ matrix.python || 'ON' }}
pybind11: ${{ matrix.pybind11 || 'ON' }}
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS || 'ON' }}
IMATH_INSTALL_PKG_CONFIG: ${{ matrix.IMATH_INSTALL_PKG_CONFIG || 'ON' }}
BUILD_TESTING: ${{ matrix.BUILD_TESTING || 'ON' }}
namespace: ${{ matrix.namespace }}
validate_install: ${{ matrix.validate_install || 'ON' }}
strategy:
matrix:
include:
- build: 1
label: Release
- build: 2
label: Debug
build-type: Debug
- build: 3
label: static
BUILD_SHARED_LIBS: 'OFF'
- build: 4
label: pkgconfig=OFF, testing=OFF, python=OFF
IMATH_INSTALL_PKG_CONFIG: 'OFF'
BUILD_TESTING: 'OFF'
python: 'OFF'
pybind11: 'OFF'
- build: 5
label: custom namespace
namespace: 'TEST_NAMESPACE'
- build: 6
label: clang
cxx-compiler: clang++
cc-compiler: clang
- build: 7
label: vfx2023
vfx-cy: 2023
macOS:
name: 'macOS.${{ matrix.build}}: ${{ matrix.label }}'
uses: ./.github/workflows/ci_steps.yml
with:
# Set values for the "inputs:" as defined in ci_steps.yml
# Note the defaults provided here for the builds that don't specify
# values.
os: ${{ matrix.os || 'macos-14' }}
build: ${{ matrix.build }}
cxx-standard: ${{ matrix.cxx-standard || '17' }}
build-type: ${{ matrix.build-type || 'Release' }}
python: ${{ matrix.python || 'OFF' }}
pybind11: ${{ matrix.pybind11 || 'OFF' }}
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS || 'ON' }}
IMATH_INSTALL_PKG_CONFIG: ${{ matrix.IMATH_INSTALL_PKG_CONFIG || 'ON' }}
BUILD_TESTING: ${{ matrix.BUILD_TESTING || 'ON' }}
validate_install: ${{ matrix.validate_install || 'ON' }}
strategy:
matrix:
include:
- build: 1
label: Release
- build: 2
label: Debug
build-type: Debug
- build: 3
label: static
BUILD_SHARED_LIBS: 'OFF'
- build: 4
label: pkgconfig=OFF, testing=OFF
IMATH_INSTALL_PKG_CONFIG: 'OFF'
BUILD_TESTING: 'OFF'
- build: 5
label: macos-13
os: macos-13
windows:
name: 'Windows.${{ matrix.build}}: ${{ matrix.label }}'
uses: ./.github/workflows/ci_steps.yml
with:
# Set values for the "inputs:" as defined in ci_steps.yml
# Note the defaults provided here for the builds that don't specify
# values.
os: ${{ matrix.os || 'windows-2022' }}
build: ${{ matrix.build }}
cxx-standard: ${{ matrix.cxx-standard || '17' }}
build-type: ${{ matrix.build-type || 'Release' }}
python: ${{ matrix.python || 'OFF' }}
pybind11: ${{ matrix.pybind11 || 'OFF' }}
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS || 'ON' }}
IMATH_INSTALL_PKG_CONFIG: ${{ matrix.IMATH_INSTALL_PKG_CONFIG || 'ON' }}
BUILD_TESTING: ${{ matrix.BUILD_TESTING || 'ON' }}
validate_install: ${{ matrix.validate_install || 'ON' }}
strategy:
matrix:
include:
- build: 1
label: Release
- build: 2
label: Debug
build-type: Debug
- build: 3
label: static
BUILD_SHARED_LIBS: 'OFF'
- build: 5
label: pkgconfig=OFF, testing=OFF
IMATH_INSTALL_PKG_CONFIG: 'OFF'
BUILD_TESTING: 'OFF'
- build: 6
label: vfx2022
os: windows-2019