Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: CI

on:
- push
- pull_request

jobs:
format:
name: Format and compile with warnings as errors
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1

- name: Install OTP and Elixir
uses: actions/setup-elixir@v1
with:
otp-version: "23.0"
elixir-version: "1.11.2"

- name: Install dependencies
run: mix deps.get

# TODO: Enable in next release
#
# At the moment, we still have pending PRs etc.
# and introducing auto-formatting now would cause
# a ton of conflicts.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❤️

Comment on lines +26 to +27
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💚 that you already prepared for this 💚

#
# - name: Check mix format
# run: mix format --check-formatted

- name: Compile with warnings as errors
run: mix compile --warnings-as-errors

analysis:
name: Run static code analysis
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1

- name: Install OTP and Elixir
uses: actions/setup-elixir@v1
with:
otp-version: "23.0"
elixir-version: "1.11.2"

- name: Install dependencies
run: mix deps.get

- name: Analyze code
run: mix credo --strict

test:
name: Test Elixir ${{ matrix.elixir }}, OTP ${{ matrix.erlang }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- erlang: "23.0"
elixir: "1.11.2"
- erlang: "23.0"
elixir: "1.10.3"
- erlang: "22.3"
elixir: "1.9.4"
- erlang: "21.3"
elixir: "1.8.2"
- erlang: "20.3.1"
elixir: "1.7.4"
- erlang: "19.3"
elixir: "1.6.6"
- erlang: "18.3"
elixir: "1.5.3"

steps:
- uses: actions/checkout@v1

- name: Install OTP and Elixir
uses: actions/setup-elixir@v1
with:
otp-version: ${{ matrix.erlang }}
elixir-version: ${{ matrix.elixir }}

- name: Install dependencies
run: mix deps.get --only test

- name: Run unit tests
run: mix test --trace --exclude functional

- name: Run functional tests
run: mix test --trace --only functional
29 changes: 0 additions & 29 deletions .travis.yml

This file was deleted.