Fix shellcheck warnings across all scripts

Quote all variable expansions in setup-bridge.sh, teardown-bridge.sh,
and install.sh. Fix redirect order and unused variable in test-suite.sh.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-07 14:56:17 +00:00
parent 129fd4d869
commit 4b01dfb51d
4 changed files with 20 additions and 20 deletions

View File

@@ -61,9 +61,9 @@ if ! command -v firecracker &>/dev/null; then
curl -fSL -o /tmp/firecracker.tgz \ curl -fSL -o /tmp/firecracker.tgz \
"https://github.com/firecracker-microvm/firecracker/releases/download/${FC_VERSION}/firecracker-${FC_VERSION}-${ARCH}.tgz" "https://github.com/firecracker-microvm/firecracker/releases/download/${FC_VERSION}/firecracker-${FC_VERSION}-${ARCH}.tgz"
tar xzf /tmp/firecracker.tgz -C /tmp tar xzf /tmp/firecracker.tgz -C /tmp
sudo cp /tmp/release-${FC_VERSION}-${ARCH}/firecracker-${FC_VERSION}-${ARCH} /usr/local/bin/firecracker sudo cp "/tmp/release-${FC_VERSION}-${ARCH}/firecracker-${FC_VERSION}-${ARCH}" /usr/local/bin/firecracker
sudo cp /tmp/release-${FC_VERSION}-${ARCH}/jailer-${FC_VERSION}-${ARCH} /usr/local/bin/jailer sudo cp "/tmp/release-${FC_VERSION}-${ARCH}/jailer-${FC_VERSION}-${ARCH}" /usr/local/bin/jailer
rm -rf /tmp/firecracker.tgz /tmp/release-${FC_VERSION}-${ARCH} rm -rf /tmp/firecracker.tgz "/tmp/release-${FC_VERSION}-${ARCH}"
log "Firecracker $(firecracker --version 2>&1 | head -1) installed" log "Firecracker $(firecracker --version 2>&1 | head -1) installed"
else else
log "Firecracker already installed: $(firecracker --version 2>&1 | head -1)" log "Firecracker already installed: $(firecracker --version 2>&1 | head -1)"

View File

@@ -10,21 +10,21 @@ SUBNET="172.16.0.0/24"
EXT_IFACE=$(ip route show default | awk '{print $5; exit}') EXT_IFACE=$(ip route show default | awk '{print $5; exit}')
echo "Creating bridge ${BRIDGE}..." echo "Creating bridge ${BRIDGE}..."
ip link add ${BRIDGE} type bridge 2>/dev/null || echo "Bridge already exists" ip link add "${BRIDGE}" type bridge 2>/dev/null || echo "Bridge already exists"
ip addr add ${BRIDGE_IP} dev ${BRIDGE} 2>/dev/null || echo "Address already set" ip addr add "${BRIDGE_IP}" dev "${BRIDGE}" 2>/dev/null || echo "Address already set"
ip link set ${BRIDGE} up ip link set "${BRIDGE}" up
echo "Enabling IP forwarding..." echo "Enabling IP forwarding..."
sysctl -w net.ipv4.ip_forward=1 sysctl -w net.ipv4.ip_forward=1
echo "Setting up NAT via ${EXT_IFACE}..." echo "Setting up NAT via ${EXT_IFACE}..."
iptables -t nat -C POSTROUTING -s ${SUBNET} -o ${EXT_IFACE} -j MASQUERADE 2>/dev/null || \ iptables -t nat -C POSTROUTING -s "${SUBNET}" -o "${EXT_IFACE}" -j MASQUERADE 2>/dev/null || \
iptables -t nat -A POSTROUTING -s ${SUBNET} -o ${EXT_IFACE} -j MASQUERADE iptables -t nat -A POSTROUTING -s "${SUBNET}" -o "${EXT_IFACE}" -j MASQUERADE
iptables -C FORWARD -i ${BRIDGE} -o ${EXT_IFACE} -j ACCEPT 2>/dev/null || \ iptables -C FORWARD -i "${BRIDGE}" -o "${EXT_IFACE}" -j ACCEPT 2>/dev/null || \
iptables -A FORWARD -i ${BRIDGE} -o ${EXT_IFACE} -j ACCEPT iptables -A FORWARD -i "${BRIDGE}" -o "${EXT_IFACE}" -j ACCEPT
iptables -C FORWARD -i ${EXT_IFACE} -o ${BRIDGE} -m state --state RELATED,ESTABLISHED -j ACCEPT 2>/dev/null || \ iptables -C FORWARD -i "${EXT_IFACE}" -o "${BRIDGE}" -m state --state RELATED,ESTABLISHED -j ACCEPT 2>/dev/null || \
iptables -A FORWARD -i ${EXT_IFACE} -o ${BRIDGE} -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i "${EXT_IFACE}" -o "${BRIDGE}" -m state --state RELATED,ESTABLISHED -j ACCEPT
echo "Done. Bridge ${BRIDGE} ready." echo "Done. Bridge ${BRIDGE} ready."

