summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLain Soykaf <lain@lain.com>2021-12-26 18:05:42 +0100
committerLain Soykaf <lain@lain.com>2021-12-26 18:05:42 +0100
commitc52390a7d9170c00371561115f3eb8eea6fb3515 (patch)
tree697bb368177ca0e26df93dbd9897a7c9f726f7f1
parent3b8eaadb0d8fb7c2e415340ac93f78b00b7dbb5d (diff)
CI: Use own package as base
So we can skip updating and installing the same packages a million times. It will still grab the hex.pm stuff -- maybe we can find a way to avoid this, too.
-rw-r--r--.gitlab-ci.yml9
-rw-r--r--ci/Dockerfile7
-rwxr-xr-xci/build_and_push.sh1
3 files changed, 9 insertions, 8 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3860f1db9..9155af0e5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: elixir:1.9.4
+image: git.pleroma.social:5050/pleroma/pleroma/ci-base
variables: &global_variables
POSTGRES_DB: pleroma_test
@@ -26,12 +26,7 @@ stages:
before_script:
- echo $MIX_ENV
- rm -rf _build/*/lib/pleroma
- - apt-get update && apt-get install -y cmake
- - mix local.hex --force
- - mix local.rebar --force
- mix deps.get
- - apt-get -qq update
- - apt-get install -y libmagic-dev
after_script:
- rm -rf _build/*/lib/pleroma
@@ -88,7 +83,6 @@ unit-testing:
alias: postgres
command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
script:
- - apt-get update && apt-get install -y libimage-exiftool-perl ffmpeg
- mix ecto.create
- mix ecto.migrate
- mix coveralls --preload-modules
@@ -146,7 +140,6 @@ unit-testing-rum:
<<: *global_variables
RUM_ENABLED: "true"
script:
- - apt-get update && apt-get install -y libimage-exiftool-perl ffmpeg
- mix ecto.create
- mix ecto.migrate
- "mix ecto.migrate --migrations-path priv/repo/optional_migrations/rum_indexing/"
diff --git a/ci/Dockerfile b/ci/Dockerfile
new file mode 100644
index 000000000..e6a8b438c
--- /dev/null
+++ b/ci/Dockerfile
@@ -0,0 +1,7 @@
+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
+
diff --git a/ci/build_and_push.sh b/ci/build_and_push.sh
new file mode 100755
index 000000000..484cc2643
--- /dev/null
+++ b/ci/build_and_push.sh
@@ -0,0 +1 @@
+docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t git.pleroma.social:5050/pleroma/pleroma/ci-base:latest --push .