From 47a4457eeed6933be8ddd0cc3a21b28f3fb043d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Muska=C5=82a?= Date: Wed, 8 Nov 2023 19:07:58 +0000 Subject: [PATCH] Update CI --- .github/workflows/ci.yml | 71 +++++++++++++++++++++++++++------------- 1 file changed, 48 insertions(+), 23 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 83d499a..9a5b42d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,27 +10,52 @@ jobs: build: strategy: matrix: - platform: [ubuntu-latest] - otp-version: [21.3, 22.3, 23.3, 24.3, 25] - runs-on: ${{ matrix.platform }} - container: - image: erlang:${{ matrix.otp-version }} + os: [ubuntu-20.04] + otp-version: [21.3, 22.3, 23.3, 24.3, 25.3] + include: + - os: ubuntu-22.04 + otp-version: 26 + runs-on: ${{ matrix.os }} steps: - - name: Checkout - uses: actions/checkout@v2 - - name: Cache Hex packages - uses: actions/cache@v1 - with: - path: ~/.cache/rebar3/hex/hexpm/packages - key: ${{ runner.os }}-hex-${{ hashFiles(format('{0}{1}', github.workspace, '/rebar.lock')) }} - restore-keys: | - ${{ runner.os }}-hex- - - name: Cache Dialyzer PLTs - uses: actions/cache@v1 - with: - path: ~/.cache/rebar3/rebar3_*.plt - key: ${{ runner.os }}-dialyzer-${{ hashFiles(format('{0}{1}', github.workspace, '/rebar.config')) }} - restore-keys: | - ${{ runner.os }}-dialyzer- - - name: Check - run: make check + - name: Checkout + uses: actions/checkout@v2 + - uses: erlef/setup-beam@v1 + with: + otp-version: ${{matrix.otp-version}} + - name: Cache Hex packages + uses: actions/cache@v1 + with: + path: ~/.cache/rebar3/hex/hexpm/packages + key: ${{ runner.os }}-hex-${{ hashFiles(format('{0}{1}', github.workspace, '/rebar.lock')) }} + restore-keys: | + ${{ runner.os }}-hex- + - name: Compile + run: make compile + - name: Test + run: make test + - name: Check format + run: make checkfmt + + dialyzer: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: erlef/setup-beam@v1 + with: + otp-version: 26 + - name: Cache Dialyzer PLTs + uses: actions/cache@v1 + with: + path: ~/.cache/rebar3/rebar3_*.plt + key: ${{ runner.os }}-dialyzer-${{ hashFiles(format('{0}{1}', github.workspace, '/rebar.config')) }} + restore-keys: | + ${{ runner.os }}-dialyzer- + - name: Cache Dialyzer PLTs + uses: actions/cache@v1 + with: + path: ~/.cache/rebar3/rebar3_*.plt + key: ${{ runner.os }}-dialyzer-${{ hashFiles(format('{0}{1}', github.workspace, '/rebar.config')) }} + restore-keys: | + ${{ runner.os }}-dialyzer- + - name: Dialyzer + run: rebar3 dialyzer