diff --git a/.gitea/workflows/probe-visibility.yml b/.gitea/workflows/probe-visibility.yml index 91b78b6..6cbbd54 100644 --- a/.gitea/workflows/probe-visibility.yml +++ b/.gitea/workflows/probe-visibility.yml @@ -1,6 +1,9 @@ name: probe-visibility -# 一次性排查:抓 Gitee 企业仓建仓 / 改可见性的原始错误响应。 +# 一次性排查(带清理): +# 1) 企业仓建仓时用 public:true 是否直接得到公开仓 +# 2) 该令牌能否删仓(能删,才谈得上「删掉私有仓再按公开重建」) +# 探针仓名合法(须字母开头),结束前删掉。 on: workflow_dispatch: @@ -8,30 +11,35 @@ jobs: probe: runs-on: host steps: - - name: 抓原始响应 + - name: 试建仓可见性字段与删仓权限 env: DST_TOKEN: ${{ secrets.GITEE_TOKEN }} DST_OWNER: ${{ secrets.GITEE_OWNER }} run: | set -u - echo "=== 建仓(仅 private:false)原始响应 ===" + + echo "=== 1. 建仓 public:true ===" curl -sS -m 25 -X POST \ "https://gitee.com/api/v5/enterprises/${DST_OWNER}/repos?access_token=${DST_TOKEN}" \ -H 'Content-Type: application/json' \ - -d '{"name":"__probe_d","auto_init":false,"private":false}' \ - -w '\n建仓 HTTP %{http_code}\n' | head -c 600; echo + -d '{"name":"probevistmp","auto_init":false,"public":true}' \ + -o /tmp/c.json -w '建仓 HTTP %{http_code}\n' || true + head -c 400 /tmp/c.json; echo + curl -s -o /dev/null -w "匿名 probevistmp: HTTP %{http_code}\n" -m 20 "https://gitee.com/${DST_OWNER}/probevistmp" - echo "=== 建仓(不带任何可见性字段)原始响应 ===" + echo "=== 2. 建仓 visibility:public ===" curl -sS -m 25 -X POST \ "https://gitee.com/api/v5/enterprises/${DST_OWNER}/repos?access_token=${DST_TOKEN}" \ -H 'Content-Type: application/json' \ - -d '{"name":"__probe_e","auto_init":false}' \ - -w '\n建仓 HTTP %{http_code}\n' | head -c 600; echo + -d '{"name":"probevisvis","auto_init":false,"visibility":"public"}' \ + -o /tmp/c2.json -w '建仓 HTTP %{http_code}\n' || true + head -c 400 /tmp/c2.json; echo + curl -s -o /dev/null -w "匿名 probevisvis: HTTP %{http_code}\n" -m 20 "https://gitee.com/${DST_OWNER}/probevisvis" - echo "=== 清理 __probe_d / __probe_e ===" - for n in __probe_d __probe_e; do + echo "=== 3. 删探针仓 ===" + for n in probevistmp probevisvis; do curl -sS -m 25 -X DELETE \ "https://gitee.com/api/v5/repos/${DST_OWNER}/${n}?access_token=${DST_TOKEN}" \ - -w "删 ${n} HTTP %{http_code}\n" -o /tmp/d.json || true + -o /tmp/d.json -w "删 ${n} HTTP %{http_code}\n" || true head -c 150 /tmp/d.json 2>/dev/null; echo done