Organizes 11 projects for Cerbo GX/Venus OS into a single repository: - axiom-nmea: Raymarine LightHouse protocol decoder - dbus-generator-ramp: Generator current ramp controller - dbus-lightning: Blitzortung lightning monitor - dbus-meteoblue-forecast: Meteoblue weather forecast - dbus-no-foreign-land: noforeignland.com tracking - dbus-tides: Tide prediction from depth + harmonics - dbus-vrm-history: VRM cloud history proxy - dbus-windy-station: Windy.com weather upload - mfd-custom-app: MFD app deployment package - venus-html5-app: Custom Victron HTML5 app fork - watermaker: Watermaker PLC control UI Adds root README, .gitignore, project template, and per-project .gitignore files. Sensitive config files excluded via .gitignore with .example templates provided. Made-with: Cursor
48 lines
1.1 KiB
Docker
48 lines
1.1 KiB
Docker
# Dockerfile for Generator Current Ramp Controller Development
|
|
#
|
|
# This provides a development environment with D-Bus support for testing.
|
|
# Note: Full integration testing requires a real Venus OS device.
|
|
#
|
|
# Usage:
|
|
# docker-compose build
|
|
# docker-compose run --rm dev python -m pytest tests/
|
|
# docker-compose run --rm dev python overload_detector.py # Run unit tests
|
|
#
|
|
|
|
FROM python:3.11-slim
|
|
|
|
# Install system dependencies
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
dbus \
|
|
libdbus-1-dev \
|
|
libdbus-glib-1-dev \
|
|
libgirepository1.0-dev \
|
|
gcc \
|
|
pkg-config \
|
|
python3-gi \
|
|
python3-gi-cairo \
|
|
gir1.2-glib-2.0 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Install Python dependencies
|
|
RUN pip install --no-cache-dir \
|
|
dbus-python \
|
|
PyGObject \
|
|
numpy \
|
|
pytest
|
|
|
|
# Create working directory
|
|
WORKDIR /app
|
|
|
|
# Copy application code
|
|
COPY . /app/
|
|
|
|
# Create ext directory for velib_python (will be mounted or mocked)
|
|
RUN mkdir -p /app/ext/velib_python
|
|
|
|
# Set Python path
|
|
ENV PYTHONPATH="/app:/app/ext/velib_python"
|
|
|
|
# Default command: run tests
|
|
CMD ["python", "-m", "pytest", "-v"]
|