Skip to content

Commit f6f1ffd

Browse files
committed
Configure GitHub Actions CI workflow
1 parent 75bad6f commit f6f1ffd

1 file changed

Lines changed: 52 additions & 0 deletions

File tree

.github/workflows/ci.yaml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
pull_request:
6+
schedule:
7+
- cron: '0 5 * * *'
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
test:
14+
name: Test
15+
runs-on: ubuntu-latest
16+
strategy:
17+
fail-fast: false
18+
matrix:
19+
include:
20+
- erlang_otp: '29.0'
21+
elixir: 'main'
22+
- erlang_otp: '29.0'
23+
elixir: '1.20.2'
24+
check: true
25+
- erlang_otp: '28.5'
26+
elixir: '1.19.5'
27+
- erlang_otp: '27.3.4.11'
28+
elixir: '1.18.4'
29+
steps:
30+
- name: Checkout
31+
uses: actions/checkout@v4
32+
- name: Install Elixir
33+
uses: erlef/setup-beam@v1
34+
with:
35+
otp-version: ${{ matrix.erlang_otp }}
36+
elixir-version: ${{ matrix.elixir }}
37+
version-type: strict
38+
- name: Install dependencies
39+
run: |
40+
mix local.hex --force
41+
mix deps.get
42+
- name: Check unused dependencies
43+
run: mix deps.unlock --check-unused
44+
if: matrix.check
45+
- name: Check code format
46+
run: mix format --check-formatted
47+
if: matrix.check
48+
- name: Check compilation warnings
49+
run: mix compile --warnings-as-errors
50+
if: matrix.check
51+
- name: Run tests
52+
run: mix test

0 commit comments

Comments
 (0)