From 8cde9551f81435887fc9dc32b72f2e6688fcc8c3 Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Sun, 13 Mar 2022 11:34:32 -0500 Subject: [PATCH 1/2] When ICON is GIF, extract only first frame Fixes #1303 --- scripts/start-finalExec | 14 +++++++---- .../icon-gif-multiframe/docker-compose.yml | 22 ++++++++++++++++++ .../icon-gif-multiframe/fake.jar | 0 .../icon-gif-multiframe/verify.sh | 1 + .../web/motion-tween-example.gif | Bin 0 -> 62075 bytes .../icon-png-atscale/docker-compose.yml | 22 ++++++++++++++++++ .../setuponlytests/icon-png-atscale/fake.jar | 0 .../setuponlytests/icon-png-atscale/verify.sh | 1 + .../web/4737386_minecraft_squircle_icon.png | Bin 0 -> 592 bytes .../icon-png-scale/docker-compose.yml | 22 ++++++++++++++++++ tests/setuponlytests/icon-png-scale/fake.jar | 0 tests/setuponlytests/icon-png-scale/verify.sh | 1 + .../web/4737386_minecraft_squircle_icon.png | Bin 0 -> 1131 bytes 13 files changed, 79 insertions(+), 4 deletions(-) create mode 100644 tests/setuponlytests/icon-gif-multiframe/docker-compose.yml create mode 100644 tests/setuponlytests/icon-gif-multiframe/fake.jar create mode 100644 tests/setuponlytests/icon-gif-multiframe/verify.sh create mode 100644 tests/setuponlytests/icon-gif-multiframe/web/motion-tween-example.gif create mode 100644 tests/setuponlytests/icon-png-atscale/docker-compose.yml create mode 100644 tests/setuponlytests/icon-png-atscale/fake.jar create mode 100644 tests/setuponlytests/icon-png-atscale/verify.sh create mode 100644 tests/setuponlytests/icon-png-atscale/web/4737386_minecraft_squircle_icon.png create mode 100644 tests/setuponlytests/icon-png-scale/docker-compose.yml create mode 100644 tests/setuponlytests/icon-png-scale/fake.jar create mode 100644 tests/setuponlytests/icon-png-scale/verify.sh create mode 100644 tests/setuponlytests/icon-png-scale/web/4737386_minecraft_squircle_icon.png diff --git a/scripts/start-finalExec b/scripts/start-finalExec index 9cc2c7d007b..8a85e017ce7 100755 --- a/scripts/start-finalExec +++ b/scripts/start-finalExec @@ -5,13 +5,19 @@ isDebugging && set -x if [ -n "$ICON" ]; then - if [ ! -e server-icon.png ] || [ "${OVERRIDE_ICON}" == "TRUE" ]; then + if [ ! -e server-icon.png ] || isTrue "${OVERRIDE_ICON}"; then log "Using server icon from $ICON..." # Not sure what it is yet...call it "img" - curl -sSL -o /tmp/icon.img $ICON - specs=$(identify /tmp/icon.img | awk '{print $2,$3}') - if [ "$specs" = "PNG 64x64" ]; then + if ! get -o /tmp/icon.img "$ICON"; then + log "ERROR: failed to download icon from $ICON" + exit 1 + fi + read -r -a specs < <(identify /tmp/icon.img | awk 'NR == 1 { print $2, $3 }') + if [ "${specs[0]} ${specs[1]}" = "PNG 64x64" ]; then mv /tmp/icon.img /data/server-icon.png + elif [ "${specs[0]}" = GIF ]; then + log "Converting GIF image to 64x64 PNG..." + convert "/tmp/icon.img[0]" -resize 64x64! /data/server-icon.png else log "Converting image to 64x64 PNG..." convert /tmp/icon.img -resize 64x64! /data/server-icon.png diff --git a/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml b/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml new file mode 100644 index 00000000000..a2911d5c730 --- /dev/null +++ b/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml @@ -0,0 +1,22 @@ +version: "3" + +services: + web: + image: nginx + volumes: + - ./web:/usr/share/nginx/html + mc: + depends_on: + - web + image: ${IMAGE_TO_TEST:-itzg/minecraft-server} + environment: + EULA: "true" + SETUP_ONLY: "true" + ICON: http://web/4737386_minecraft_squircle_icon.png + # the following are only used to speed up test execution + TYPE: CUSTOM + CUSTOM_SERVER: /servers/fake.jar + VERSION: 1.18.1 + volumes: + - ./data:/data + - ./fake.jar:/servers/fake.jar diff --git a/tests/setuponlytests/icon-gif-multiframe/fake.jar b/tests/setuponlytests/icon-gif-multiframe/fake.jar new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tests/setuponlytests/icon-gif-multiframe/verify.sh b/tests/setuponlytests/icon-gif-multiframe/verify.sh new file mode 100644 index 00000000000..3bde55eb98f --- /dev/null +++ b/tests/setuponlytests/icon-gif-multiframe/verify.sh @@ -0,0 +1 @@ +mc-image-helper assert fileExists server-icon.png \ No newline at end of file diff --git a/tests/setuponlytests/icon-gif-multiframe/web/motion-tween-example.gif b/tests/setuponlytests/icon-gif-multiframe/web/motion-tween-example.gif new file mode 100644 index 0000000000000000000000000000000000000000..2819ff3226a0c21397c8721be2a3a0e542cc6b14 GIT binary patch literal 62075 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 Z_OEpr4BQ|HMCTtO@Bjb!|H?Pf_#cCy#$W&d literal 0 HcmV?d00001 diff --git a/tests/setuponlytests/icon-png-atscale/docker-compose.yml b/tests/setuponlytests/icon-png-atscale/docker-compose.yml new file mode 100644 index 00000000000..a2911d5c730 --- /dev/null +++ b/tests/setuponlytests/icon-png-atscale/docker-compose.yml @@ -0,0 +1,22 @@ +version: "3" + +services: + web: + image: nginx + volumes: + - ./web:/usr/share/nginx/html + mc: + depends_on: + - web + image: ${IMAGE_TO_TEST:-itzg/minecraft-server} + environment: + EULA: "true" + SETUP_ONLY: "true" + ICON: http://web/4737386_minecraft_squircle_icon.png + # the following are only used to speed up test execution + TYPE: CUSTOM + CUSTOM_SERVER: /servers/fake.jar + VERSION: 1.18.1 + volumes: + - ./data:/data + - ./fake.jar:/servers/fake.jar diff --git a/tests/setuponlytests/icon-png-atscale/fake.jar b/tests/setuponlytests/icon-png-atscale/fake.jar new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tests/setuponlytests/icon-png-atscale/verify.sh b/tests/setuponlytests/icon-png-atscale/verify.sh new file mode 100644 index 00000000000..3bde55eb98f --- /dev/null +++ b/tests/setuponlytests/icon-png-atscale/verify.sh @@ -0,0 +1 @@ +mc-image-helper assert fileExists server-icon.png \ No newline at end of file diff --git a/tests/setuponlytests/icon-png-atscale/web/4737386_minecraft_squircle_icon.png b/tests/setuponlytests/icon-png-atscale/web/4737386_minecraft_squircle_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..bee51ae488bd122787cbb6a561bd782871f28ca5 GIT binary patch literal 592 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9GG!XV7ZFl&wk0|OJ2 zr;B4q#hkad&wDXB%CLV>%sLt&9{$I+^9N^-?lOG8HtBQCYvoe+$;*=Wp3vX1`J>p6$a)R6D7E)%f31G=sHWTZ z^nQVmh@aE64=(h#|6aquHL2;qx0dz1{#AxWPTneEw-uQKdRlI5ajJT}y6-pFib-Yi zm&%vj`B&I%{cx?}JEq>xYcA~E`X}Ia@fKEzJM#+m?ww@4aBE^-!wJu*7k79VfkA-| z_!?duT_tTf@44R!gGX7~n(JE3-CNJ)&PhGW=(1RM`Ht{_Xs@y@+a56Mtm2#CyMotX z!vZS@HijNhV^-`!8%JY(q|28XqYPIsqC zw(r}hy+CEZfak`w+J~Z!FA-PLToxRmp0lAW=;l$6h`;WiY$K#Kv(=}@P063UJoWCm zqn?iwIM&P!sVcNvQ{(-)EC(z67o?c44bvoAGd>C N>*?y}vd$@?2>_~R{&fHV literal 0 HcmV?d00001 diff --git a/tests/setuponlytests/icon-png-scale/docker-compose.yml b/tests/setuponlytests/icon-png-scale/docker-compose.yml new file mode 100644 index 00000000000..a2911d5c730 --- /dev/null +++ b/tests/setuponlytests/icon-png-scale/docker-compose.yml @@ -0,0 +1,22 @@ +version: "3" + +services: + web: + image: nginx + volumes: + - ./web:/usr/share/nginx/html + mc: + depends_on: + - web + image: ${IMAGE_TO_TEST:-itzg/minecraft-server} + environment: + EULA: "true" + SETUP_ONLY: "true" + ICON: http://web/4737386_minecraft_squircle_icon.png + # the following are only used to speed up test execution + TYPE: CUSTOM + CUSTOM_SERVER: /servers/fake.jar + VERSION: 1.18.1 + volumes: + - ./data:/data + - ./fake.jar:/servers/fake.jar diff --git a/tests/setuponlytests/icon-png-scale/fake.jar b/tests/setuponlytests/icon-png-scale/fake.jar new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tests/setuponlytests/icon-png-scale/verify.sh b/tests/setuponlytests/icon-png-scale/verify.sh new file mode 100644 index 00000000000..3bde55eb98f --- /dev/null +++ b/tests/setuponlytests/icon-png-scale/verify.sh @@ -0,0 +1 @@ +mc-image-helper assert fileExists server-icon.png \ No newline at end of file diff --git a/tests/setuponlytests/icon-png-scale/web/4737386_minecraft_squircle_icon.png b/tests/setuponlytests/icon-png-scale/web/4737386_minecraft_squircle_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..9f8da2e5ce0aa0d653e7389d638df3a821692fb7 GIT binary patch literal 1131 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSoCO|{#S9GG!XV7ZFl&wk0|Se! zr;B4q#hkZyJ+p%YC60YuobguWWv^g*;FfdFTi3a;Zhd})bIZ9!N_j^rH9`+2K0KEH z;FNyidESWcU3#+LLhYNotRL@OIW^47)90*k@qc!?pj{dFx4+l_ey=!KDEU;(&K=8* zKYc3`*)4waMs44o-%@hjF7q$x?D;$8Yo0;PUHj?-y87kogx4>cIZ5{ke|qw7zq=|c z4essZEq?v?_09BoZ|{lBd%ON=?}RMHJ*Px+!d(xa7kjf&W83{FM<;uFTIkli*SKMv z%4^T_&(C7|p8#=RHOs_hCr$4hIbZX>&)^T6Uz5T%b#;s9#W(W5s2IzApQW%fB0$_d ztL4CM^OJn}Zx-(7<5J#wW`(ZO?>{2Pc7I>`P`&)elcNHjMXc9t_q<)*oYbN8EwSjI z{1tI0m5<+cYVPe=px3g(DCNfQ<>rBJ_DQ_^v(zH-TbfZ_!0Vr)N1rYBPJLOiEA|un zoS!SAZsTfVQIZp%FR{@Qo)3{DKWwXdK2Wp?0vAja@yBGV2| zhRP)jd26PA=VwrDc+D_@oq^#3;|?~E=(=?i!J^s>6WqBTe9Ef)&k(@0gN30I=y1t~ zYu#YsLt2&p|Jydae7$)S<2C1~b7f2pwk*{38O*c~?-@uK&yjb3Y~ zQ0g0qnDw1m;VuK8P96ipy}tos7mBhXH)h_RvuaZ1rqH13PZu{{y>_o|y*InUnR_l9 z|1M*3DCtc4t}4U$M!i(gW!l0gA_fuctpculYV(xd|9aXgAlksLCjPzT6u07}CpC4O zJ;Nq^2#e)eS-7V<-!05++ul!29=^ue3iTIy;vUY{zv?>imP*e5xY>(l8nHPnOW3_b z{lX7U@xSrbN!u^>Y~R%SC-LiC$4~siY0?aHB+7p%Yk&G?#vx^J`0)Gr1wR(+arGBj zWz1sqJ Mr>mdKI;Vst0L4qVHvj+t literal 0 HcmV?d00001 From bf55abbd11ec7e4ea53330892909f72f1294b2bf Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Sun, 13 Mar 2022 11:38:12 -0500 Subject: [PATCH 2/2] Fixed filename in test --- tests/setuponlytests/icon-gif-multiframe/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml b/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml index a2911d5c730..b7285da2c71 100644 --- a/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml +++ b/tests/setuponlytests/icon-gif-multiframe/docker-compose.yml @@ -12,7 +12,7 @@ services: environment: EULA: "true" SETUP_ONLY: "true" - ICON: http://web/4737386_minecraft_squircle_icon.png + ICON: http://web/motion-tween-example.gif # the following are only used to speed up test execution TYPE: CUSTOM CUSTOM_SERVER: /servers/fake.jar