Skip to content

Support Erlang/OTP 29 #96

Support Erlang/OTP 29

Support Erlang/OTP 29 #96

Workflow file for this run

name: ci
on:
push:
branches: [ main ]
pull_request:
workflow_dispatch:
jobs:
test:
name: OTP ${{matrix.otp}}
strategy:
matrix:
otp: ['29', '28', '27']
rebar3: ['3.27.0']
runs-on: 'ubuntu-24.04'
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: erlef/setup-beam@v1
with:
otp-version: ${{ matrix.otp }}
rebar3-version: ${{matrix.rebar3}}
- uses: actions/cache@v4
name: Cache
with:
path: |
_build
key: ${{ runner.os }}-build-${{ matrix.otp }}-${{ hashFiles(format('rebar.lock')) }}
restore-keys: ${{ runner.os }}-build-${{ matrix.otp }}-
- run: rebar3 compile
- run: rebar3 ct
- run: rebar3 fmt --check
if: ${{ matrix.otp == '29' }}
- run: rebar3 lint
if: ${{ matrix.otp == '29' }}
- run: rebar3 dialyzer
if: ${{ matrix.otp == '29' }}
- run: rebar3 xref
if: ${{ matrix.otp == '29' }}
- run: rebar3 as test do cover, covertool generate
if: ${{ matrix.otp == '29' }}
- name: Upload code coverage
uses: codecov/codecov-action@v5
if: ${{ matrix.otp == '29' }}
with:
files: _build/test/covertool/segmented_cache.covertool.xml
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true
verbose: true