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