summaryrefslogtreecommitdiff
path: root/ci
diff options
context:
space:
mode:
Diffstat (limited to 'ci')
-rw-r--r--ci/Dockerfile8
-rw-r--r--ci/README12
-rwxr-xr-xci/build_and_push.sh1
3 files changed, 21 insertions, 0 deletions
diff --git a/ci/Dockerfile b/ci/Dockerfile
new file mode 100644
index 000000000..ca28b7029
--- /dev/null
+++ b/ci/Dockerfile
@@ -0,0 +1,8 @@
+FROM elixir:1.11.4
+
+# Single RUN statement, otherwise intermediate images are created
+# https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#run
+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/README b/ci/README
new file mode 100644
index 000000000..3785adef1
--- /dev/null
+++ b/ci/README
@@ -0,0 +1,12 @@
+## Dependencies
+
+Assuming an AMD64 Alpine system, you're going to need the following packages
+- `qemu qemu-openrc qemu-arm qemu-aarch64` for binfmt
+- `docker-cli-buildx` for building the images
+
+## Setting up
+
+```
+docker login git.pleroma.social:5050
+doas rc-service qemu-binfmt start
+```
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 .