Skip to content

Merge pull request #138 from covalenthq/develop #447

Merge pull request #138 from covalenthq/develop

Merge pull request #138 from covalenthq/develop #447

name: compile-format
on:
push:
branches:
- "main"
pull_request:
branches:
- "main"
- "develop"
env:
MIX_ENV: test
jobs:
deps:
name: install-deps
runs-on: ubuntu-20.04
strategy:
matrix:
elixir: [1.14.3]
otp: [24]
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.6.0
with:
access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
# action is broken - https://github.com/actions/setup-elixir/issues/31
# - name: Setup
# uses: actions/setup-elixir@v1
# with:
# elixir-version: ${{ matrix.elixir }}
# otp-version: ${{ matrix.otp }}
- name: Install Elixir
run: |
wget https://github.com/elixir-lang/elixir/releases/download/v1.14.3/elixir-otp-24.zip
mkdir einstall
unzip elixir-otp-24.zip -d einstall
echo "$PWD/einstall/bin" >> $GITHUB_PATH
- name: Install hex
run: mix local.hex --force
- name: Install hex
run: mix local.rebar --force
- name: Install OTP
run: |
wget -q -O otp.tar.gz https://repo.hex.pm/builds/otp/ubuntu-20.04/OTP-25.0.4.tar.gz
mkdir -p .setup-elixir/otp
tar zxf otp.tar.gz -C .setup-elixir/otp --strip-components=1
rm otp.tar.gz
.setup-elixir/otp/Install -minimal $(pwd)/.setup-elixir/otp
echo "$(pwd)/.setup-elixir/otp/bin" >> $GITHUB_PATH
- name: Retrieve Cached Dependencies
uses: actions/cache@v2
id: mix-cache
with:
path: |
deps
_build
priv/plts
key: ${{ runner.os }}-${{ matrix.otp }}-${{ matrix.elixir }}-${{ hashFiles('mix.lock') }}
- name: Install Dependencies
if: steps.mix-cache.outputs.cache-hit != 'true'
run: |
mkdir -p priv/plts
mix local.rebar --force
mix local.hex --force
mix deps.get
mix deps.compile
- name: Check Code Format
run: mix format --check-formatted
- name: Run Credo (SCA)
run: mix credo
# - name: Run Dialyzer (SCA)
# run: mix dialyzer --plt
# - name: Run test
# run: mix test --trace --slowest 10