Fix compilation on Fedora #229
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: push | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
name: lint / ubuntu-latest / OTP ${{matrix.otp}} / Elixir ${{matrix.elixir}} | |
strategy: | |
matrix: | |
otp: ['25'] | |
elixir: ['1.14'] | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: erlef/setup-beam@v1 | |
with: | |
otp-version: ${{matrix.otp}} | |
elixir-version: ${{matrix.elixir}} | |
- run: sudo apt install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libavdevice-dev | |
- name: Cache dialyzer artifacts | |
uses: actions/cache@v4 | |
with: | |
path: _dialyzer | |
key: ${{ runner.os }}-dialyzer-${{ hashFiles('**/mix.lock') }} | |
restore-keys: | | |
${{ runner.os }}-dialyzer- | |
- run: mix deps.get | |
- run: mix credo | |
- run: mix format --check-formatted | |
- run: mix dialyzer | |
- run: mix docs 2>&1 | (! grep -q "warning:") | |
test-linux: | |
runs-on: ubuntu-22.04 | |
name: test-linux-x86-64 / ubuntu-22.04 / OTP ${{matrix.otp}} / Elixir ${{matrix.elixir}} | |
strategy: | |
matrix: | |
otp: ['25'] | |
elixir: ['1.14'] | |
env: | |
MIX_ENV: test | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: erlef/setup-beam@v1 | |
with: | |
otp-version: ${{matrix.otp}} | |
elixir-version: ${{matrix.elixir}} | |
- run: sudo apt install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libavdevice-dev | |
- run: mix deps.get | |
- run: mix test | |
test-linux-coverage: | |
runs-on: ubuntu-24.04 | |
name: test-linux-x86-64 / ubuntu-24.04 / OTP ${{matrix.otp}} / Elixir ${{matrix.elixir}} | |
strategy: | |
matrix: | |
otp: ['25'] | |
elixir: ['1.14'] | |
env: | |
MIX_ENV: test | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: erlef/setup-beam@v1 | |
with: | |
otp-version: ${{matrix.otp}} | |
elixir-version: ${{matrix.elixir}} | |
- run: sudo apt install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libavdevice-dev | |
- run: mix deps.get | |
- run: mix coveralls.json | |
- name: Upload coverage reports to Codecov | |
uses: codecov/[email protected] | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
test-macos: | |
runs-on: macos-13 | |
name: test-macos-x86-64 / macos-13 / OTP latest / Elixir latest | |
env: | |
MIX_ENV: test | |
# MacOS runners seem to have static IP addresses | |
# which results in GitHub rate limiting our requests | |
# for downloading prebuilt XLA binaries. | |
# Adding token seems to help. | |
XLA_HTTP_HEADERS: "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" | |
steps: | |
- uses: actions/checkout@v2 | |
- run: brew install ffmpeg elixir | |
- run: mix deps.get | |
- run: mix test | |
test-macos-arm: | |
runs-on: macos-14 | |
name: test-macos-arm / macos-14 / OTP latest / Elixir latest | |
env: | |
MIX_ENV: test | |
XLA_HTTP_HEADERS: "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" | |
steps: | |
- uses: actions/checkout@v2 | |
- run: brew install ffmpeg elixir | |
- run: mix deps.get | |
- run: mix test | |