Skip to content

First class IRDL with Elixir macros #633

First class IRDL with Elixir macros

First class IRDL with Elixir macros #633

Workflow file for this run

name: Elixir CI
on:
pull_request:
paths-ignore:
- "*.md"
- "**/*.md"
- "LICENSE*"
permissions:
contents: read
concurrency:
group: build-and-test-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: otp${{matrix.otp}}-ex${{matrix.elixir}} / ${{matrix.runs-on}}
runs-on: ${{matrix.runs-on}}
strategy:
fail-fast: false
matrix:
runs-on: ["ubuntu-latest"]
otp: ["24.2", "25.0"]
elixir: ["1.13.0", "1.15.0"]
steps:
- uses: actions/checkout@v3
- uses: erlef/setup-beam@v1
with:
otp-version: ${{matrix.otp}}
elixir-version: ${{matrix.elixir}}
- name: Set up Zig
uses: goto-bus-stop/setup-zig@v1
with:
version: 0.11.0
- uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Restore dependencies cache
uses: actions/cache@v3
with:
path: deps
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
restore-keys: ${{ runner.os }}-mix-
- name: Install dependencies
run: mix deps.get
- uses: seanmiddleditch/gha-setup-ninja@master
- name: Install pre-build LLVM
run: |
python3 -m pip install -r dev-requirements.txt
echo "LLVM_CONFIG_PATH=$(python3 -c 'import mlir;print(mlir.__path__[0])')/bin/llvm-config" >> "$GITHUB_ENV"
- name: Build cmake
run: |
MIX_ENV=test mix compile.elixir_make
- name: Run smoke tests
run: |
mix test --force --only smoke
- name: Run tests
run: |
mix test --exclude vulkan --exclude todo
- uses: actions/upload-artifact@v3
if: failure()
with:
name: beaver-tmp-${{ github.run_number }}-${{ github.run_attempt }}
path: ./tmp/**/*.zig