Skip to content

Update CI samples for v2025.0.0 release #220

Update CI samples for v2025.0.0 release

Update CI samples for v2025.0.0 release #220

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/b380d914-366b-4b77-a74a-05e3c38b3514/intel-oneapi-base-toolkit-2025.0.0.882_offline.exe
WINDOWS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/f07e32fa-b505-4b90-8a79-e328ce9ad9d6/intel-oneapi-hpc-toolkit-2025.0.0.822_offline.exe
LINUX_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/96aa5993-5b22-4a9b-91ab-da679f422594/intel-oneapi-base-toolkit-2025.0.0.885_offline.sh
LINUX_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/0884ef13-20f3-41d3-baa2-362fc31de8eb/intel-oneapi-hpc-toolkit-2025.0.0.825_offline.sh
LINUX_AIKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/0414ef18-5b64-47f2-9b2e-ae94860272b9/l_AITools.2024.1.0.9.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: 8
SAMPLES_TAG: 2025.0.0
AI_SAMPLES_TAG: 2024.1.0
COMPILER_VERSION: 2025.0.0
TBB_VERSION: 2022.0.0
VS_VER: vs2022
jobs:
build_windows_cpp:
runs-on: windows-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- name: cache install
id: cache-install
uses: actions/cache@v2
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@v2
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@v2
- name: cache install
id: cache-install
uses: actions/cache@v2
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@v2
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@v2
- name: cache install
id: cache-install
uses: actions/cache@v2
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@v2
with:
name: InstallLogs_${{ github.job }}
path: |
extract.log
bootstrapper*
installer*
retention-days: 7
build_linux_cpp:
runs-on: ubuntu-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- name: cache install
id: cache-install
uses: actions/cache@v2
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@v2
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_fortran:
runs-on: ubuntu-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- name: cache install
id: cache-install
uses: actions/cache@v2
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@v2
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_dpcpp:
runs-on: ubuntu-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- name: cache install
id: cache-install
uses: actions/cache@v2
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@v2
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_aitools:
runs-on: ubuntu-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
with:
name: InstallLogs_${{ github.job }}
path: |
bootstrapper*
installer*
retention-days: 7
build_linux_apt_cpp:
runs-on: ubuntu-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
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-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
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-20.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
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-20.04
container: fedora:37
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
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-20.04
container: fedora:37
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
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-20.04
container: fedora:37
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- 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@v2
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