Includes: - Backend services: ingestion (:8001), weather API (:8002), gateway (:8003), billing (:8004) with BTCPay integration - Shared asyncpg pool, TimescaleDB hypertable, Redis, Mosquitto MQTT - React frontend: Dashboard (MapLibre) and Messaging (chat UI) - Bridge daemon for Pi + Meshtastic (Serial/TCP T-Deck support) - Production Docker Compose, Nginx reverse proxy, ops scripts - DEPLOY.md with step-by-step deployment guide
64 lines
1.6 KiB
YAML
64 lines
1.6 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
|
|
jobs:
|
|
# Placeholder CI jobs to be expanded as components are implemented
|
|
lint-docs:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Lint Markdown
|
|
uses: DavidAnson/markdownlint-cli2-action@v14
|
|
with:
|
|
globs: '**/*.md'
|
|
continue-on-error: true
|
|
|
|
build-firmware:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.11'
|
|
- name: Install PlatformIO
|
|
run: pip install platformio
|
|
- name: Build enviro-node firmware
|
|
run: |
|
|
echo "Firmware build not yet implemented"
|
|
# cd firmware/enviro-node && pio run
|
|
continue-on-error: true
|
|
|
|
test-backend:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.11'
|
|
- name: Install dependencies
|
|
run: |
|
|
echo "Backend tests not yet implemented"
|
|
# pip install -r backend/api/requirements-dev.txt
|
|
continue-on-error: true
|
|
|
|
test-web:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Set up Node
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '20'
|
|
- name: Install dependencies
|
|
run: |
|
|
echo "Web tests not yet implemented"
|
|
# cd web/dashboard && npm ci && npm run lint
|
|
continue-on-error: true
|