What's New
- ARM64 Support: Added full support for ARM64 architectures (e.g., Raspberry Pi) with architecture-aware browser automation and Docker builds.
- Browser Automation:
browser.py now detects ARM64 (aarch64) and uses /usr/bin/chromium-browser and /usr/bin/chromedriver for Selenium on ARM hosts.
- Extended
get_latest_chrome_driver() to handle linux-arm64 downloads where available, with fallback to system paths.
- Preserves existing x86_64 and Docker behavior using Chrome for Testing.
- Docker Enhancements:
- Updated Dockerfile to install
chromium and chromium-driver from Debian Bullseye repositories for ARM64, with symlinks to /usr/bin/google-chrome and /usr/local/bin/chromedriver.
- x86_64 continues to use Chrome for Testing downloads.
- Multi-arch builds (
linux/amd64,linux/arm64) enabled in GitHub Actions workflow.
- Stability:
- Conditional fallback to
ChromeDriverManager for non-ARM setups ensures no regression.
- Improved logging for architecture detection and browser initialization.
Installation
Docker
docker compose pull
docker compose up -d