bee / scripts /quality /configure_git_hooks.py
Bee Deploy
HF Space backend deploy [de0cba5]
5e21013
from pathlib import Path
import stat
import subprocess
import sys
root = Path(__file__).resolve().parents[2]
hook_dir = root / ".githooks"
hooks = [hook_dir / "pre-commit", hook_dir / "pre-push"]
inside_repo = subprocess.run(
["git", "rev-parse", "--is-inside-work-tree"],
cwd=root,
text=True,
capture_output=True,
)
if inside_repo.returncode != 0 or inside_repo.stdout.strip() != "true":
raise SystemExit(0)
set_hooks = subprocess.run(
["git", "config", "core.hooksPath", ".githooks"],
cwd=root,
text=True,
capture_output=True,
)
if set_hooks.returncode != 0:
sys.stderr.write(set_hooks.stderr)
raise SystemExit(set_hooks.returncode)
for hook in hooks:
if hook.exists():
hook.chmod(hook.stat().st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH)