diff --git a/.gitea/workflows/tests.yml b/.gitea/workflows/tests.yml index e69980d..21f4538 100644 --- a/.gitea/workflows/tests.yml +++ b/.gitea/workflows/tests.yml @@ -50,15 +50,22 @@ jobs: # Try to extract runner from job container name if [ -n "${JOB_CONTAINER_NAME}" ]; then echo "Job Container: ${JOB_CONTAINER_NAME}" + # Extract task ID from container name (e.g., GITEA-ACTIONS-TASK-249) + TASK_ID=$(echo "${JOB_CONTAINER_NAME}" | grep -o 'TASK-[0-9]*' || echo "") + if [ -n "${TASK_ID}" ]; then + echo "Task ID: ${TASK_ID}" + fi fi - echo "Detected Runner: $DETECTED_RUNNER" + # Check if we're on a specific Pi by looking at network or other clues + echo "Network interfaces:" + ip addr show | grep -E "inet.*eth|inet.*wlan" | head -3 || echo "No network info available" - # Show system info + echo "Detected Runner: $DETECTED_RUNNER" # Show system info echo "Container ID: $(hostname)" echo "Architecture: $(uname -m)" - - name: Checkout code (manual - more reliable than actions/checkout) + - name: Checkout code # Skip actions/checkout@v4 due to SSL issues with dogar.darkhelm.org # Use manual checkout with multiple fallback methods env: @@ -93,13 +100,57 @@ jobs: echo "✓ Repository checkout completed" + - name: Debug artifact connectivity + run: | + echo "=== Artifact Service Debug ===" + echo "ACTIONS_RUNTIME_URL: ${ACTIONS_RUNTIME_URL}" + echo "ACTIONS_CACHE_URL: ${ACTIONS_CACHE_URL}" + + # Test connectivity to artifact services + echo "Testing artifact service connectivity..." + if [ -n "${ACTIONS_CACHE_URL}" ]; then + echo "Testing cache URL: ${ACTIONS_CACHE_URL}" + curl -v --connect-timeout 5 --max-time 10 "${ACTIONS_CACHE_URL}" 2>&1 || echo "Cache URL test failed" + fi + + if [ -n "${ACTIONS_RUNTIME_URL}" ]; then + echo "Testing runtime URL: ${ACTIONS_RUNTIME_URL}" + curl -v --connect-timeout 5 --max-time 10 "${ACTIONS_RUNTIME_URL}" 2>&1 || echo "Runtime URL test failed" + fi + + - name: Prepare source for upload + run: | + echo "=== Preparing Source Code for Upload ===" + # Show what files we're uploading + echo "Files to be uploaded:" + find . -name "*.yml" -o -name "*.yaml" -o -name "*.json" -o -name "*.md" -o -name "*.py" -o -name "*.toml" -o -name "Dockerfile*" -o -name "compose*.yml" -o -path "./backend/*" -o -path "./frontend/*" -o -path "./scripts/*" | grep -v ".git" | sort + + # Show total size + echo "Total size: $(du -sh . | cut -f1)" + echo "File count: $(find . -type f | wc -l) files" + - name: Upload source code uses: actions/upload-artifact@v3 with: name: source-code path: | - . + backend/ + frontend/ + scripts/ + *.yml + *.yaml + *.json + *.md + *.py + *.toml + Dockerfile* + compose*.yml !.git + !**/node_modules/ + !**/__pycache__/ + !**/.pytest_cache/ + !**/dist/ + !**/build/ retention-days: 1 backend-setup: