Skip to content

[DRAFT] Break functionality out of aws-elixir and aws-erlang and create a common aws_beam_core lib #3

[DRAFT] Break functionality out of aws-elixir and aws-erlang and create a common aws_beam_core lib

[DRAFT] Break functionality out of aws-elixir and aws-erlang and create a common aws_beam_core lib #3

Workflow file for this run

name: Build
on:
pull_request:
push:
branches:
- master
jobs:
build:
strategy:
matrix:
platform: [ubuntu-latest]
otp-version: [25, 26, 27]
runs-on: ${{ matrix.platform }}
container:
image: erlang:${{ matrix.otp-version }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Cache Hex packages
uses: actions/cache@v3
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: Compile
run: rebar3 compile
- name: Run EUnit Tests
run: rebar3 eunit
- name: Run Common Tests
run: rebar3 ct
- name: Check app calls
run: rebar3 check_app_calls
- name: Create Cover Reports
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: rebar3 cover
- name: Produce Documentation
run: rebar3 edoc || true
- name: Produce Documentation
run: rebar3 ex_doc || true
- name: Publish Documentation
uses: actions/upload-artifact@v3
with:
name: edoc
path: doc
- name: Upload Common Test result
if: ${{ always() }}
uses: actions/upload-artifact@v3
with:
name: Common Test ${{ matrix.otp-version }}
path: _build/test/logs/**
retention-days: 3