Skip to content

Commit

Permalink
Update ci
Browse files Browse the repository at this point in the history
  • Loading branch information
NickNeck committed Apr 18, 2024
1 parent d0088df commit 01335f5
Showing 1 changed file with 30 additions and 21 deletions.
51 changes: 30 additions & 21 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Created with GitHubActions version 0.2.18
# Created with GitHubActions version 0.2.22
name: CI
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -21,14 +21,15 @@ jobs:
- '1.13.4'
- '1.14.5'
- '1.15.7'
- '1.16.2'
otp:
- '20.3'
- '21.3'
- '22.3'
- '23.3'
- '24.3'
- '25.3'
- '26.1'
- '26.2'
exclude:
- elixir: '1.7.4'
otp: '23.3'
Expand All @@ -37,51 +38,51 @@ jobs:
- elixir: '1.7.4'
otp: '25.3'
- elixir: '1.7.4'
otp: '26.1'
otp: '26.2'
- elixir: '1.8.2'
otp: '23.3'
- elixir: '1.8.2'
otp: '24.3'
- elixir: '1.8.2'
otp: '25.3'
- elixir: '1.8.2'
otp: '26.1'
otp: '26.2'
- elixir: '1.9.4'
otp: '23.3'
- elixir: '1.9.4'
otp: '24.3'
- elixir: '1.9.4'
otp: '25.3'
- elixir: '1.9.4'
otp: '26.1'
otp: '26.2'
- elixir: '1.10.4'
otp: '20.3'
- elixir: '1.10.4'
otp: '24.3'
- elixir: '1.10.4'
otp: '25.3'
- elixir: '1.10.4'
otp: '26.1'
otp: '26.2'
- elixir: '1.11.4'
otp: '20.3'
- elixir: '1.11.4'
otp: '25.3'
- elixir: '1.11.4'
otp: '26.1'
otp: '26.2'
- elixir: '1.12.3'
otp: '20.3'
- elixir: '1.12.3'
otp: '21.3'
- elixir: '1.12.3'
otp: '25.3'
- elixir: '1.12.3'
otp: '26.1'
otp: '26.2'
- elixir: '1.13.4'
otp: '20.3'
- elixir: '1.13.4'
otp: '21.3'
- elixir: '1.13.4'
otp: '26.1'
otp: '26.2'
- elixir: '1.14.5'
otp: '20.3'
- elixir: '1.14.5'
Expand All @@ -96,51 +97,59 @@ jobs:
otp: '22.3'
- elixir: '1.15.7'
otp: '23.3'
- elixir: '1.16.2'
otp: '20.3'
- elixir: '1.16.2'
otp: '21.3'
- elixir: '1.16.2'
otp: '22.3'
- elixir: '1.16.2'
otp: '23.3'
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Elixir
uses: erlef/setup-beam@v1
with:
elixir-version: ${{ matrix.elixir }}
otp-version: ${{ matrix.otp }}
- name: Restore deps
uses: actions/cache@v3
uses: actions/cache@v4
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
uses: actions/cache@v4
with:
path: _build
key: _build-${{ runner.os }}-${{ matrix.elixir }}-${{ matrix.otp }}-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
- name: Restore test/support/plts
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: test/support/plts
key: test/support/plts-${{ runner.os }}-${{ matrix.elixir }}-${{ matrix.otp }}-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
if: ${{ contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1') }}
if: ${{ contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2') }}
- 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 --warnings-as-errors
- name: Check unused dependencies
if: ${{ contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1') }}
if: ${{ contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2') }}
run: mix deps.unlock --check-unused
- name: Check code format
if: ${{ contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1') }}
if: ${{ contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2') }}
run: mix format --check-formatted
- name: Lint code
if: ${{ contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1') }}
if: ${{ contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2') }}
run: mix credo --strict
- name: Run tests
run: mix test
if: ${{ !(contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1')) }}
if: ${{ !(contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2')) }}
- name: Run tests with coverage
run: mix coveralls.github
if: ${{ contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1') }}
if: ${{ contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2') }}
- name: Static code analysis
run: mix dialyzer
if: ${{ contains(matrix.elixir, '1.15.7') && contains(matrix.otp, '26.1') }}
run: mix dialyzer --format github --force-check
if: ${{ contains(matrix.elixir, '1.16.2') && contains(matrix.otp, '26.2') }}

0 comments on commit 01335f5

Please sign in to comment.