-
-
Notifications
You must be signed in to change notification settings - Fork 2
63 lines (63 loc) · 2.05 KB
/
coveralls.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# Created with GitHubActions version 0.2.16
name: Coveralls Report
env:
GITHUB_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
on:
- pull_request
- push
jobs:
linux:
name: Test on Ubuntu (Elixir ${{ matrix.elixir }}, OTP ${{ matrix.otp }})
runs-on: ubuntu-20.04
services:
# Label used to access the service container
strategy:
matrix:
elixir:
- '1.15.6'
otp:
- '26.1'
exclude:
- elixir: '1.13.4'
otp: '26.1'
- elixir: '1.14.5'
otp: '22.3'
- elixir: '1.14.5'
otp: '26.1'
- elixir: '1.15.6'
otp: '22.3'
- elixir: '1.15.6'
otp: '23.3'
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Elixir
uses: erlef/setup-beam@v1
with:
elixir-version: ${{ matrix.elixir }}
otp-version: ${{ matrix.otp }}
- name: Restore deps
uses: actions/cache@v3
with:
path: deps
key: deps-${{ runner.os }}-${{ matrix.elixir }}-${{ matrix.otp }}-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
- name: Restore _build
uses: actions/cache@v3
with:
path: _build
key: _build-${{ runner.os }}-${{ matrix.elixir }}-${{ matrix.otp }}-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
- name: Get dependencies
run: mix deps.get
- name: Compile dependencies
run: MIX_ENV=test mix deps.compile
- name: Compile project
run: MIX_ENV=test mix compile
- name: Check code format
if: ${{ contains(matrix.elixir, '1.15.6') && contains(matrix.otp, '26.1') }}
run: mix format --check-formatted
- name: Run tests
run: MIX_ENV=test mix test
if: ${{ !(contains(matrix.elixir, '1.15.6') && contains(matrix.otp, '26.1')) }}
- name: Run tests with coverage
run: MIX_ENV=test mix coveralls.github
if: ${{ contains(matrix.elixir, '1.15.6') && contains(matrix.otp, '26.1') }}