Skip to content

Elixir CI

Elixir CI #121

Workflow file for this run

name: Elixir CI
on:
push:
pull_request:
types: [opened, synchronize, reopened]
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-20.04
name: OTP ${{ matrix.otp }} / Elixir ${{ matrix.elixir }}
strategy:
matrix:
include:
- otp: 23.3.1
elixir: 1.11.0
- otp: 24.3.3
elixir: 1.13.4
- otp: 26.0
elixir: 1.16
steps:
- uses: actions/checkout@v2
- uses: erlef/[email protected]
with:
otp-version: ${{matrix.otp}}
elixir-version: ${{matrix.elixir}}
- name: Restore dependencies cache
uses: actions/cache@v3
with:
path: deps
key: ${{ runner.os }}-mix-cache-${{ hashFiles('**/mix.lock') }}
restore-keys: ${{ runner.os }}-mix-cache-
- name: Get dependencies
run: mix deps.get
- name: Run primitive end2end test for integration with TypedStruct
run: cd example_typed_integrations && mix deps.get && mix compile && mix run -e EctoSchemaStruct.new!
- name: Run checks
run: mix check || mix check --retry