diff --git a/.woodpecker/test.yml b/.woodpecker/test.yml index bef503752..20a06eba4 100644 --- a/.woodpecker/test.yml +++ b/.woodpecker/test.yml @@ -5,16 +5,18 @@ depends_on: - lint matrix: + # test the lowest and highest versions ELIXIR_VERSION: - - 1.14 - 1.15 - - 1.16 + - 1.18 OTP_VERSION: - - 25 - - 26 + - 24 + - 27 include: - - ELIXIR_VERSION: 1.16 - OTP_VERSION: 26 + - ELIXIR_VERSION: 1.15 + OTP_VERSION: 24 + - ELIXIR_VERSION: 1.18 + OTP_VERSION: 27 variables: - &setup-hex "mix local.hex --force && mix local.rebar --force" diff --git a/ci/Dockerfile b/ci/Dockerfile index e6a8b438c..9a399efe3 100644 --- a/ci/Dockerfile +++ b/ci/Dockerfile @@ -1,7 +1,6 @@ -FROM elixir:1.9.4 - -RUN apt-get update &&\ - apt-get install -y libmagic-dev cmake libimage-exiftool-perl ffmpeg &&\ - mix local.hex --force &&\ - mix local.rebar --force - +ARG TAG +FROM docker.io/hexpm/elixir:${TAG} +RUN apk update +RUN apk add git gcc g++ musl-dev make cmake file-dev rclone wget zip imagemagick ffmpeg perl-image-exiftool exiftool +RUN mkdir /src +WORKDIR /src diff --git a/ci/build-all.sh b/ci/build-all.sh new file mode 100755 index 000000000..6aa0fd587 --- /dev/null +++ b/ci/build-all.sh @@ -0,0 +1,2 @@ +./build.sh 1.15-otp24 1.15.8-erlang-24.3.4.17-alpine-3.19.7 +./build.sh 1.18-otp27 1.18.2-erlang-27.2.4-alpine-3.19.7 diff --git a/ci/build.sh b/ci/build.sh new file mode 100755 index 000000000..bf80b9208 --- /dev/null +++ b/ci/build.sh @@ -0,0 +1,3 @@ +echo "Building $1 using image tag $2" +docker build -t docker.io/akkoma/ci-base:$1 --build-arg=version=$1 --build-arg=TAG=$2 . +docker push docker.io/akkoma/ci-base:$1 diff --git a/ci/build_and_push.sh b/ci/build_and_push.sh deleted file mode 100755 index 484cc2643..000000000 --- a/ci/build_and_push.sh +++ /dev/null @@ -1 +0,0 @@ -docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t git.pleroma.social:5050/pleroma/pleroma/ci-base:latest --push . diff --git a/docs/docs/installation/generic_dependencies.include b/docs/docs/installation/generic_dependencies.include index f4d439b83..098a7c7d8 100644 --- a/docs/docs/installation/generic_dependencies.include +++ b/docs/docs/installation/generic_dependencies.include @@ -1,7 +1,7 @@ ## Required dependencies * PostgreSQL 12+ -* Elixir 1.14+ (currently tested up to 1.17) +* Elixir 1.15+ (currently tested up to 1.18) * Erlang OTP 25+ (currently tested up to OTP27) * git * file / libmagic diff --git a/mix.exs b/mix.exs index 8ec107c49..8f16d3aac 100644 --- a/mix.exs +++ b/mix.exs @@ -5,7 +5,7 @@ def project do [ app: :pleroma, version: version("3.15.1"), - elixir: "~> 1.14", + elixir: "~> 1.15", elixirc_paths: elixirc_paths(Mix.env()), compilers: Mix.compilers(), elixirc_options: [warnings_as_errors: warnings_as_errors()],