View File

@@ -9,12 +9,12 @@ SUBNET="172.16.0.0/24"
EXT_IFACE=$(ip route show default | awk '{print $5; exit}') EXT_IFACE=$(ip route show default | awk '{print $5; exit}')
echo "Removing NAT rules..." echo "Removing NAT rules..."
iptables -t nat -D POSTROUTING -s ${SUBNET} -o ${EXT_IFACE} -j MASQUERADE 2>/dev/null || true iptables -t nat -D POSTROUTING -s "${SUBNET}" -o "${EXT_IFACE}" -j MASQUERADE 2>/dev/null || true
iptables -D FORWARD -i ${BRIDGE} -o ${EXT_IFACE} -j ACCEPT 2>/dev/null || true iptables -D FORWARD -i "${BRIDGE}" -o "${EXT_IFACE}" -j ACCEPT 2>/dev/null || true
iptables -D FORWARD -i ${EXT_IFACE} -o ${BRIDGE} -m state --state RELATED,ESTABLISHED -j ACCEPT 2>/dev/null || true iptables -D FORWARD -i "${EXT_IFACE}" -o "${BRIDGE}" -m state --state RELATED,ESTABLISHED -j ACCEPT 2>/dev/null || true
echo "Removing bridge ${BRIDGE}..." echo "Removing bridge ${BRIDGE}..."
ip link set ${BRIDGE} down 2>/dev/null || true ip link set "${BRIDGE}" down 2>/dev/null || true
ip link del ${BRIDGE} 2>/dev/null || true ip link del "${BRIDGE}" 2>/dev/null || true
echo "Done." echo "Done."

View File

@@ -258,7 +258,7 @@ if [ -n "$OVERSEER_PID" ] && [ "$OVERSEER_PID" != "0" ]; then
} | nc -q 2 127.0.0.1 6667 2>&1) } | nc -q 2 127.0.0.1 6667 2>&1)
assert_contains "$OUT" "worker" "overseer adopted worker after crash" assert_contains "$OUT" "worker" "overseer adopted worker after crash"
# Cleanup # Cleanup
OUT2=$({ {
echo -e "NICK fcrecov2\r\nUSER fcrecov2 0 * :t\r\n" echo -e "NICK fcrecov2\r\nUSER fcrecov2 0 * :t\r\n"
sleep 2 sleep 2
echo -e "JOIN #agents\r\n" echo -e "JOIN #agents\r\n"
@@ -266,7 +266,7 @@ if [ -n "$OVERSEER_PID" ] && [ "$OVERSEER_PID" != "0" ]; then
echo -e "PRIVMSG #agents :!destroy worker\r\n" echo -e "PRIVMSG #agents :!destroy worker\r\n"
sleep 5 sleep 5
echo -e "QUIT\r\n" echo -e "QUIT\r\n"
} | nc -q 2 127.0.0.1 6667 2>&1) } | nc -q 2 127.0.0.1 6667 2>&1
else else
echo " SKIP: overseer not running via systemd, skipping crash test" && ((SKIP++)) echo " SKIP: overseer not running via systemd, skipping crash test" && ((SKIP++))
((SKIP++)) ((SKIP++))
@@ -288,7 +288,7 @@ echo "--- Test 20: Graceful agent shutdown (IRC QUIT) ---"
echo -e "PRIVMSG #agents :!destroy worker\r\n" echo -e "PRIVMSG #agents :!destroy worker\r\n"
sleep 5 sleep 5
echo -e "QUIT\r\n" echo -e "QUIT\r\n"
} | nc -q 2 127.0.0.1 6667 2>&1 > /tmp/fc-quit-test.txt } | nc -q 2 127.0.0.1 6667 > /tmp/fc-quit-test.txt 2>&1
if grep -q "QUIT.*shutting down" /tmp/fc-quit-test.txt; then if grep -q "QUIT.*shutting down" /tmp/fc-quit-test.txt; then
echo " PASS: agent sent IRC QUIT on destroy" && ((PASS++)) echo " PASS: agent sent IRC QUIT on destroy" && ((PASS++))
else else