Skip to content

Update CI samples for Oneapi 2025.1.1 release #254

Update CI samples for Oneapi 2025.1.1 release

Update CI samples for Oneapi 2025.1.1 release #254

Workflow file for this run

# SPDX-FileCopyrightText: 2022 Intel Corporation
#
# SPDX-License-Identifier: MIT
name: build_all
permissions: read-all
on: push
env:
WINDOWS_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/7cd9bba0-7aab-4e30-b3ae-2221006a4a05/intel-oneapi-base-toolkit-2025.1.1.34_offline.exe
WINDOWS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/82a3dedc-7a9c-4577-a543-68631423e509/intel-oneapi-hpc-toolkit-2025.1.1.38_offline.exe
LINUX_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/6bfca885-4156-491e-849b-1cd7da9cc760/intel-oneapi-base-toolkit-2025.1.1.36_offline.sh
LINUX_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/2cf9c083-82b5-4a8f-a515-c599b09dcefc/intel-oneapi-hpc-toolkit-2025.1.1.40_offline.sh
LINUX_AIKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/491d5c2a-67fe-48d0-884f-6aecd88f5d8a/ai-tools-2025.0.0.75_offline.sh
WINDOWS_CPP_COMPONENTS: intel.oneapi.win.cpp-dpcpp-common
WINDOWS_FORTRAN_COMPONENTS: intel.oneapi.win.ifort-compiler
WINDOWS_DPCPP_COMPONENTS: intel.oneapi.win.cpp-dpcpp-common
LINUX_CPP_COMPONENTS: intel-oneapi-dpcpp-cpp-compiler
LINUX_FORTRAN_COMPONENTS: intel-oneapi-compiler-fortran
LINUX_DPCPP_COMPONENTS: intel-oneapi-compiler-dpcpp-cpp
LINUX_CPP_COMPONENTS_WEB: intel.oneapi.lin.dpcpp-cpp-compiler
LINUX_FORTRAN_COMPONENTS_WEB: intel.oneapi.lin.ifort-compiler
LINUX_DPCPP_COMPONENTS_WEB: intel.oneapi.lin.dpcpp-cpp-compiler
CACHE_NUMBER: 6
SAMPLES_TAG: 2025.1.0
AI_SAMPLES_TAG: 2025.0.0
COMPILER_VERSION: 2025.1.1
TBB_VERSION: 2022.1.0
VS_VER: vs2022
jobs:
build_windows_cpp:
runs-on: windows-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat
C:\Program Files (x86)\Intel\oneAPI\compiler
key: install-${{ env.CACHE_NUMBER }}-${{ env.WINDOWS_HPCKIT_URL }}-${{ env.WINDOWS_CPP_COMPONENTS }}-compiler-${{ hashFiles('**/scripts/cache_exclude_windows.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_windows.bat $WINDOWS_HPCKIT_URL $WINDOWS_CPP_COMPONENTS
- name: build
run: scripts/build_windows.bat c++ $VS_VER $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
shell: bash
run: scripts/cache_exclude_windows.sh
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
extract.log
bootstrapper*
installer*
retention-days: 7
build_windows_fortran:
runs-on: windows-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat
C:\Program Files (x86)\Intel\oneAPI\compiler
key: install-${{ env.CACHE_NUMBER }}-${{ env.WINDOWS_HPCKIT_URL }}-${{ env.WINDOWS_FORTRAN_COMPONENTS }}-compiler-${{ hashFiles('**/scripts/cache_exclude_windows.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_windows.bat $WINDOWS_HPCKIT_URL $WINDOWS_FORTRAN_COMPONENTS
- name: build
run: scripts/build_windows.bat fortran $VS_VER $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
shell: bash
run: scripts/cache_exclude_windows.sh
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
extract.log
bootstrapper*
installer*
retention-days: 7
build_windows_dpcpp:
runs-on: windows-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat
C:\Program Files (x86)\Intel\oneAPI\compiler
C:\Program Files (x86)\Intel\oneAPI\tbb
C:\Windows\System32\OpenCL.dll
key: install-${{ env.CACHE_NUMBER }}-${{ env.WINDOWS_BASEKIT_URL }}-${{ env.WINDOWS_DPCPP_COMPONENTS }}-compiler-tbb-opencl-${{ hashFiles('**/scripts/cache_exclude_windows.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_windows.bat $WINDOWS_BASEKIT_URL $WINDOWS_DPCPP_COMPONENTS
- name: restore registry on cache hit
if: steps.cache-install.outputs.cache-hit == 'true'
run: scripts/restore_registry.bat $COMPILER_VERSION $TBB_VERSION
- name: build
run: scripts/build_windows.bat dpc++ $VS_VER $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
shell: bash
run: scripts/cache_exclude_windows.sh
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
extract.log
bootstrapper*
installer*
retention-days: 7
build_linux_cpp:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
key: install-${{ env.CACHE_NUMBER }}-${{ env.LINUX_HPCKIT_URL }}-${{ env.LINUX_CPP_COMPONENTS_WEB }}-compiler-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux.sh $LINUX_HPCKIT_URL $LINUX_CPP_COMPONENTS_WEB
- name: build
run: scripts/build_linux.sh c++ $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_fortran:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
key: install-${{ env.CACHE_NUMBER }}-${{ env.LINUX_HPCKIT_URL }}-${{ env.LINUX_FORTRAN_COMPONENTS_WEB }}-compiler-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux.sh $LINUX_HPCKIT_URL $LINUX_FORTRAN_COMPONENTS_WEB
- name: build
run: scripts/build_linux.sh fortran $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_dpcpp:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
/opt/intel/oneapi/tbb
key: install-${{ env.CACHE_NUMBER }}-${{ env.LINUX_BASEKIT_URL }}-${{ env.LINUX_DPCPP_COMPONENTS_WEB }}-compiler-tbb-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux.sh $LINUX_BASEKIT_URL $LINUX_DPCPP_COMPONENTS_WEB
- name: build
run: scripts/build_linux.sh dpc++ $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_aitools:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: install
run: scripts/install_linux_aitools.sh $LINUX_AIKIT_URL
- name: build
run: scripts/build_linux_aitools.sh $AI_SAMPLES_TAG
# Delete the following if you don't want to save install logs
- name: Saving install logs
if: steps.cache-install.outputs.cache-hit != 'true'
uses: actions/upload-artifact@v4
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_apt_cpp:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: setup apt repo
run: scripts/setup_apt_repo_linux.sh
- name: collect versioned dependencies of apt packages
run: scripts/apt_depends.sh $LINUX_CPP_COMPONENTS | tee depends.txt
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
key: install-${{ env.LINUX_CPP_COMPONENTS }}-${{ hashFiles('**/depends.txt') }}-compiler-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux_apt.sh $LINUX_CPP_COMPONENTS
- name: build
run: scripts/build_linux.sh c++ $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
build_linux_apt_fortran:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: setup apt repo
run: scripts/setup_apt_repo_linux.sh
- name: collect versioned dependencies of apt packages
run: scripts/apt_depends.sh $LINUX_FORTRAN_COMPONENTS | tee depends.txt
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
key: install-${{ env.LINUX_FORTRAN_COMPONENTS }}-${{ hashFiles('**/depends.txt') }}-compiler-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux_apt.sh $LINUX_FORTRAN_COMPONENTS
- name: build
run: scripts/build_linux.sh fortran $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
build_linux_apt_dpcpp:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: setup apt repo
run: scripts/setup_apt_repo_linux.sh
- name: collect versioned dependencies of apt packages
run: scripts/apt_depends.sh $LINUX_DPCPP_COMPONENTS | tee depends.txt
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
/opt/intel/oneapi/tbb
key: install-${{ env.LINUX_DPCPP_COMPONENTS }}-${{ hashFiles('**/depends.txt') }}-compiler-tbb-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux_apt.sh $LINUX_DPCPP_COMPONENTS
- name: build
run: scripts/build_linux.sh dpc++ $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
build_linux_dnf_cpp:
runs-on: ubuntu-latest
container: fedora:37
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: install prerequisites
run: scripts/install_prerequisites_linux_dnf.sh
- name: setup yum/dnf repo
run: scripts/setup_yum_dnf_repo_linux.sh
- name: collect versioned dependencies of dnf packages
run: scripts/dnf_depends.sh $LINUX_CPP_COMPONENTS | tee depends.txt
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
key: install-${{ env.LINUX_CPP_COMPONENTS }}-${{ hashFiles('**/depends.txt') }}-compiler-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux_dnf.sh $LINUX_CPP_COMPONENTS
- name: build
run: scripts/build_linux.sh c++ $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
build_linux_dnf_fortran:
runs-on: ubuntu-latest
container: fedora:37
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: install prerequisites
run: scripts/install_prerequisites_linux_dnf.sh
- name: setup yum/dnf repo
run: scripts/setup_yum_dnf_repo_linux.sh
- name: collect versioned dependencies of dnf packages
run: scripts/dnf_depends.sh $LINUX_FORTRAN_COMPONENTS | tee depends.txt
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
key: install-${{ env.LINUX_FORTRAN_COMPONENTS }}-${{ hashFiles('**/depends.txt') }}-compiler-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux_dnf.sh $LINUX_FORTRAN_COMPONENTS
- name: build
run: scripts/build_linux.sh fortran $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh
build_linux_dnf_dpcpp:
runs-on: ubuntu-latest
container: fedora:37
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- name: install prerequisites
run: scripts/install_prerequisites_linux_dnf.sh
- name: setup yum/dnf repo
run: scripts/setup_yum_dnf_repo_linux.sh
- name: collect versioned dependencies of dnf packages
run: scripts/dnf_depends.sh $LINUX_DPCPP_COMPONENTS | tee depends.txt
- name: cache install
id: cache-install
uses: actions/cache@v3
with:
path: |
/opt/intel/oneapi/compiler
/opt/intel/oneapi/tbb
key: install-${{ env.LINUX_DPCPP_COMPONENTS }}-${{ hashFiles('**/depends.txt') }}-compiler-tbb-${{ hashFiles('**/scripts/cache_exclude_linux.sh') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/install_linux_dnf.sh $LINUX_DPCPP_COMPONENTS
- name: build
run: scripts/build_linux.sh dpc++ $SAMPLES_TAG
- name: exclude unused files from cache
if: steps.cache-install.outputs.cache-hit != 'true'
run: scripts/cache_exclude_linux.sh