fedora-csb-system-manager
1#!/usr/bin/env bash
2# test-all-packages.sh - Test all custom packages
3#
4# Usage: ./test-all-packages.sh
5
6set -e
7
8# Get script directory
9SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
10
11# List of all packages to test
12PACKAGES=(
13 # Go packages
14 "ape"
15 "batzconverter"
16 "govanityurl"
17 "manifest-tool"
18 "ram"
19 "claude-hooks"
20 "arr"
21 "download-kiwix-zim"
22 "gh-restart-failed"
23
24 # Shell script packages
25 "scripts"
26 "vrsync"
27 "vde-thinkpad"
28
29 # System packages
30 "systemd-email"
31 "battery-monitor"
32
33 # Other packages
34 "homepage"
35 "bookmark-plus"
36)
37
38PASSED=0
39FAILED=0
40FAILED_PACKAGES=()
41
42echo "=========================================="
43echo "Testing ${#PACKAGES[@]} packages"
44echo "=========================================="
45echo ""
46
47for PKG in "${PACKAGES[@]}"; do
48 echo "[$((PASSED + FAILED + 1))/${#PACKAGES[@]}] Testing: $PKG"
49 if "$SCRIPT_DIR/test-package.sh" "$PKG" > "/tmp/test-$PKG.log" 2>&1; then
50 echo " ✓ PASSED"
51 PASSED=$((PASSED + 1))
52 else
53 echo " ✗ FAILED (see /tmp/test-$PKG.log)"
54 FAILED=$((FAILED + 1))
55 FAILED_PACKAGES+=("$PKG")
56 fi
57 echo ""
58done
59
60echo "=========================================="
61echo "Test Summary"
62echo "=========================================="
63echo "Passed: $PASSED"
64echo "Failed: $FAILED"
65
66if [ $FAILED -gt 0 ]; then
67 echo ""
68 echo "Failed packages:"
69 for PKG in "${FAILED_PACKAGES[@]}"; do
70 echo " - $PKG (log: /tmp/test-$PKG.log)"
71 done
72 exit 1
73fi
74
75echo ""
76echo "All packages passed!"