Full project scaffold: multi-stage Dockerfile (ARM64/AMD64), AsciiDoc↔TipTap bridge, Setup Wizard, CodeMirror source editor, Git-backed storage layer, LDAP+JWT auth skeleton, Tailwind mobile-first layout, and VS Code build/push tasks targeting registry at 192.168.0.19:5000. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
158 lines
5.7 KiB
JSON
158 lines
5.7 KiB
JSON
{
|
|
"version": "2.0.0",
|
|
"tasks": [
|
|
|
|
// ── Docker: Build ──────────────────────────────────────────────────────────
|
|
{
|
|
"label": "Docker: Build (Windows)",
|
|
"type": "shell",
|
|
"windows": {
|
|
"command": "docker build -t 192.168.0.19:5000/archivum:latest -f docker/Dockerfile ."
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
{
|
|
"label": "Docker: Build (Linux)",
|
|
"type": "shell",
|
|
"linux": {
|
|
"command": "docker build -t 192.168.0.19:5000/archivum:latest -f docker/Dockerfile ."
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
|
|
// ── Docker: Push ───────────────────────────────────────────────────────────
|
|
{
|
|
"label": "Docker: Push (Windows)",
|
|
"type": "shell",
|
|
"windows": {
|
|
"command": "docker push 192.168.0.19:5000/archivum:latest"
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
{
|
|
"label": "Docker: Push (Linux)",
|
|
"type": "shell",
|
|
"linux": {
|
|
"command": "docker push 192.168.0.19:5000/archivum:latest"
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
|
|
// ── Docker: Build & Push ───────────────────────────────────────────────────
|
|
{
|
|
"label": "Docker: Build & Push (Windows)",
|
|
"dependsOrder": "sequence",
|
|
"dependsOn": ["Docker: Build (Windows)", "Docker: Push (Windows)"],
|
|
"group": { "kind": "build", "isDefault": true },
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
{
|
|
"label": "Docker: Build & Push (Linux)",
|
|
"dependsOrder": "sequence",
|
|
"dependsOn": ["Docker: Build (Linux)", "Docker: Push (Linux)"],
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
|
|
// ── Docker: Multi-arch Build & Push (buildx) ───────────────────────────────
|
|
{
|
|
"label": "Docker: Multi-arch Build & Push (Windows)",
|
|
"type": "shell",
|
|
"windows": {
|
|
"command": "docker buildx build --platform linux/amd64,linux/arm64 -t 192.168.0.19:5000/archivum:latest -f docker/Dockerfile --push ."
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
{
|
|
"label": "Docker: Multi-arch Build & Push (Linux)",
|
|
"type": "shell",
|
|
"linux": {
|
|
"command": "docker buildx build --platform linux/amd64,linux/arm64 -t 192.168.0.19:5000/archivum:latest -f docker/Dockerfile --push ."
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": []
|
|
},
|
|
|
|
// ── Backend: Run ───────────────────────────────────────────────────────────
|
|
{
|
|
"label": "Backend: Run",
|
|
"type": "shell",
|
|
"windows": {
|
|
"command": "go run .\\cmd\\server",
|
|
"options": { "cwd": "${workspaceFolder}\\backend" }
|
|
},
|
|
"linux": {
|
|
"command": "go run ./cmd/server",
|
|
"options": { "cwd": "${workspaceFolder}/backend" }
|
|
},
|
|
"group": "test",
|
|
"isBackground": true,
|
|
"presentation": { "reveal": "always", "panel": "dedicated" },
|
|
"problemMatcher": {
|
|
"pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(.*)", "file": 1, "line": 2, "column": 3, "message": 4 },
|
|
"background": {
|
|
"activeOnStart": true,
|
|
"beginsPattern": "^Archivum listening",
|
|
"endsPattern": "^Archivum listening"
|
|
}
|
|
}
|
|
},
|
|
|
|
// ── Frontend: Dev ──────────────────────────────────────────────────────────
|
|
{
|
|
"label": "Frontend: Dev",
|
|
"type": "shell",
|
|
"windows": {
|
|
"command": "npm run dev",
|
|
"options": { "cwd": "${workspaceFolder}\\frontend" }
|
|
},
|
|
"linux": {
|
|
"command": "npm run dev",
|
|
"options": { "cwd": "${workspaceFolder}/frontend" }
|
|
},
|
|
"group": "test",
|
|
"isBackground": true,
|
|
"presentation": { "reveal": "always", "panel": "dedicated" },
|
|
"problemMatcher": {
|
|
"pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(.*)", "file": 1, "line": 2, "column": 3, "message": 4 },
|
|
"background": {
|
|
"activeOnStart": true,
|
|
"beginsPattern": "VITE",
|
|
"endsPattern": "Local:"
|
|
}
|
|
}
|
|
},
|
|
|
|
// ── Frontend: Build ────────────────────────────────────────────────────────
|
|
{
|
|
"label": "Frontend: Build",
|
|
"type": "shell",
|
|
"windows": {
|
|
"command": "npm run build",
|
|
"options": { "cwd": "${workspaceFolder}\\frontend" }
|
|
},
|
|
"linux": {
|
|
"command": "npm run build",
|
|
"options": { "cwd": "${workspaceFolder}/frontend" }
|
|
},
|
|
"group": "build",
|
|
"presentation": { "reveal": "always", "panel": "shared" },
|
|
"problemMatcher": ["$tsc"]
|
|
}
|
|
|
|
]
|
|
}
|