Try automated builds

This commit is contained in:
Andrzej Janik 2025-04-07 21:23:59 +02:00
parent 3a7b1a10cb
commit dfd8442f79

44
.github/workflows/zluda.yml vendored Normal file
View file

@ -0,0 +1,44 @@
name: ZLUDA CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
env:
CARGO_TERM_COLOR: always
ROCM_VERSION: "6.3.1"
jobs:
build_linux:
name: Build (Linux)
runs-on: ubuntu-22.04
steps:
- uses: jlumbroso/free-disk-space@main
- name: Install ROCm
run: |
sudo mkdir --parents --mode=0755 /etc/apt/keyrings
sudo sh -c 'wget https://repo.radeon.com/rocm/rocm.gpg.key -O - | gpg --dearmor | tee /etc/apt/keyrings/rocm.gpg > /dev/null'
sudo sh -c 'echo deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] https://repo.radeon.com/rocm/apt/${{ env.ROCM_VERSION }} jammy main > /etc/apt/sources.list.d/rocm.list'
sudo sh -c 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600 > /etc/apt/preferences.d/rocm-pin-600'
sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends rocm-smi-lib rocm-llvm-dev hip-runtime-amd hip-dev
echo 'export PATH="$PATH:/opt/rocm/bin"' | sudo tee /etc/profile.d/rocm.sh
echo '/opt/rocm/lib' | sudo tee /etc/ld.so.conf.d/rocm.conf
sudo ldconfig
- uses: actions/checkout@v4
with:
submodules: true
- uses: Swatinem/rust-cache@v2
- name: Build
# https://github.com/actions/upload-artifact/issues/39
run: |
cargo xtask zip --profile release-lto
tar -xzf target/release-lto/zluda.tar.gz -C target/release-lto
- name: Set revision hash
run: echo "SHORT_SHA=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
- name: Upload
uses: actions/upload-artifact@v4
with:
name: zluda-linux-${{ env.SHORT_SHA }}
path: target/release-lto/zluda