- Add service/label/apiBase to service-helpers.js whitelist for deploy type
(these keys were being stripped, causing deploy widget to show nothing)
- Add trailing slashes to gsb/semblance/cc-dashboard siteMonitor URLs
to prevent 301 redirect to http:// which was causing red dots
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Create src/widgets/deploy/component.jsx — service-card widget variant
that receives { service } prop (not { options }) for use in services.yaml
- Register deploy in src/widgets/components.js
- Move deploy widgets from config/widgets.yaml into each service card
via widget: type: deploy — buttons now live inline under each app
- Fix Deploy API siteMonitor URL to use Apache-proxied path
- Reduce Widgets layout columns to 2 (only resources + datetime remain)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- zinc color, fullWidth, useEqualHeights, cardBlur md, statusStyle dot
- siteMonitor (HTTP + response time) instead of ping for all web services
- showStats: true — live CPU/RAM per Docker container on each card
- Add DB/cache info cards to Infrastructure section
- Clean up bookmarks, add OliVAS repo
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- components/widgets/deploy/deploy.jsx: new widget with deploy button,
status polling (2s when running, 10s idle), last deploy time display
- widget.jsx: register 'deploy' widget type
- config/widgets.yaml: add deploy buttons for all 6 server services
Deploy API runs as systemd service on host :9000, proxied via Apache
at /deploy-api/. Widget polls GET /status/{service} and triggers
POST /deploy/{service} on button click.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
API path fixes:
- _app.jsx: SWR middleware prefixes all useSWR keys with NEXT_PUBLIC_BASE_PATH
- index.jsx: update fallback keys, raw fetch() calls, and Script src
- _document.jsx: update custom.css link hrefs
- revalidate.jsx, search.jsx, api-helpers.js: update raw fetch/proxy calls
Initial dashboard config (force-added, config/ is gitignored by default):
- settings.yaml: dark slate theme, English, two-row layout
- services.yaml: all 5 server apps with Docker container health links
- widgets.yaml: CPU/RAM/disk resources widget + datetime
- docker.yaml: local Docker socket for auto-discovery
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>