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:
parent
7a350ec0e1
commit
c3c8bdd81c
3 changed files with 22 additions and 1 deletions
4
.github/workflows/test.yml
vendored
4
.github/workflows/test.yml
vendored
|
|
@ -131,6 +131,10 @@ jobs:
|
|||
|
||||
container:
|
||||
image: ${{ matrix.os-image }}
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
DEBCONF_NONINTERACTIVE_SEEN: "true"
|
||||
TZ: UTC
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
|
|
|
|||
|
|
@ -65,6 +65,12 @@ if [[ "$OSTYPE" != "linux-gnu"* ]]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
# Detect CI environment and configure non-interactive mode
|
||||
if [[ -n "$CI" ]] || [[ -n "$GITHUB_ACTIONS" ]] || [[ -n "$DEBIAN_FRONTEND" ]]; then
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
export DEBCONF_NONINTERACTIVE_SEEN=true
|
||||
fi
|
||||
|
||||
print_header "Reticulum BLE Interface Installer"
|
||||
echo
|
||||
|
||||
|
|
|
|||
|
|
@ -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..."
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue