48 lines
1,008 B
YAML
48 lines
1,008 B
YAML
name: Checks
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
check:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install openssl
|
|
run: sudo apt-get install -y openssl openssl-dev openssl-libs
|
|
|
|
- name: Set up Elixir
|
|
uses: erlef/setup-beam@v1
|
|
with:
|
|
elixir-version: "1.17.x"
|
|
otp-version: "25.x"
|
|
rebar3-version: false
|
|
hexpm-mirrors: |
|
|
https://builds.hex.pm
|
|
https://cdn.jsdelivr.net/hex
|
|
|
|
- name: Install dependencies
|
|
run: mix deps.get
|
|
|
|
- name: Check formatting
|
|
run: mix format --check-formatted
|
|
|
|
- name: Run Credo
|
|
run: mix credo --strict
|
|
|
|
- name: Check for compiler warnings
|
|
run: mix compile --warnings-as-errors
|
|
|
|
- name: Run tests
|
|
run: mix test
|
|
|
|
- name: Check for unused dependencies
|
|
run: mix deps.unlock --check-unused
|