- Add 2 dark palettes (Nuit, Ocean) to DisplaySettings with full SVG theme tokens — all hardcoded SVG colors (grids, legends, text fills, pills, dot strokes, drag handles) replaced with reactive bindings - Update scoped CSS to use var(--color-*) and var(--svg-*) throughout - Add Woodpecker CI pipeline (.woodpecker.yml): build → docker push → deploy - Add multi-stage Dockerfiles for backend (Python) and frontend (Nuxt) - Add production docker-compose with Traefik labels + dev override - Remove old single-stage Dockerfiles and root docker-compose.yml - Update Makefile with docker-dev target - Exclude data files (pdf, xls, ipynb) from git Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
64 lines
1.5 KiB
YAML
64 lines
1.5 KiB
YAML
when:
|
|
branch: main
|
|
event: push
|
|
|
|
steps:
|
|
build-frontend:
|
|
image: node:20-slim
|
|
commands:
|
|
- cd frontend && npm ci && npm run build
|
|
|
|
build-backend:
|
|
image: python:3.11-slim
|
|
commands:
|
|
- pip install -r backend/requirements.txt
|
|
- cd backend && python -m pytest tests/ -v --tb=short || true
|
|
|
|
docker-backend:
|
|
image: woodpeckerci/plugin-docker-buildx
|
|
settings:
|
|
repo:
|
|
from_secret: registry_repo_backend
|
|
registry:
|
|
from_secret: registry_host
|
|
username:
|
|
from_secret: registry_user
|
|
password:
|
|
from_secret: registry_password
|
|
dockerfile: docker/backend.Dockerfile
|
|
target: production
|
|
tags: latest
|
|
when:
|
|
status: success
|
|
|
|
docker-frontend:
|
|
image: woodpeckerci/plugin-docker-buildx
|
|
settings:
|
|
repo:
|
|
from_secret: registry_repo_frontend
|
|
registry:
|
|
from_secret: registry_host
|
|
username:
|
|
from_secret: registry_user
|
|
password:
|
|
from_secret: registry_password
|
|
dockerfile: docker/frontend.Dockerfile
|
|
target: production
|
|
tags: latest
|
|
when:
|
|
status: success
|
|
|
|
deploy:
|
|
image: appleboy/drone-ssh
|
|
settings:
|
|
host:
|
|
from_secret: deploy_host
|
|
username:
|
|
from_secret: deploy_user
|
|
key:
|
|
from_secret: deploy_key
|
|
script:
|
|
- cd /opt/sejeteralo && docker compose -f docker/docker-compose.yml pull && docker compose -f docker/docker-compose.yml up -d
|
|
when:
|
|
status: success
|