Skip to content

ci

ci #3

Workflow file for this run

name: CI
on: push
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
workflow:
name: OTP ${{matrix.otp}} / Elixir ${{matrix.elixir}}
runs-on: ubuntu-latest
strategy:
matrix:
otp: ['25.3.2.4', '26.0.2']
elixir: ['1.15.4']
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Elixir
uses: erlef/setup-beam@v1
with:
otp-version: ${{ matrix.otp }}
elixir-version: ${{ matrix.elixir }}
- name: Set up cache
uses: actions/cache@v3
id: mix-cache
with:
path: |
deps
_build
key: ${{ runner.os }}-mix-${{ matrix.otp }}-${{ matrix.elixir }}-${{ hashFiles('**/mix.lock') }}
restore-keys: |
${{ runner.os }}-mix-${{ matrix.otp }}-${{ matrix.elixir }}-
- name: Get deps
if: steps.mix-cache.outputs.cache-hit != 'true'
run: mix deps.get
- name: Compile deps
if: steps.mix-cache.outputs.cache-hit != 'true'
run: mix deps.compile
# - name: Build Dialyzer PLT(s)
# if: steps.mix-cache.outputs.cache-hit != 'true'
# run: mix dialyzer --plt
- name: Mix compile
run: mix compile --force --warnings-as-errors
- name: Mix format
run: mix format --check-formatted
# - name: Dialyzer
# run: mix dialyzer --no-check
- name: Mix test
run: mix test