diff --git a/.gitea/workflows/ip-check.yml b/.gitea/workflows/ip-check.yml deleted file mode 100644 index 1a8b9f0..0000000 --- a/.gitea/workflows/ip-check.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: Check Runner IP Address - -on: - push: - paths: - - '.gitea/workflows/ip-check.yml' - workflow_dispatch: - -jobs: - check-ip: - runs-on: [dsw] - steps: - - name: Get runner IP address - run: | - echo "Runner IP address:" - curl ip.sb - - echo "\nAdditional network information:" - hostname -I - whoami - uname -a diff --git a/scripts/delete-final-workflows.sh b/scripts/delete-final-workflows.sh new file mode 100755 index 0000000..0548b3a --- /dev/null +++ b/scripts/delete-final-workflows.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +OWNER="ben" +REPO="modelscope" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# 要删除的工作流 ID 列表 +workflow_ids=(37 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 diff --git a/scripts/delete-last-workflow.sh b/scripts/delete-last-workflow.sh new file mode 100755 index 0000000..53fe3f2 --- /dev/null +++ b/scripts/delete-last-workflow.sh @@ -0,0 +1,51 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +OWNER="ben" +REPO="modelscope" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# 要删除的工作流 ID +workflow_id=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 "开始删除工作流运行记录 #$workflow_id..." +echo "----------------------------------------" + +# 删除工作流运行记录 +delete_workflow_run $workflow_id + +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 diff --git a/scripts/delete-queued-workflows.sh b/scripts/delete-queued-workflows.sh new file mode 100755 index 0000000..a6c26e8 --- /dev/null +++ b/scripts/delete-queued-workflows.sh @@ -0,0 +1,61 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +OWNER="ben" +REPO="modelscope" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# 函数:获取所有工作流运行记录 +function get_workflow_runs() { + curl -s -H "Authorization: token $TOKEN" \ + "$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs?per_page=50" +} + +# 函数:删除单个工作流运行记录 +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 "" + +# 获取当前工作流运行记录 +response=$(get_workflow_runs) + +# 提取所有运行记录的 ID +run_ids=$(echo $response | grep -o '"id":[0-9]*' | grep -o '[0-9]*') + +# 检查是否有运行记录 +if [ -z "$run_ids" ]; then + echo "没有找到工作流运行记录" + exit 0 +fi + +# 显示当前运行记录 +echo "找到以下工作流运行记录:" +echo "----------------------------------------" +echo "$run_ids" +echo "----------------------------------------" + +# 批量删除每个运行记录 +deleted=0 +for run_id in $run_ids; do + delete_workflow_run $run_id + deleted=$((deleted + 1)) + + # 添加短暂延迟,避免 API 速率限制 + sleep 1 +done + +echo "----------------------------------------" +echo "删除操作完成!" +echo "共删除了 $deleted 条工作流运行记录" diff --git a/scripts/delete-remaining-workflows.sh b/scripts/delete-remaining-workflows.sh new file mode 100755 index 0000000..403eb49 --- /dev/null +++ b/scripts/delete-remaining-workflows.sh @@ -0,0 +1,83 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +OWNER="ben" +REPO="modelscope" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# 函数:获取所有工作流运行记录 +function get_workflow_runs() { + curl -s -H "Authorization: token $TOKEN" \ + "$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs?per_page=50" +} + +# 函数:删除单个工作流运行记录 +function delete_workflow_run() { + local run_id=$1 + + response=$(curl -s -X DELETE -H "Authorization: token $TOKEN" \ + "$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs/$run_id") + + echo "删除工作流 #$run_id: $response" +} + +# 主脚本 +echo "=== 工作流运行记录清理工具 ===" +echo "" + +# 获取当前工作流运行记录 +echo "1. 获取当前工作流运行记录..." +response=$(get_workflow_runs) + +# 提取所有运行记录的 ID +run_ids=$(echo $response | grep -o '"id":[0-9]*' | grep -o '[0-9]*' | head -10) + +# 检查是否有运行记录 +if [ -z "$run_ids" ]; then + echo "没有找到工作流运行记录" + exit 0 +fi + +# 显示当前运行记录 ID +echo "" +echo "2. 当前工作流运行记录 ID:" +echo "----------------------------------------" +echo "$run_ids" +echo "----------------------------------------" + +# 统计要删除的记录数 +count=$(echo "$run_ids" | wc -w) +echo "" +echo "3. 找到 $count 条工作流运行记录,准备删除..." +echo "----------------------------------------" + +# 批量删除每个运行记录 +deleted=0 +for run_id in $run_ids; do + delete_workflow_run $run_id + deleted=$((deleted + 1)) + + # 添加短暂延迟,避免 API 速率限制 + sleep 1 +done + +echo "" +echo "4. 删除完成!" +echo "----------------------------------------" +echo "共处理了 $deleted 条工作流运行记录" +echo "" + +# 再次检查是否还有剩余记录 +echo "5. 检查是否还有剩余记录..." +final_response=$(get_workflow_runs) +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 diff --git a/scripts/delete-runner.sh b/scripts/delete-runner.sh new file mode 100755 index 0000000..316afe3 --- /dev/null +++ b/scripts/delete-runner.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# runner ID 从命令行参数获取,默认为5 +RUNNER_ID=${1:-5} + +# 函数:删除指定ID的runner +function delete_runner() { + local runner_id=$1 + + echo "尝试删除runner #$runner_id..." + + response=$(curl -s -w "\n%{http_code}" -X DELETE \ + -H "Authorization: token $TOKEN" \ + "$GITEA_URL/api/v1/actions/runners/$runner_id") + + # 分离响应内容和HTTP状态码 + http_status=$(echo "$response" | tail -n1) + response_body=$(echo "$response" | sed '$d') + + if [ "$http_status" -eq 204 ] || [ "$http_status" -eq 200 ]; then + echo "成功删除runner #$runner_id" + echo "响应: $response_body" + else + echo "删除runner #$runner_id 失败" + echo "HTTP状态码: $http_status" + echo "响应: $response_body" + fi +} + +# 主脚本 +echo "=== 删除Gitea Runner ===" +echo "" + +# 直接删除runner +echo "将要删除runner ID: $RUNNER_ID" +delete_runner $RUNNER_ID \ No newline at end of file diff --git a/scripts/delete-specific-workflows.sh b/scripts/delete-specific-workflows.sh new file mode 100755 index 0000000..e07a05c --- /dev/null +++ b/scripts/delete-specific-workflows.sh @@ -0,0 +1,56 @@ +#!/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 diff --git a/scripts/delete-workflows.sh b/scripts/delete-workflows.sh new file mode 100755 index 0000000..f1fdccb --- /dev/null +++ b/scripts/delete-workflows.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +OWNER="ben" +REPO="modelscope" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# 函数:获取所有工作流运行记录 +function get_workflow_runs() { + local page=$1 + local per_page=$2 + + curl -s -H "Authorization: token $TOKEN" \ + "$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs?page=$page&per_page=$per_page" +} + +# 函数:删除单个工作流运行记录 +function delete_workflow_run() { + local run_id=$1 + + curl -s -X DELETE -H "Authorization: token $TOKEN" \ + "$GITEA_URL/api/v1/repos/$OWNER/$REPO/actions/runs/$run_id" +} + +# 主脚本 + echo "开始删除工作流运行记录..." + +# 获取第一页的工作流运行记录 +response=$(get_workflow_runs 1 100) + +# 提取所有运行记录的 ID +run_ids=$(echo $response | grep -o '"id":[0-9]*' | grep -o '[0-9]*') + +# 检查是否有运行记录 +if [ -z "$run_ids" ]; then + echo "没有找到工作流运行记录" + exit 0 +fi + +# 统计要删除的记录数 +count=$(echo "$run_ids" | wc -w) +echo "找到 $count 条工作流运行记录,开始删除..." + +# 批量删除每个运行记录 +deleted=0 +for run_id in $run_ids; do + echo "删除工作流运行记录 #$run_id..." + delete_workflow_run $run_id + deleted=$((deleted + 1)) + + # 添加短暂延迟,避免 API 速率限制 + sleep 0.5 +done + +echo "删除完成!共删除了 $deleted 条工作流运行记录" diff --git a/scripts/list-runners.sh b/scripts/list-runners.sh new file mode 100755 index 0000000..35c1bfc --- /dev/null +++ b/scripts/list-runners.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +# 配置信息 +GITEA_URL="https://gitea.tailnet-68f9.ts.net" +TOKEN="8d7d70f324796be650b79415303c31f567bf459b" + +# 函数:列出所有runners +function list_runners() { + echo "尝试获取runners列表..." + + # 尝试不同的API端点 + endpoints=("/api/v1/actions/runners" "/api/v1/runners" "/api/v1/admin/runners") + + for endpoint in "${endpoints[@]}"; do + echo "尝试端点: $endpoint" + response=$(curl -s -w "\n%{http_code}" \ + -H "Authorization: token $TOKEN" \ + "$GITEA_URL$endpoint") + + # 分离响应内容和HTTP状态码 + http_status=$(echo "$response" | tail -n1) + response_body=$(echo "$response" | sed '$d') + + echo "HTTP状态码: $http_status" + if [ "$http_status" -eq 200 ]; then + echo "成功获取runners列表:" + echo "$response_body" + return 0 + else + echo "失败 - 响应: $response_body" + echo "---" + fi + done + + echo "无法通过任何已知端点获取runners列表" + return 1 +} + +# 主脚本 +echo "=== 列出Gitea Runners ===" +echo "" +list_runners \ No newline at end of file