light-heart-labs--ods
51 行
1.5 KiB
Bash
可执行文件
51 行
1.5 KiB
Bash
可执行文件
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
cd "$ROOT_DIR"
|
|
|
|
PYTHON_CMD="python3"
|
|
if [[ -f "$ROOT_DIR/lib/python-cmd.sh" ]]; then
|
|
. "$ROOT_DIR/lib/python-cmd.sh"
|
|
PYTHON_CMD="$(ods_detect_python_cmd)"
|
|
elif command -v python >/dev/null 2>&1; then
|
|
PYTHON_CMD="python"
|
|
fi
|
|
|
|
echo "[gate] shell syntax"
|
|
mapfile -t sh_files < <(git ls-files '*.sh')
|
|
for f in "${sh_files[@]}"; do
|
|
bash -n "$f"
|
|
done
|
|
|
|
echo "[gate] compatibility + claims"
|
|
bash scripts/check-compatibility.sh
|
|
"$PYTHON_CMD" scripts/check-version-consistency.py
|
|
bash scripts/check-release-claims.sh
|
|
"$PYTHON_CMD" scripts/validate-golden-paths.py
|
|
"$PYTHON_CMD" scripts/validate-generated-configs.py
|
|
"$PYTHON_CMD" scripts/check-dependency-pins.py
|
|
|
|
echo "[gate] contracts"
|
|
bash tests/contracts/test-installer-contracts.sh
|
|
bash tests/contracts/test-preflight-fixtures.sh
|
|
bash tests/contracts/test-installer-hardening.sh
|
|
bash tests/test-uninstall-compose-flags.sh
|
|
bash tests/test-windows-missing-service-hints.sh
|
|
"$PYTHON_CMD" tests/contracts/test-network-exposure-contracts.py
|
|
|
|
echo "[gate] smoke"
|
|
bash tests/smoke/linux-amd.sh
|
|
bash tests/smoke/linux-nvidia.sh
|
|
bash tests/smoke/wsl-logic.sh
|
|
bash tests/smoke/macos-dispatch.sh
|
|
|
|
echo "[gate] installer simulation"
|
|
bash scripts/simulate-installers.sh
|
|
"$PYTHON_CMD" scripts/validate-sim-summary.py artifacts/installer-sim/summary.json
|
|
|
|
echo "[gate] update rollback"
|
|
bash tests/test-update-rollback-contract.sh
|
|
|
|
echo "[PASS] release gate"
|