backend: Enhance OpenVidu Meet cleanup action with improved status reporting and error handling
This commit is contained in:
parent
6ab702e571
commit
710b2c0659
70
.github/actions/cleanup/action.yaml
vendored
70
.github/actions/cleanup/action.yaml
vendored
@ -3,42 +3,86 @@ description: 'Clean up OpenVidu Meet test environment'
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: Show pre-cleanup status
|
||||
run: |
|
||||
echo "=== System status before cleanup ==="
|
||||
df -h
|
||||
free -h
|
||||
echo "=== Running processes ==="
|
||||
ps aux | grep -i 'npm\|node\|livekit' | grep -v grep || true
|
||||
echo "=== Docker containers ==="
|
||||
docker ps -a || true
|
||||
shell: bash
|
||||
|
||||
- name: Kill backend process
|
||||
run: pkill -f "npm run start:prod" || true
|
||||
shell: bash
|
||||
|
||||
- name: Stop OpenVidu Local Deployment containers
|
||||
run: |
|
||||
cd openvidu-local-deployment/community
|
||||
docker compose down -v
|
||||
if [ -d "openvidu-local-deployment/community" ]; then
|
||||
cd openvidu-local-deployment/community
|
||||
docker compose down -v || echo "Warning: Failed to stop containers cleanly"
|
||||
else
|
||||
echo "Directory openvidu-local-deployment/community not found, skipping"
|
||||
fi
|
||||
shell: bash
|
||||
|
||||
- name: Clean up temporary files
|
||||
run: |
|
||||
rm -rf /tmp/openvidu-*
|
||||
rm -rf /tmp/livekit-*
|
||||
echo "Cleaning temporary files..."
|
||||
rm -rf /tmp/openvidu-* || echo "Warning: Failed to clean some OpenVidu temp files"
|
||||
rm -rf /tmp/livekit-* || echo "Warning: Failed to clean some LiveKit temp files"
|
||||
shell: bash
|
||||
|
||||
- name: Check for running containers
|
||||
run: |
|
||||
CONTAINERS=$(docker ps -q)
|
||||
if [ -n "$CONTAINERS" ]; then
|
||||
echo "Warning: Found running containers. Stopping them before prune."
|
||||
docker stop $CONTAINERS || true
|
||||
fi
|
||||
shell: bash
|
||||
|
||||
- name: Clean up Docker resources
|
||||
run: docker system prune -f
|
||||
run: |
|
||||
echo "Pruning Docker system..."
|
||||
docker system prune -f --volumes || echo "Warning: Docker system prune failed"
|
||||
shell: bash
|
||||
|
||||
- name: Kill orphaned processes
|
||||
run: |
|
||||
ps aux | grep -i 'npm\|node\|livekit' | grep -v grep || true
|
||||
ps aux | grep -i 'npm\|node\|livekit' | grep -v grep | awk '{print $2}' | xargs kill -9 || true
|
||||
shell: bash
|
||||
|
||||
- name: Remove OpenVidu Meet directory
|
||||
run: |
|
||||
if [ -d "/__w/openvidu-meet/openvidu-meet" ]; then
|
||||
sudo rm -rf /__w/openvidu-meet/openvidu-meet
|
||||
echo "Checking for orphaned processes..."
|
||||
ORPHANED=$(ps aux | grep -i 'npm\|node\|livekit' | grep -v grep | awk '{print $2}')
|
||||
if [ -n "$ORPHANED" ]; then
|
||||
echo "Killing processes: $ORPHANED"
|
||||
kill -9 $ORPHANED || echo "Warning: Some processes couldn't be killed"
|
||||
else
|
||||
echo "No orphaned processes found"
|
||||
fi
|
||||
shell: bash
|
||||
|
||||
- name: Clean specific directories
|
||||
run: |
|
||||
echo "Cleaning specific directories..."
|
||||
# Don't try to remove the entire working directory
|
||||
# Instead, clean specific subdirectories that might cause permission issues
|
||||
|
||||
if [ -d "openvidu-local-deployment" ]; then
|
||||
sudo rm -rf openvidu-local-deployment || echo "Warning: Failed to remove openvidu-local-deployment"
|
||||
fi
|
||||
|
||||
# Clean build and cache directories
|
||||
find . -type d -name "node_modules" -exec rm -rf {} +
|
||||
find . -type d -name "dist" -exec rm -rf {} +
|
||||
find . -type d -name ".cache" -exec rm -rf {} +
|
||||
shell: bash
|
||||
|
||||
- name: Show system status
|
||||
run: |
|
||||
echo "=== System status after cleanup ==="
|
||||
df -h
|
||||
free -h
|
||||
docker ps -a
|
||||
echo "=== Cleanup completed ==="
|
||||
shell: bash
|
||||
Loading…
x
Reference in New Issue
Block a user