Skip to content

chore(Burnex#check_domain_mx_record/1): Remove dns dependency in favo… #150

chore(Burnex#check_domain_mx_record/1): Remove dns dependency in favo…

chore(Burnex#check_domain_mx_record/1): Remove dns dependency in favo… #150

Workflow file for this run

name: Test
on:
push:
pull_request:
branches:
- master
jobs:
check_duplicate_runs:
name: Check for duplicate runs
continue-on-error: true
runs-on: ubuntu-latest
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@master
with:
concurrent_skipping: always
cancel_others: true
skip_after_successful_duplicate: true
paths_ignore: '["**/README.md", "**/CHANGELOG.md", "**/LICENSE"]'
do_not_skip: '["pull_request"]'
unit-test:
name: Run tests
runs-on: ubuntu-latest
needs: check_duplicate_runs
if: ${{ needs.check_duplicate_runs.outputs.should_skip != 'true' }}
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Elixir
uses: erlef/setup-elixir@v1
with:
otp-version: "24.2.1"
elixir-version: "1.13.2"
- name: Cache deps
id: cache-deps
uses: actions/cache@v2
with:
path: |
deps
_build
key: deps-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}-git-${{ github.sha }}
restore-keys: |
deps-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}
deps-${{ runner.os }}-$
- name: Install package dependencies
run: mix deps.get
- name: Check code format
run: mix format --check-formatted
- name: Compile dependencies
run: mix compile
env:
MIX_ENV: test
- name: Run unit tests
run: mix coveralls.github
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
credo:
name: Run credo
needs: unit-test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Elixir
uses: erlef/setup-elixir@v1
with:
otp-version: "24.2.1"
elixir-version: "1.13.2"
- name: Cache deps
id: cache-deps
uses: actions/cache@v2
with:
path: |
deps
_build
key: deps-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}-git-${{ github.sha }}
restore-keys: |
deps-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}
deps-${{ runner.os }}-$
- name: Install package dependencies
run: mix deps.get
- name: Compile dependencies
run: mix compile
env:
MIX_ENV: test
- name: Run credo
run: mix credo
dialyzer:
name: Run dialyzer
needs: unit-test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Elixir
uses: erlef/setup-elixir@v1
with:
otp-version: "24.2.1"
elixir-version: "1.13.2"
- name: Cache deps
id: cache-deps
uses: actions/cache@v2
with:
path: |
deps
_build
key: dialyzer-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}-git-${{ github.sha }}
restore-keys: |
dialyzer-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}
dialyzer-${{ runner.os }}-$
- name: Create dializer plts path
run: mkdir -p priv/plts
- name: Restore plts cache
uses: actions/cache@v2
with:
path: priv/plts
key: plts-${{ runner.os }}-${{ matrix.otp }}-${{ matrix.elixir }}-${{ hashFiles('**/mix.lock') }}-${{ github.sha }}
restore-keys: |
plts-${{ runner.os }}-${{ matrix.otp }}-${{ matrix.elixir }}-${{ hashFiles('**/mix.lock') }}
plts-${{ runner.os }}-${{ matrix.otp }}-${{ matrix.elixir }}
- name: Install package dependencies
run: mix deps.get
- name: Compile dependencies
run: mix compile
env:
MIX_ENV: test
- name: Run dialyzer
run: mix dialyzer