Multiple dependencies require OTP27 and 1.17 is the oldest version supporting it. Also bumps Docker Erlang version to current newest 27.
47 lines
1.5 KiB
YAML
47 lines
1.5 KiB
YAML
when:
|
|
- event: pull_request
|
|
path: [ "**/*.ex", "**/*.eex", "**/*.exs", "mix.lock", ".woodpecker/**" ]
|
|
evaluate: 'CI_COMMIT_SOURCE_BRANCH != "weblate"'
|
|
- event: push
|
|
branch: ${CI_REPO_DEFAULT_BRANCH}
|
|
path: [ "**/*.ex", "**/*.eex", "**/*.exs", "mix.lock", ".woodpecker/**" ]
|
|
|
|
depends_on:
|
|
- lint
|
|
|
|
labels:
|
|
platform: linux/amd64
|
|
|
|
variables:
|
|
script_file_entrypoint: &script_file_entrypoint
|
|
- /bin/sh
|
|
- -c
|
|
- 'printf "%s" "$CI_SCRIPT" | base64 -d > /tmp/ci-script.sh && /bin/sh -xe /tmp/ci-script.sh'
|
|
|
|
steps:
|
|
unit-testing-elixir-1.17:
|
|
image: elixir:1.17-otp-27-alpine
|
|
entrypoint: *script_file_entrypoint
|
|
environment:
|
|
MIX_ENV: test
|
|
VIX_COMPILATION_MODE: PLATFORM_PROVIDED_LIBVIPS
|
|
DB_HOST: postgres
|
|
DB_PORT: 5432
|
|
commands:
|
|
- apk add --no-cache build-base cmake exiftool ffmpeg vips-dev file-dev git openssl
|
|
- adduser -D -h /home/testuser testuser
|
|
- mkdir -p /home/testuser/.mix /home/testuser/.hex
|
|
- chown -R testuser:testuser . /home/testuser
|
|
- su testuser -c "HOME=/home/testuser mix local.hex --force"
|
|
- su testuser -c "HOME=/home/testuser mix local.rebar --force"
|
|
- su testuser -c "HOME=/home/testuser mix deps.get"
|
|
- su testuser -c "HOME=/home/testuser mix pleroma.test_runner --preload-modules"
|
|
|
|
services:
|
|
postgres:
|
|
image: postgres:13-alpine
|
|
failure: ignore
|
|
environment:
|
|
POSTGRES_DB: pleroma_test
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|