Skip to content

ci/cd

ci/cd #82

Workflow file for this run

name: ci/cd
on:
workflow_dispatch:
push:
branches: [ main, 'release/*' ]
pull_request:
branches: [ main, 'release/*' ]
# Build once a month, just to be sure things are still working
schedule:
- cron: "20 4 18 * *"
jobs:
builds:
name: Erlang ${{ matrix.otp-version }} build
runs-on: ubuntu-latest
strategy:
matrix:
otp-version: ['26', '25', '24']
os: ['ubuntu-latest']
steps:
- uses: actions/checkout@v4
- uses: erlef/setup-beam@v1
with:
otp-version: ${{ matrix.otp-version }}
rebar3-version: '3.22'
- name: Compile
run: rebar3 compile
- name: Xref Checks
run: rebar3 xref
- name: Dialyzer
run: rebar3 dialyzer
- name: Proper Tests
run: rebar3 proper --regressions
- name: Run Tests
run: rebar3 ct -c
- name: Run Demo
run: rebar3 demo
older-builds:
name: Erlang ${{ matrix.otp-version }} build (old)
runs-on: ubuntu-20.04
strategy:
matrix:
otp-version: ['23', '22', '21']
steps:
- uses: actions/checkout@v4
- uses: erlef/setup-beam@v1
with:
otp-version: ${{ matrix.otp-version }}
rebar3-version: '3.15'
- name: Compile
run: rebar3 compile
- name: Xref Checks
run: rebar3 xref
- name: Dialyzer
run: rebar3 dialyzer
- name: Proper Tests
run: rebar3 proper --regressions
- name: Run Tests
run: rebar3 ct -c
- name: Run Demo
run: rebar3 demo