Skip to content

Commit

Permalink
ci: add external GHA build & test jobs
Browse files Browse the repository at this point in the history
  • Loading branch information
kraszkow committed Jul 5, 2024
1 parent d94147f commit 9a3283c
Showing 1 changed file with 150 additions and 0 deletions.
150 changes: 150 additions & 0 deletions .github/workflows/external.ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
## Copyright 2024 Intel Corporation
## SPDX-License-Identifier: Apache-2.0

name: Linux

on:
push:
pull_request:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions: read-all

jobs:
build-cpu-rocky-8:
runs-on: ubuntu-latest
container:
image: rockylinux:8

steps:
- name: Install packages
run: |
echo "Installing build dependencies..."
dnf update -y
dnf group install "Development Tools" -y
dnf install git-lfs cmake wget tbb-devel -y
mkdir /tmp/deps
cd /tmp/deps
wget https://github.com/ispc/ispc/releases/download/v1.24.0/ispc-v1.24.0-linux.tar.gz
tar -xvf ispc-v1.24.0-linux.tar.gz
echo "PATH=$PATH:`pwd`/ispc-v1.24.0-linux/bin" >> $GITHUB_ENV
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: true
lfs: true

- name: Build
run: |
mkdir build
cd build
cmake ..
make -j`nproc`
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: build-cpu-rocky-8
path: build


test-cpu-rocky-8:
needs: build-cpu-rocky-8
runs-on: ubuntu-latest
container:
image: rockylinux:8

steps:
- name: Install packages
run: |
echo "Installing runtime dependencies..."
dnf install tbb -y
- name: Download Artifact
uses: actions/download-artifact@v4
with:
name: build-cpu-rocky-8

- name: Test
run: |
# Adding execution bit to binaries is needed since upload/download GHA is using zip compression
# and it can't preserve files permissions - https://github.com/actions/upload-artifact/issues/38
chmod +x ./*
./oidnTest
./oidnBenchmark -v 1
build-cpu-ubuntu-2204:
runs-on: ubuntu-latest
container:
image: ubuntu:22.04

steps:
- name: Install packages
run: |
echo "Installing build dependencies..."
apt update -y && apt upgrade -y
apt install build-essential cmake git-lfs wget python3 libtbb2-dev -y
mkdir /tmp/deps
cd /tmp/deps
wget https://github.com/ispc/ispc/releases/download/v1.24.0/ispc-v1.24.0-linux.tar.gz
tar -xvf ispc-v1.24.0-linux.tar.gz
echo "PATH=$PATH:`pwd`/ispc-v1.24.0-linux/bin" >> $GITHUB_ENV
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: true
lfs: true

- name: Build
run: |
mkdir build
cd build
cmake ..
make -j`nproc`
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: build-cpu-ubuntu-2204
path: build


test-cpu-ubuntu-2204:
needs: build-cpu-ubuntu-2204
runs-on: ubuntu-latest
container:
image: ubuntu:22.04

steps:
- name: Install packages
run: |
echo "Installing runtime dependencies..."
apt-get update
apt-get install libtbb2 -y
- name: Download Artifact
uses: actions/download-artifact@v4
with:
name: build-cpu-ubuntu-2204

- name: Test
run: |
# Adding execution bit to binaries is needed since upload/download GHA is using zip compression
# and it can't preserve files permissions - https://github.com/actions/upload-artifact/issues/38
chmod +x ./*
./oidnTest
./oidnBenchmark -v 1

0 comments on commit 9a3283c

Please sign in to comment.