调整了一下yml进行构建和发布[ci][0.2.3]

This commit is contained in:
2025-11-26 22:01:14 +08:00
parent 782b2dd82e
commit 7bd8eeca77

View File

@@ -79,13 +79,30 @@ jobs:
ART=$(cat "$GITHUB_WORKSPACE/.artifact_name") ART=$(cat "$GITHUB_WORKSPACE/.artifact_name")
BASE="${ALIST_URL%/}" BASE="${ALIST_URL%/}"
LOGIN_RESP=$(curl -sS -X POST "$BASE/api/auth/login" -H "Content-Type: application/json" -d "{\"username\":\"$ALIST_USER\",\"password\":\"$ALIST_PASSWORD\"}") LOGIN_RESP=$(curl -sS -X POST "$BASE/api/auth/login" -H "Content-Type: application/json" -d "{\"username\":\"$ALIST_USER\",\"password\":\"$ALIST_PASSWORD\"}")
TOKEN=$(echo "$LOGIN_RESP" | sed -n 's/.*"token":"\([^"]*\)".*/\1/p') export LOGIN_RESP
if [ -z "$TOKEN" ]; then TOKEN=$(echo "$LOGIN_RESP" | sed -n 's/.*"auth":"\([^"]*\)".*/\1/p'); fi TOKEN=$(python3 - << 'PY'
if [ -z "$TOKEN" ]; then exit 1; fi import os, json
curl -sS -X POST "$BASE/api/fs/mkdir" -H "Authorization: $TOKEN" -H "Content-Type: application/json" -d "{\"path\":\"/ci\"}" >/dev/null 2>&1 || true s=os.environ.get('LOGIN_RESP','')
UPLOAD_STATUS=$(curl -sS -w "%{http_code}" -o /dev/null -X PUT "$BASE/api/fs/form" -H "Authorization: $TOKEN" -F "path=/ci" -F "file=@$GITHUB_WORKSPACE/$ART;type=application/x-tar") try:
j=json.loads(s)
d=j.get('data') or {}
print(d.get('token') or d.get('auth') or d.get('Authorization') or '')
except Exception:
print('')
PY
)
if [ -n "$TOKEN" ]; then
curl -sS -X POST "$BASE/api/fs/mkdir" -H "Authorization: $TOKEN" -H "Content-Type: application/json" -d "{\"path\":\"/ci\"}" >/dev/null 2>&1 || true
UPLOAD_STATUS=$(curl -sS -w "%{http_code}" -o /dev/null -X PUT "$BASE/api/fs/form" -H "Authorization: $TOKEN" -F "path=/ci" -F "file=@$GITHUB_WORKSPACE/$ART;type=application/x-tar")
if [ "$UPLOAD_STATUS" -ge 400 ]; then
UPLOAD_STATUS=$(curl -sS -w "%{http_code}" -o /dev/null -X PUT "$BASE/api/fs/form" -H "Authorization: Bearer $TOKEN" -F "path=/ci" -F "file=@$GITHUB_WORKSPACE/$ART;type=application/x-tar")
fi
else
UPLOAD_STATUS=999
fi
if [ "$UPLOAD_STATUS" -ge 400 ]; then if [ "$UPLOAD_STATUS" -ge 400 ]; then
UPLOAD_STATUS=$(curl -sS -w "%{http_code}" -o /dev/null -X PUT "$BASE/api/fs/form" -H "Authorization: Bearer $TOKEN" -F "path=/ci" -F "file=@$GITHUB_WORKSPACE/$ART;type=application/x-tar") curl -s -u "$ALIST_USER:$ALIST_PASSWORD" -X MKCOL "$BASE/dav/ci" || true
UPLOAD_STATUS=$(curl -sS -w "%{http_code}" -o /dev/null -u "$ALIST_USER:$ALIST_PASSWORD" -T "$GITHUB_WORKSPACE/$ART" "$BASE/dav/ci/$ART")
fi fi
test "$UPLOAD_STATUS" -lt 400 test "$UPLOAD_STATUS" -lt 400
- name: Create release with download link - name: Create release with download link