0030
This commit is contained in:
1 parent
95172357eb
commit
0835a430e8
2 files changed
+74
-7
No files matched your search
@@ -413,13 +413,41 @@ jobs:
|
|||||||
path: public/
|
path: public/
|
||||||
|
|
||||||
- name: Deploy to UpYun
|
- name: Deploy to UpYun
|
||||||
uses: her-cat/upyun-deployer@v1.0.3
|
id: deploy-upyun
|
||||||
with:
|
run: |
|
||||||
bucket: ${{ secrets.UPYUN_BUCKET }}
|
echo "🚀 开始 UpYun 部署..."
|
||||||
operator: ${{ secrets.UPYUN_OPERATOR }}
|
OUTPUT_FILE="/tmp/upyun_output.txt"
|
||||||
password: ${{ secrets.UPYUN_PASSWORD }}
|
|
||||||
dir: 'public'
|
# 运行 upyun-deployer
|
||||||
publish_dir: '/'
|
upyun-deployer \
|
||||||
|
-bucket "${{ secrets.UPYUN_BUCKET }}" \
|
||||||
|
-operator "${{ secrets.UPYUN_OPERATOR }}" \
|
||||||
|
-password "${{ secrets.UPYUN_PASSWORD }}" \
|
||||||
|
-local_dir "./public" \
|
||||||
|
-publish_dir "/" 2>&1 | tee "$OUTPUT_FILE"
|
||||||
|
|
||||||
|
# 检测完成信号
|
||||||
|
if grep -q "done! consumed:" "$OUTPUT_FILE"; then
|
||||||
|
echo "✅ UpYun 部署完成"
|
||||||
|
|
||||||
|
# 提取统计信息
|
||||||
|
STATS=$(grep "exists:" "$OUTPUT_FILE")
|
||||||
|
echo "📊 统计: $STATS"
|
||||||
|
|
||||||
|
# 统计 cached/refreshed/uploaded 数量
|
||||||
|
CACHED=$(grep -c "cached!" "$OUTPUT_FILE" || true)
|
||||||
|
REFRESHED=$(grep -c "refreshed!" "$OUTPUT_FILE" || true)
|
||||||
|
UPLOADED=$(grep -c "uploaded!" "$OUTPUT_FILE" || true)
|
||||||
|
|
||||||
|
echo "cached=${CACHED}" >> $GITHUB_OUTPUT
|
||||||
|
echo "refreshed=${REFRESHED}" >> $GITHUB_OUTPUT
|
||||||
|
echo "uploaded=${UPLOADED}" >> $GITHUB_OUTPUT
|
||||||
|
echo "success=true" >> $GITHUB_OUTPUT
|
||||||
|
else
|
||||||
|
echo "❌ 部署未完成或被中断"
|
||||||
|
echo "success=false" >> $GITHUB_OUTPUT
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
- name: End timing
|
- name: End timing
|
||||||
id: end-upyun
|
id: end-upyun
|
||||||
@@ -429,6 +457,11 @@ jobs:
|
|||||||
duration=$((end_time - start_time))
|
duration=$((end_time - start_time))
|
||||||
echo "duration=${duration}" >> $GITHUB_OUTPUT
|
echo "duration=${duration}" >> $GITHUB_OUTPUT
|
||||||
echo "## ⏱️ Deploy UpYun 耗时: ${duration}秒" >> $GITHUB_STEP_SUMMARY
|
echo "## ⏱️ Deploy UpYun 耗时: ${duration}秒" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "### 📊 部署详情" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "- ✅ Cached (跳过): ${{ steps.deploy-upyun.outputs.cached }}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "- 🔄 Refreshed (更新): ${{ steps.deploy-upyun.outputs.refreshed }}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "- ⬆️ Uploaded (新增): ${{ steps.deploy-upyun.outputs.uploaded }}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
# ============================================================
|
# ============================================================
|
||||||
# Job 5: CDN Refresh & Notifications (在所有部署完成后)
|
# Job 5: CDN Refresh & Notifications (在所有部署完成后)
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# UpYun 部署完成检测脚本
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "🚀 开始 UpYun 部署..."
|
||||||
|
START_TIME=$(date +%s)
|
||||||
|
|
||||||
|
# 运行 upyun-deployer 并捕获输出
|
||||||
|
OUTPUT_FILE="/tmp/upyun_output.txt"
|
||||||
|
her-cat/upyun-deployer@v1.0.3 2>&1 | tee "$OUTPUT_FILE"
|
||||||
|
|
||||||
|
# 检测完成信号
|
||||||
|
if grep -q "done! consumed:" "$OUTPUT_FILE"; then
|
||||||
|
END_TIME=$(date +%s)
|
||||||
|
DURATION=$((END_TIME - START_TIME))
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "✅ UpYun 部署完成!"
|
||||||
|
echo "⏱️ 总耗时: ${DURATION}秒"
|
||||||
|
|
||||||
|
# 提取统计信息
|
||||||
|
STATS=$(grep "exists:" "$OUTPUT_FILE")
|
||||||
|
echo "📊 统计: $STATS"
|
||||||
|
|
||||||
|
# 检查是否有失败
|
||||||
|
if grep -q "failed" "$OUTPUT_FILE"; then
|
||||||
|
echo "⚠️ 有文件上传失败,请检查日志"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "❌ 部署未完成或被中断"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
Reference in new issue
Block a user