fix: configure non-interactive mode for CI apt-get installs

Ubuntu 24.04 CI was hanging on tzdata interactive timezone prompt.

Changes:
- tests/test_installer.sh: Set DEBIAN_FRONTEND=noninteractive, pre-configure timezone
- tests/test_installer.sh: Add apt-get options to suppress prompts
- .github/workflows/test.yml: Set environment variables in installer-test container
- install.sh: Auto-detect CI environment and enable non-interactive mode

This follows Debian/Ubuntu best practices for containerized environments and
prevents interactive prompts from blocking CI runs.

Fixes Ubuntu 24.04 installer-test CI failure.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
torlando-tech 2025-10-28 20:05:59 -04:00
commit c3c8bdd81c
3 changed files with 22 additions and 1 deletions

View file

@ -4,6 +4,14 @@
set -e
# Configure non-interactive mode for CI/container environments
export DEBIAN_FRONTEND=noninteractive
export DEBCONF_NONINTERACTIVE_SEEN=true
export TZ=UTC
# Pre-configure timezone to prevent interactive prompts
ln -fs /usr/share/zoneinfo/UTC /etc/localtime
echo "=== Testing install.sh on fresh system ==="
echo "OS: $(cat /etc/os-release | grep PRETTY_NAME | cut -d= -f2 | tr -d '"')"
echo ""
@ -11,7 +19,10 @@ echo ""
# Step 1: Install prerequisites (what a user would have)
echo "Step 1: Installing base prerequisites..."
apt-get update -qq
apt-get install -y sudo python3 python3-pip git
apt-get install -y -q \
-o DPkg::Pre-Install-Pkgs::=/bin/true \
-o DPkg::Post-Install-Pkgs::=/bin/true \
sudo python3 python3-pip git
# Install Reticulum (prerequisite for BLE interface)
echo "Installing Reticulum..."