Update .gitea/workflows/ci.yml
This commit is contained in:
@@ -197,13 +197,16 @@ jobs:
|
||||
}
|
||||
|
||||
declare -A name_counts=()
|
||||
declare -A name_dirs=()
|
||||
duplicates=()
|
||||
|
||||
shopt -s nullglob
|
||||
for dir in "${DANSER_SKINS_DIR}"/*; do
|
||||
[ -d "$dir" ] || continue
|
||||
|
||||
name=$(basename "$dir" | tr -d $'\r\n')
|
||||
dir_base=$(basename "$dir" | tr -d $'\r\n')
|
||||
name="$dir_base"
|
||||
|
||||
ini=$(find "$dir" -maxdepth 1 -iname "skin.ini" | head -n1 || true)
|
||||
if [ -f "$ini" ]; then
|
||||
line=$(grep -i '^[[:space:]]*Name:' "$ini" | head -n1 || true)
|
||||
@@ -215,18 +218,29 @@ jobs:
|
||||
fi
|
||||
|
||||
name_counts["$name"]=$(( ${name_counts["$name"]:-0} + 1 ))
|
||||
if [ -z "${name_dirs[$name]:-}" ]; then
|
||||
name_dirs["$name"]="$dir_base"
|
||||
else
|
||||
name_dirs["$name"]+=",${dir_base}"
|
||||
fi
|
||||
done
|
||||
shopt -u nullglob
|
||||
|
||||
for nm in "${!name_counts[@]}"; do
|
||||
if [ "${name_counts[$nm]}" -gt 1 ]; then
|
||||
duplicates+=("$nm (${name_counts[$nm]} skins)")
|
||||
duplicates+=("$nm")
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "${#duplicates[@]}" -gt 0 ]; then
|
||||
echo "⚠️ Duplicate skin.ini Names found:"
|
||||
printf ' • %s\n' "${duplicates[@]}"
|
||||
for nm in "${duplicates[@]}"; do
|
||||
IFS=',' read -r -a dirs <<< "${name_dirs[$nm]}"
|
||||
echo " • $nm (${name_counts[$nm]} skins):"
|
||||
for d in "${dirs[@]}"; do
|
||||
echo " - $d"
|
||||
done
|
||||
done
|
||||
else
|
||||
echo "✓ No duplicate skin.ini Names detected."
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user