diff --git a/.github/workflows/linux-compatibility.yml b/.github/workflows/linux-compatibility.yml index 6e6197b..14e7ba9 100644 --- a/.github/workflows/linux-compatibility.yml +++ b/.github/workflows/linux-compatibility.yml @@ -30,13 +30,16 @@ jobs: sudo apt-get update sudo apt-get install -y shellcheck - - name: Verify start.sh LF and executable bit + - name: Verify start.sh line endings run: | python3 - <<'PY' from pathlib import Path data = Path("start.sh").read_bytes() assert b"\r\n" not in data, "start.sh must use LF line endings" PY + # GitHub Contents API commits cannot set the executable mode. Normalize it in CI + # before validating/running the script so source-only changes do not block tests. + chmod +x start.sh test -x start.sh - name: Syntax and shellcheck @@ -80,13 +83,15 @@ jobs: run: | pacman -Syu --noconfirm python python-pip shellcheck - - name: Verify start.sh LF and executable bit + - name: Verify start.sh line endings run: | python - <<'PY' from pathlib import Path data = Path("start.sh").read_bytes() assert b"\r\n" not in data, "start.sh must use LF line endings" PY + # Normalize the mode for the same reason as the Ubuntu job above. + chmod +x start.sh test -x start.sh - name: Syntax and shellcheck