diff --git a/scripts/start-spiget b/scripts/start-spiget index 1fd73e59..7d0eac59 100755 --- a/scripts/start-spiget +++ b/scripts/start-spiget @@ -9,7 +9,7 @@ handleDebugMode : "${SPIGET_RESOURCES:=}" : "${SPIGET_DOWNLOAD_TOLERANCE:=5}" # in minutes -acceptArgs=(--accept application/zip --accept application/java-archive) +acceptArgs=(--accept application/zip --accept application/java-archive --accept application/octet-stream) containsJars() { file=${1?} @@ -20,7 +20,7 @@ containsJars() { if [[ $line =~ $pat ]]; then return 0 fi - done < <(unzip -l "$file") + done < <(unzip -l "$file" | tail -n +4) return 1 } @@ -34,7 +34,7 @@ containsPlugin() { if [[ $line =~ $pat ]]; then return 0 fi - done < <(unzip -l "$file") + done < <(unzip -l "$file" | tail -n +4) return 1 } @@ -101,11 +101,11 @@ downloadResourceFromSpiget() { log "ERROR: failed to retrieve file type of resource $resource" exit 1 fi - if [[ $fileType == .zip ]]; then + if containsJars "${outfile}"; then log "Extracting contents of resource ${resource} into plugins" extract "$outfile" /data/plugins rm "$outfile" - elif [[ $fileType == .jar ]]; then + elif containsPlugin "${outfile}"; then log "Moving resource ${resource} into plugins" mv "$outfile" /data/plugins else diff --git a/tests/setuponlytests/spiget/docker-compose.yml b/tests/setuponlytests/spiget/docker-compose.yml index 6ce8038c..a1148871 100644 --- a/tests/setuponlytests/spiget/docker-compose.yml +++ b/tests/setuponlytests/spiget/docker-compose.yml @@ -8,6 +8,6 @@ services: EULA: "TRUE" SETUP_ONLY: "TRUE" TYPE: PAPER - SPIGET_RESOURCES: "34315,3836,6245" + SPIGET_RESOURCES: "34315,3836,6245,2124" volumes: - ./data:/data diff --git a/tests/setuponlytests/spiget/verify.sh b/tests/setuponlytests/spiget/verify.sh index 02152bfe..848490ee 100644 --- a/tests/setuponlytests/spiget/verify.sh +++ b/tests/setuponlytests/spiget/verify.sh @@ -1,3 +1,4 @@ mc-image-helper assert fileExists plugins/3836.jar mc-image-helper assert fileExists plugins/34315.jar -mc-image-helper assert fileExists plugins/6245.jar \ No newline at end of file +mc-image-helper assert fileExists plugins/6245.jar +mc-image-helper assert fileExists plugins/SkinsRestorer.jar \ No newline at end of file