42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
name: Deploy on Merge
|
|
|
|
on:
|
|
pull_request:
|
|
types: [closed]
|
|
branches: [main]
|
|
|
|
jobs:
|
|
deploy:
|
|
# 关键:只在PR被成功merge时运行
|
|
if: github.event.pull_request.merged == true
|
|
runs-on: linux
|
|
steps:
|
|
# 第一步:部署到Web服务器
|
|
- name: Deploy to web server
|
|
run: |
|
|
echo "=== Deploying to web server ==="
|
|
echo "[INFO] Removing Old file..."
|
|
rm -rf /var/www/docs_dev/*
|
|
echo "[INFO] Copying new file..."
|
|
cp -r /home/ly0kos/work/test_env/build/* /var/www/docs_dev/
|
|
echo "✓ Documentation deployed to /var/www/docs_dev/"
|
|
|
|
# 验证部署
|
|
echo "Web server contents:"
|
|
ls -la /var/www/docs_dev/ | head -10
|
|
|
|
# 第二步:清理临时工作树
|
|
- name: Cleanup temporary worktree
|
|
run: |
|
|
echo "=== Cleaning up ==="
|
|
cd /home/ly0kos/work/test_env
|
|
|
|
# 移除工作树
|
|
if [ -d /home/ly0kos/work/test_env/build ]; then
|
|
git worktree remove /home/ly0kos/work/test_env/build --force
|
|
echo "✓ Temporary worktree removed"
|
|
else
|
|
echo "Build worktree already removed"
|
|
fi
|
|
|
|
echo "=== Process completed successfully ===" |