name: "Vacuum Integration Tests" on: push: branches: [ master ] pull_request: branches: [ master ] permissions: contents: read jobs: vacuum-integration-tests: name: Vacuum Integration Tests runs-on: ubuntu-22.04 timeout-minutes: 15 steps: - name: Set up Go 1.x uses: actions/setup-go@v6 with: go-version: ^1.25 id: go - name: Check out code into the Go module directory uses: actions/checkout@v6 - name: Build weed binary run: | cd weed && go build -o weed . - name: Run Vacuum Integration Tests working-directory: test/vacuum run: | go test -v -timeout 10m - name: Collect server logs on failure if: failure() run: | echo "Collecting server logs from temp directories..." mkdir -p /tmp/vacuum-test-logs find /tmp -maxdepth 1 -type d -name "TestVacuum*" 2>/dev/null | while read dir; do if [ -d "$dir" ]; then echo "Found test directory: $dir" cp -r "$dir" /tmp/vacuum-test-logs/ 2>/dev/null || true fi done echo "Collected logs:" find /tmp/vacuum-test-logs -type f -name "*.log" 2>/dev/null || echo "No logs found" - name: Archive logs if: failure() uses: actions/upload-artifact@v7 with: name: vacuum-integration-test-logs path: /tmp/vacuum-test-logs/ retention-days: 14