调整了一下yml进行构建和发布[ci][0.2.3]
This commit is contained in:
@@ -76,18 +76,38 @@ jobs:
|
||||
echo "$ART" > "$GITHUB_WORKSPACE/.artifact_name"
|
||||
- name: Upload to Alist
|
||||
run: |
|
||||
set -e
|
||||
ART=$(cat "$GITHUB_WORKSPACE/.artifact_name")
|
||||
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\"}")
|
||||
TOKEN=$(echo "$LOGIN_RESP" | sed -n 's/.*"token":"\([^"]*\)".*/\1/p')
|
||||
if [ -z "$TOKEN" ]; then TOKEN=$(echo "$LOGIN_RESP" | sed -n 's/.*"auth":"\([^"]*\)".*/\1/p'); fi
|
||||
if [ -z "$TOKEN" ]; then exit 1; fi
|
||||
curl -sS -o "$GITHUB_WORKSPACE/login.json" -w "%{http_code}" -X POST "$BASE/api/auth/login" -H "Content-Type: application/json" -d "{\"username\":\"$ALIST_USER\",\"password\":\"$ALIST_PASSWORD\"}" > "$GITHUB_WORKSPACE/login.code"
|
||||
if [ "$(cat "$GITHUB_WORKSPACE/login.code")" != "200" ]; then
|
||||
echo login_failed
|
||||
cat "$GITHUB_WORKSPACE/login.json"
|
||||
exit 1
|
||||
fi
|
||||
TOKEN=$(python3 - << 'PY'
|
||||
import json,sys,os
|
||||
p=os.path.join(os.environ['GITHUB_WORKSPACE'],'login.json')
|
||||
with open(p,'rb') as f:
|
||||
j=json.load(f)
|
||||
d=j.get('data') or {}
|
||||
print(d.get('token') or d.get('auth') or '')
|
||||
PY
|
||||
)
|
||||
if [ -z "$TOKEN" ]; then
|
||||
echo token_not_found
|
||||
cat "$GITHUB_WORKSPACE/login.json"
|
||||
exit 1
|
||||
fi
|
||||
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
|
||||
test "$UPLOAD_STATUS" -lt 400
|
||||
if [ "$UPLOAD_STATUS" -ge 400 ]; then
|
||||
echo upload_failed
|
||||
exit 1
|
||||
fi
|
||||
- name: Create release with download link
|
||||
if: env.GITEA_TOKEN != ''
|
||||
run: |
|
||||
|
||||
Reference in New Issue
Block a user