Skip to content

Fault tolerance

Fault tolerance #113

Workflow file for this run

name: CI
on:
pull_request:
push:
branches:
- master
jobs:
fmt:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Prepare
run: |
sudo apt update
sudo apt install emacs-nox
- name: erlang-formatter
run: |
rebar3 as check fmt
status="$(git status --untracked-file=no --porcelain)"
if [ ! -z "$status" ]; \
then \
echo "Error: Please format the following files (e.g. run 'rebar3 as check fmt')"; \
echo "$status"; \
exit 1; \
fi
build:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
include: # See https://www.erlang-solutions.com/downloads/
- otp-version: 25.0.3
- otp-version: 24.3.3
steps:
- uses: actions/checkout@v3
- name: Install Erlang/OTP
run: |
DEB_NAME="esl-erlang_${{ matrix.otp-version }}-1~ubuntu~focal_amd64.deb"
curl -f https://packages.erlang-solutions.com/erlang/debian/pool/$DEB_NAME -o $DEB_NAME
sudo dpkg --install $DEB_NAME
- name: Install redis-cli
# Required by ct
run: |
sudo apt update
sudo apt install redis-server
- name: Compile
run: rebar3 compile
- name: Run eunit tests
run: |
docker run -d --net=host redis
rebar3 eunit
- name: Run common tests
run: rebar3 ct