From 5573f467b73b80325bfe1ebcb161c0c5f9f0e7fa Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Mon, 19 Feb 2024 14:28:39 +0100 Subject: [PATCH 1/2] :paperclip: Increase devenv limits for multipart requests --- backend/scripts/repl | 3 +++ backend/scripts/start-dev | 3 +++ backend/src/app/binfile/v1.clj | 6 +++++- backend/src/app/http.clj | 4 ++-- docker/devenv/files/nginx.conf | 2 +- 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/backend/scripts/repl b/backend/scripts/repl index f521f2bff..4e454b761 100755 --- a/backend/scripts/repl +++ b/backend/scripts/repl @@ -36,6 +36,9 @@ export PENPOT_FLAGS="\ # Setup default upload media file size to 100MiB export PENPOT_MEDIA_MAX_FILE_SIZE=104857600 +# Setup default multipart upload size to 300MiB +export PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE=314572800 + # export PENPOT_DATABASE_URI="postgresql://172.17.0.1:5432/penpot" # export PENPOT_DATABASE_USERNAME="penpot" # export PENPOT_DATABASE_PASSWORD="penpot" diff --git a/backend/scripts/start-dev b/backend/scripts/start-dev index 8fecd79af..89df83d96 100755 --- a/backend/scripts/start-dev +++ b/backend/scripts/start-dev @@ -37,6 +37,9 @@ export OPTIONS=" # Setup default upload media file size to 100MiB export PENPOT_MEDIA_MAX_FILE_SIZE=104857600 +# Setup default multipart upload size to 300MiB +export PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE=314572800 + # Setup HEAP # export OPTIONS="$OPTIONS -J-Xms50m -J-Xmx1024m" # export OPTIONS="$OPTIONS -J-Xms1100m -J-Xmx1100m -J-XX:+AlwaysPreTouch" diff --git a/backend/src/app/binfile/v1.clj b/backend/src/app/binfile/v1.clj index 8597254c7..d2b7cdf7f 100644 --- a/backend/src/app/binfile/v1.clj +++ b/backend/src/app/binfile/v1.clj @@ -65,7 +65,11 @@ (def ^:const buffer-size (:xnio/buffer-size yt/defaults)) (def ^:const penpot-magic-number 800099563638710213) -(def ^:const max-object-size (* 1024 1024 100)) ; Only allow 100MiB max file size. + + +;; A maximum (storage) object size allowed: 100MiB +(def ^:const max-object-size + (* 1024 1024 100)) (def ^:dynamic *position* nil) diff --git a/backend/src/app/http.clj b/backend/src/app/http.clj index 599225827..1e605cdb0 100644 --- a/backend/src/app/http.clj +++ b/backend/src/app/http.clj @@ -52,8 +52,8 @@ [_ cfg] (merge {::port 6060 ::host "0.0.0.0" - ::max-body-size (* 1024 1024 30) ; 30 MiB - ::max-multipart-body-size (* 1024 1024 120)} ; 120 MiB + ::max-body-size (* 1024 1024 30) ; default 30 MiB + ::max-multipart-body-size (* 1024 1024 120)} ; default 120 MiB (d/without-nils cfg))) (defmethod ig/pre-init-spec ::server [_] diff --git a/docker/devenv/files/nginx.conf b/docker/devenv/files/nginx.conf index d291512c8..24a0f2ddf 100644 --- a/docker/devenv/files/nginx.conf +++ b/docker/devenv/files/nginx.conf @@ -49,7 +49,7 @@ http { listen 3449 default_server; server_name _; - client_max_body_size 100M; + client_max_body_size 300M; charset utf-8; proxy_http_version 1.1; From dc2b4ddebc4eb767ab7fcaccea363fb13e745725 Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Mon, 19 Feb 2024 14:38:50 +0100 Subject: [PATCH 2/2] :arrow_up: Update devenv dockerfile Mainly version bump for node, kondo and jvm --- docker/devenv/Dockerfile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docker/devenv/Dockerfile b/docker/devenv/Dockerfile index ef47e54b6..5e1aaffcb 100644 --- a/docker/devenv/Dockerfile +++ b/docker/devenv/Dockerfile @@ -3,10 +3,10 @@ LABEL maintainer="Andrey Antukh " ARG DEBIAN_FRONTEND=noninteractive -ENV NODE_VERSION=v20.10.0 \ - CLOJURE_VERSION=1.11.1.1429 \ - CLJKONDO_VERSION=2023.12.15 \ - BABASHKA_VERSION=1.3.187 \ +ENV NODE_VERSION=v20.11.1 \ + CLOJURE_VERSION=1.11.1.1435 \ + CLJKONDO_VERSION=2024.02.12 \ + BABASHKA_VERSION=1.3.188 \ CLJFMT_VERSION=0.12.0 \ LANG=en_US.UTF-8 \ LC_ALL=en_US.UTF-8 @@ -105,12 +105,12 @@ RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ aarch64|arm64) \ - ESUM='aa43295803595f78d73e9c7c02866301c9729377277144e2829f54a58e5f6d21'; \ - BINARY_URL='https://corretto.aws/downloads/resources/21.0.1.12.1/amazon-corretto-21.0.1.12.1-linux-aarch64.tar.gz'; \ + ESUM='3ce6a2b357e2ef45fd6b53d6587aa05bfec7771e7fb982f2c964f6b771b7526a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.2%2B13/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.2_13.tar.gz'; \ ;; \ amd64|x86_64) \ - ESUM='3e718a86cfa6c1173c469f5e9d6b07fa37381a28ebb1f80593250cc380baf22f'; \ - BINARY_URL='https://corretto.aws/downloads/resources/21.0.1.12.1/amazon-corretto-21.0.1.12.1-linux-x64.tar.gz'; \ + ESUM='454bebb2c9fe48d981341461ffb6bf1017c7b7c6e15c6b0c29b959194ba3aaa5'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.2%2B13/OpenJDK21U-jdk_x64_linux_hotspot_21.0.2_13.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \