Update .gitea/workflows/ci.yml
This commit is contained in:
@@ -174,6 +174,52 @@ jobs:
|
|||||||
mv "$SKINS_DIR"/* "$DANSER_SKINS_DIR"
|
mv "$SKINS_DIR"/* "$DANSER_SKINS_DIR"
|
||||||
echo "Skin files moved."
|
echo "Skin files moved."
|
||||||
|
|
||||||
|
|
||||||
|
- name: Check for Duplicate skin.ini Names
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
echo "[Duplicate Skin Name Check Started]"
|
||||||
|
|
||||||
|
sanitize_filename() {
|
||||||
|
echo "$1" \
|
||||||
|
| sed -e 's#[\\/:\*\?"<>|]#-#g' -e 's#%#_#g' \
|
||||||
|
| tr -s ' ' \
|
||||||
|
| sed 's/^ *//;s/ *$//'
|
||||||
|
}
|
||||||
|
|
||||||
|
declare -A name_counts
|
||||||
|
duplicates=()
|
||||||
|
|
||||||
|
for dir in "$DANSER_SKINS_DIR"/*; do
|
||||||
|
[ -d "$dir" ] || continue
|
||||||
|
name=$(basename "$dir" | tr -d $'\r\n')
|
||||||
|
ini=$(find "$dir" -maxdepth 1 -iname "skin.ini" | head -n1)
|
||||||
|
if [ -f "$ini" ]; then
|
||||||
|
line=$(grep -i '^[[:space:]]*Name:' "$ini" | head -n1)
|
||||||
|
if [ -n "$line" ]; then
|
||||||
|
val="${line#*:}"
|
||||||
|
val=$(echo "$val" | sed 's/^[[:space:]]*//;s/[[:space:]]*$//')
|
||||||
|
name=$(sanitize_filename "$val")
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
name_counts["$name"]=$(( ${name_counts["$name"]:-0} + 1 ))
|
||||||
|
done
|
||||||
|
|
||||||
|
for name in "${!name_counts[@]}"; do
|
||||||
|
if [ "${name_counts[$name]}" -gt 1 ]; then
|
||||||
|
duplicates+=("$name (${name_counts[$name]} skins)")
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "${#duplicates[@]}" -gt 0 ]; then
|
||||||
|
echo "⚠️ Duplicate skin.ini Names found:"
|
||||||
|
printf ' • %s\n' "${duplicates[@]}"
|
||||||
|
else
|
||||||
|
echo "✓ No duplicate skin.ini Names detected."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "[Duplicate Skin Name Check Completed]"
|
||||||
|
|
||||||
- name: Generate Danser videos and screenshots
|
- name: Generate Danser videos and screenshots
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
Reference in New Issue
Block a user