Files
HSAP/scripts/reset_labeling.sh

39 lines
1.4 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
# 清空送标/标注相关记录,保留平台账号与配置
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
cd "$ROOT"
echo "==> 清空 PostgreSQL 送标/标注表"
docker exec hsap-postgres psql -U as_platform -d as_platform <<'SQL'
TRUNCATE labeling_reviews, labeling_export_jobs, labeling_task_assignments, labeling_campaign_access, labeling_campaigns CASCADE;
TRUNCATE dataset_candidates, batch_deliveries CASCADE;
SQL
if curl -sf http://127.0.0.1:8080/api/tasks?page_size=100 -H 'Accept: application/vnd.cvat+json; version=2.0' >/dev/null 2>&1; then
echo "==> 清空 CVAT Task"
python3 - <<'PY'
import json, urllib.request
req = urllib.request.Request(
"http://127.0.0.1:8080/api/tasks?page_size=100",
headers={"Accept": "application/vnd.cvat+json; version=2.0"},
)
with urllib.request.urlopen(req) as r:
data = json.load(r)
for t in data.get("results", []):
tid = t["id"]
del_req = urllib.request.Request(
f"http://127.0.0.1:8080/api/tasks/{tid}",
method="DELETE",
headers={"Accept": "application/vnd.cvat+json; version=2.0"},
)
try:
urllib.request.urlopen(del_req)
print(f" deleted CVAT task #{tid} {t.get('name')}")
except Exception as e:
print(f" skip task #{tid}: {e}")
PY
fi
echo "==> 完成。数据湖目录: ${AS_DATA_LAKE:-$ROOT/../data/送标}"