Keep Render Backend Awake #4846
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # 保持Render后端服务活跃 | |
| # 防止免费版Render服务因15分钟无活动而休眠 | |
| name: Keep Render Backend Awake | |
| on: | |
| schedule: | |
| # 每14分钟触发一次 (避免15分钟休眠限制) | |
| - cron: "*/14 * * * *" | |
| workflow_dispatch: # 允许手动触发 | |
| jobs: | |
| ping-backend: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Ping Render Backend | |
| run: | | |
| echo "🚀 开始ping Render后端服务..." | |
| echo "⏰ 当前时间: $(date)" | |
| echo "🎯 目标URL: ${{ secrets.BACKEND_URL }}" | |
| # 使用curl ping后端根路径 (Strapi根路径会返回302重定向到/admin,这是正常的) | |
| response=$(curl -s -o /dev/null -w "%{http_code}" -m 30 ${{ secrets.BACKEND_URL }} || echo "failed") | |
| if [ "$response" = "200" ] || [ "$response" = "302" ]; then | |
| echo "✅ 后端服务响应正常 (HTTP $response)" | |
| elif [ "$response" = "failed" ]; then | |
| echo "❌ 请求失败 - 可能是网络问题或服务暂时不可用" | |
| else | |
| echo "⚠️ 后端服务响应异常 (HTTP $response)" | |
| fi | |
| echo "📊 任务完成时间: $(date)" | |
| # 确保工作流不会因为ping失败而报错 | |
| exit 0 | |
| - name: Ping API Endpoint (备用检查) | |
| run: | | |
| echo "🔄 执行备用API端点检查..." | |
| # 检查API端点是否可访问 (404是正常的,说明服务在运行) | |
| api_response=$(curl -s -o /dev/null -w "%{http_code}" -m 30 ${{ secrets.BACKEND_URL }}/api || echo "failed") | |
| if [ "$api_response" = "200" ] || [ "$api_response" = "404" ]; then | |
| echo "✅ API端点可访问 (HTTP $api_response)" | |
| elif [ "$api_response" = "failed" ]; then | |
| echo "❌ API请求失败" | |
| else | |
| echo "⚠️ API端点检查: HTTP $api_response" | |
| fi | |
| echo "🎯 保持活跃任务执行完毕" | |
| exit 0 |