Files
modelscope/scripts/delete-specific-workflows.sh
2026-02-02 03:56:12 +00:00

57 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# 配置信息
GITEA_URL="https://gitea.tailnet-68f9.ts.net"
OWNER="ben"
REPO="modelscope"
TOKEN="8d7d70f324796be650b79415303c31f567bf459b"
# 要删除的工作流 ID 列表
workflow_ids=(39 35 24)
# 函数:删除单个工作流运行记录
function delete_workflow_run() {
local run_id=$1
echo "尝试删除工作流 #$run_id..."
response=$(curl -s -X DELETE -H "Authorization: token $TOKEN" \
"$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs/$run_id")
echo "结果: $response"
echo ""
}
# 主脚本
echo "=== 工作流运行记录清理工具 ==="
echo ""
echo "开始删除指定的工作流运行记录..."
echo "----------------------------------------"
# 批量删除每个运行记录
for run_id in "${workflow_ids[@]}"; do
delete_workflow_run $run_id
# 添加短暂延迟,避免 API 速率限制
sleep 1
done
echo "----------------------------------------"
echo "删除操作完成!"
echo ""
# 再次检查是否还有剩余记录
echo "检查是否还有剩余记录..."
final_response=$(curl -s -H "Authorization: token $TOKEN" \
"$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs?per_page=50")
final_count=$(echo $final_response | grep -o '"total_count":[0-9]*' | grep -o '[0-9]*')
echo "当前剩余工作流运行记录数:$final_count"
if [ "$final_count" -gt 0 ]; then
echo "注意:仍有 $final_count 条记录未删除,可能是因为它们正在运行中或有权限问题。"
echo "请稍后再试,或通过 Gitea 网页界面手动删除。"
else
echo "所有工作流运行记录已成功删除!"
fi