From 0d6d68fd6c83c71aba4516e16c3da6173ea39887 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96=2E=20Efe=20D=2E?= <67526259+skyline69@users.noreply.github.com> Date: Wed, 1 Jan 2025 18:00:10 +0100 Subject: [PATCH] image checking --- .github/workflows/check-mod.yml | 46 ++++++++++++++++++++++++++------- README.md | 2 +- 2 files changed, 38 insertions(+), 10 deletions(-) diff --git a/.github/workflows/check-mod.yml b/.github/workflows/check-mod.yml index 5c28ace1..8d9114a8 100644 --- a/.github/workflows/check-mod.yml +++ b/.github/workflows/check-mod.yml @@ -12,21 +12,49 @@ jobs: - name: Check out repository uses: actions/checkout@v3 + - name: Install ImageMagick + run: | + sudo apt-get update + sudo apt-get install -y imagemagick + - name: Check Required Files run: | - # This for-loop iterates over each directory in mods/ - # to ensure description.md and meta.json exist. for dir in mods/*/; do - MOD_DIR="$(basename "$dir")" + if [ -d "$dir" ]; then + MOD_DIR="$(basename "$dir")" - if [ ! -f "$dir/description.md" ]; then - echo "Error: Missing description.md in $MOD_DIR" - exit 1 + # Ensure description.md and meta.json exist + if [ ! -f "$dir/description.md" ]; then + echo "Error: Missing description.md in $MOD_DIR" + exit 1 + fi + + if [ ! -f "$dir/meta.json" ]; then + echo "Error: Missing meta.json in $MOD_DIR" + exit 1 + fi fi + done - if [ ! -f "$dir/meta.json" ]; then - echo "Error: Missing meta.json in $MOD_DIR" - exit 1 + - name: Check Thumbnail Dimensions + run: | + for dir in mods/*/; do + if [ -d "$dir" ]; then + MOD_DIR="$(basename "$dir")" + THUMBNAIL="$dir/thumbnail.png" + + if [ -f "$THUMBNAIL" ]; then + # Extract width and height using ImageMagick + DIMENSIONS=$(identify -format "%wx%h" "$THUMBNAIL") + WIDTH=$(echo "$DIMENSIONS" | cut -dx -f1) + HEIGHT=$(echo "$DIMENSIONS" | cut -dx -f2) + + # If thumbnail exceeds 1920x500, exit with error + if [ "$WIDTH" -gt 1920 ] || [ "$HEIGHT" -gt 500 ]; then + echo "Error: Thumbnail in $MOD_DIR exceeds the 1920×500 recommended size." + exit 1 + fi + fi fi done diff --git a/README.md b/README.md index 74834cf3..05ea9b61 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ This file stores essential metadata in JSON format. **Make sure you adhere to th - **downloadURL**: A direct link to the latest version of your released mod. (Can be same as `repo` if no separate download link exists.) ### 3. thumbnail.png (Optional) -If included, this image will appear alongside your mod in the index. Recommended size is 512×512 pixels or smaller. +If included, this image will appear alongside your mod in the index. Maximum and recommended size is 1920 × 500 pixels. ## How to Publish