Files
mikrotik-backup/release-manifest.json
T
2026-10-28 14:55:35 +01:00

46 lines
1.8 KiB
JSON

{
"name": "MikroTik Backup System",
"version": "0.0.2",
"distribution": "source",
"prebuilt_binary": false,
"rust_toolchain": "1.99.1",
"rust_edition": "2024",
"build_command": "cargo build --release --locked",
"start_command": "./start.sh",
"import_command": "./import-python.sh SOURCE_DIRECTORY [--database PATH] [--backup-root DIRECTORY]",
"container": {
"builder": "rust:1.99.1-alpine3.24",
"runtime": "alpine:3.24",
"uid_gid": "10001:10001"
},
"data": {
"schema": "src/schema.sql",
"automatic_migrations": true,
"legacy_import": "explicit import-python command into a new destination",
"binary_backups": "storage/backups/binary/<device_id>/",
"text_exports": "storage/backups/exports/<device_id>/",
"schema_version": 2,
"migration_policy": "automatic transactional migration from supported Rust schema v1; Python/TypeScript import remains explicit"
},
"frontend_assets": {
"strategy": "content-hashed filenames generated at build time",
"cache_control": "public, max-age=31536000, immutable",
"favicon": "GET /favicon.ico returns 204 No Content"
},
"api_documentation": {
"url": "/docs",
"openapi_url": "/openapi.json",
"language": "en",
"swagger_ui_version": "5.34.0",
"cdn_required": false
},
"verification": {
"javascript_syntax": "PASS in patch environment",
"javascript_unit_tests": "18/18 PASS",
"rust_compile_tests": "NOT RUN in patch environment because cargo/rustc are unavailable",
"browser_tests": "NOT RUN in patch environment because Playwright is unavailable",
"physical_switchos_device": false,
"docker_runtime": false,
"sqlite_schema_migration": "PASS: schema v1 -> v2 preserves existing settings and matches fresh schema column layout"
}
}