mirror of
https://github.com/SwissFederalArchives/lindas-cube-manager.git
synced 2026-08-26 12:44:27 +00:00
Read-only mirror of https://github.com/SwissFederalArchives/lindas-cube-manager — Schweizerisches Bundesarchiv. Issues & pull requests at the source.
- JavaScript 74.3%
- HTML 13.9%
- CSS 9.8%
- PowerShell 0.8%
- Shell 0.7%
- Other 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
The Kubernetes deployment probes use /api/health for readiness and liveness checks. The Dockerfile HEALTHCHECK was still using the root path /, causing inconsistent health reporting between Docker and Kubernetes environments. |
||
| .github/workflows | ||
| docs | ||
| queries | ||
| web-app | ||
| .dockerignore | ||
| .gitignore | ||
| changelog.md | ||
| docker-compose.yml | ||
| Dockerfile | ||
| README.md | ||
LINDAS Cube Manager
A web application for cleaning up old cube versions in a LINDAS-compatible RDF triplestore. It identifies cube versions older than the N most recent per base cube, backs them up, and deletes them.
Features
- Interactive deletion wizard (select graph → preview → backup → delete → summary)
- Chunked SPARQL DELETE to handle large cube versions without proxy timeouts
- ZIP backup with selective restore per cube
- Orphan SHACL shape detection and cleanup
- Supports Apache Fuseki, Stardog, and GraphDB
Quick Start
cd web-app
npm install
ENABLE_DESTRUCTIVE_API=true node server.js
Open http://localhost:3001.
Docker
docker-compose up -d
The destructive API is disabled by default. Uncomment ENABLE_DESTRUCTIVE_API=true in docker-compose.yml to enable deletions.
Environment Variables
| Variable | Default | Description |
|---|---|---|
PORT |
3001 |
Web server port |
ENABLE_DESTRUCTIVE_API |
false |
Must be true to run deletions |
API_AUTH_TOKEN |
(none) | Optional bearer token for destructive endpoints |
Infrastructure Note
When running against Stardog behind a reverse proxy, set the proxy read timeout to at least 300 seconds for SPARQL UPDATE endpoints. The default 30-second timeout causes failures on large cube versions.
Documentation
See docs/DOCUMENTATION.md for full reference.