Skip to content

Also support Durations #252

Also support Durations

Also support Durations #252

Workflow file for this run

name: CI
on:
pull_request:
push:
branches:
- main
jobs:
mix_test:
name: mix test (Elixir ${{matrix.pair.elixir}} | Erlang/OTP ${{matrix.pair.otp}})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- pair:
elixir: 1.17
otp: 27
- pair:
elixir: 1.17
otp: 26
- pair:
elixir: 1.16
otp: 26
- pair:
elixir: 1.15
otp: 26
- pair:
elixir: 1.14
otp: 25
- pair:
elixir: 1.12
otp: 24
- pair:
elixir: 1.11
otp: 24
steps:
- uses: actions/checkout@v4
- uses: erlef/setup-beam@v1
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
with:
otp-version: ${{matrix.pair.otp}}
elixir-version: ${{matrix.pair.elixir}}
- name: Run PostgreSQL 12
run: |
docker run --env POSTGRES_USER=postgres \
--env POSTGRES_DB=ecto-psql-extras-test \
--env POSTGRES_PASSWORD=secret \
-d -p 5432:5432 postgres:12.20-alpine \
postgres -c shared_preload_libraries=pg_stat_statements
- name: Run PostgreSQL 13
run: |
docker run --env POSTGRES_USER=postgres \
--env POSTGRES_DB=ecto-psql-extras-test \
--env POSTGRES_PASSWORD=secret \
-d -p 5433:5432 postgres:13.16-alpine \
postgres -c shared_preload_libraries=pg_stat_statements
- name: Run PostgreSQL 14
run: |
docker run --env POSTGRES_USER=postgres \
--env POSTGRES_DB=ecto-psql-extras-test \
--env POSTGRES_PASSWORD=secret \
-d -p 5434:5432 postgres:14.13-alpine \
postgres -c shared_preload_libraries=pg_stat_statements
- name: Run PostgreSQL 15
run: |
docker run --env POSTGRES_USER=postgres \
--env POSTGRES_DB=ecto-psql-extras-test \
--env POSTGRES_PASSWORD=secret \
-d -p 5435:5432 postgres:15.8-alpine \
postgres -c shared_preload_libraries=pg_stat_statements
- name: Run PostgreSQL 16
run: |
docker run --env POSTGRES_USER=postgres \
--env POSTGRES_DB=ecto-psql-extras-test \
--env POSTGRES_PASSWORD=secret \
-d -p 5436:5432 postgres:16.4-alpine \
postgres -c shared_preload_libraries=pg_stat_statements
- name: Run PostgreSQL 17
run: |
docker run --env POSTGRES_USER=postgres \
--env POSTGRES_DB=ecto-psql-extras-test \
--env POSTGRES_PASSWORD=secret \
-d -p 5437:5432 postgres:17.0-alpine \
postgres -c shared_preload_libraries=pg_stat_statements
sleep 10
- name: Install Dependencies
run: |
mix local.hex --force
mix local.rebar --force
mix deps.get --only test
- name: Run tests for PG 12
env:
PG_VERSION: 12
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 13
env:
PG_VERSION: 13
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 14
env:
PG_VERSION: 14
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 15
env:
PG_VERSION: 15
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 16
env:
PG_VERSION: 16
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 17
env:
PG_VERSION: 17
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Install latest compatible postgrex
run: |
mix deps.unlock --all
mix deps.update postgrex
- name: Run tests for PG 12/latest compatible postgrex
env:
PG_VERSION: 12
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 13/latest compatible postgrex
env:
PG_VERSION: 13
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 14/latest compatible postgrex
env:
PG_VERSION: 14
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 15/latest compatible postgrex
env:
PG_VERSION: 15
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 16/latest compatible postgrex
env:
PG_VERSION: 16
run: |
sleep 4 # wait pg
mix test --include distribution
- name: Run tests for PG 17/latest compatible postgrex
env:
PG_VERSION: 17
run: |
sleep 4 # wait pg
mix test --include distribution