113 lines
4.2 KiB
JSON
Executable File
113 lines
4.2 KiB
JSON
Executable File
{
|
|
|
|
"version": 2,
|
|
|
|
"dashboard": {
|
|
|
|
"title": "Home Server Control",
|
|
|
|
"tagline": "Local console and build deck"
|
|
|
|
},
|
|
|
|
"integrations": {
|
|
|
|
"authoring": { "pollMs": 5000, "path": "/api/zone/status" },
|
|
|
|
"watcher": { "pollMs": 10000, "path": "/api/zone/status" },
|
|
|
|
"timesheet": { "pollMs": 60000, "path": "/api/zone/status" },
|
|
|
|
"scripts": { "pollMs": 120000, "path": "/api/zone/status" },
|
|
|
|
"builds": { "pollMs": 15000, "path": "/api/zone/status" }
|
|
|
|
},
|
|
|
|
"widgets": [
|
|
|
|
{
|
|
|
|
"id": "authoring-queue",
|
|
|
|
"type": "queue",
|
|
|
|
"title": "Authoring builds",
|
|
|
|
"integration": "authoring"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "authoring-detail",
|
|
|
|
"type": "authoringDetail",
|
|
|
|
"title": "Authoring detail",
|
|
|
|
"integration": "authoring"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "watcher",
|
|
|
|
"type": "badge",
|
|
|
|
"title": "Lima watcher",
|
|
|
|
"integration": "watcher"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "timesheet-summary",
|
|
|
|
"type": "timesheet",
|
|
|
|
"title": "Hours this week",
|
|
|
|
"integration": "timesheet"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "scripts-health",
|
|
|
|
"type": "log",
|
|
|
|
"title": "Script logs",
|
|
|
|
"integration": "scripts",
|
|
|
|
"logKey": "orgWebBuild"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "calibre-sync",
|
|
|
|
"type": "log",
|
|
|
|
"title": "Calibre export",
|
|
|
|
"integration": "scripts",
|
|
|
|
"logKey": "calibreSync"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "org-web-build",
|
|
|
|
"type": "buildStatus",
|
|
|
|
"title": "Website build",
|
|
|
|
"integration": "builds",
|
|
|
|
"lastRunKey": "org_web"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"links": [
|
|
|
|
{ "id": "timesheet", "label": "Timesheet", "href": "/time-tracking/", "group": "platform" },
|
|
|
|
{ "id": "website", "label": "Website", "href": "https://zainezq.com", "group": "platform", "external": true },
|
|
|
|
{ "id": "author", "label": "Author", "href": "https://author.zainezq.com", "group": "platform", "external": true },
|
|
|
|
{ "id": "files", "label": "Files", "href": "https://filebrowser.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "library", "label": "Library", "href": "https://calibre.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "news", "label": "News", "href": "https://miniflux.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "rdp", "label": "RDP", "href": "https://guac.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "portainer", "label": "Portainer", "href": "https://portainer.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "nextcloud", "label": "Nextcloud", "href": "https://nextcloud.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "pgadmin", "label": "Databases", "href": "https://pgadmin.zainezq.com", "group": "infra", "external": true },
|
|
|
|
{ "id": "gitea", "label": "Gitea", "href": "https://gitea.zainezq.com", "group": "infra", "external": true }
|
|
|
|
],
|
|
|
|
"builds": [
|
|
|
|
{
|
|
|
|
"id": "org_web",
|
|
|
|
"label": "Website Build",
|
|
|
|
"badge": "Web",
|
|
|
|
"confirmTitle": "Update Website",
|
|
|
|
"confirmBody": "This will rebuild and deploy the website. Continue?",
|
|
|
|
"runLabel": "Run website build",
|
|
|
|
"start": { "method": "POST", "path": "/api/build-web" },
|
|
|
|
"cancel": { "method": "DELETE", "path": "/api/build-web" },
|
|
|
|
"status": { "path": "/api/build-web/status" },
|
|
|
|
"logs": { "path": "/api/build-web/logs" },
|
|
|
|
"statusDotId": "webDot",
|
|
|
|
"statusTextId": "webStatus",
|
|
|
|
"lastRunKey": "org_web"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"id": "emacs",
|
|
|
|
"label": "Emacs",
|
|
|
|
"badge": "Emacs",
|
|
|
|
"confirmTitle": "Rerun Emacs",
|
|
|
|
"confirmBody": "This will rerun Emacs. Continue?",
|
|
|
|
"runLabel": "Rerun Emacs",
|
|
|
|
"start": { "method": "POST", "path": "/api/rerun-emacs" },
|
|
|
|
"cancel": { "method": "DELETE", "path": "/api/rerun-emacs" },
|
|
|
|
"status": { "path": "/api/rerun-emacs/status" },
|
|
|
|
"logs": { "path": "/api/rerun-emacs/logs" },
|
|
|
|
"statusDotId": "emacsDot",
|
|
|
|
"statusTextId": "emacsStatus",
|
|
|
|
"lastRunKey": "emacs",
|
|
|
|
"successExitCodes": [0, 124]
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"status": {
|
|
|
|
"health": "/api/health",
|
|
|
|
"uptime": "/api/uptime",
|
|
|
|
"lastRuns": "/api/last-runs"
|
|
|
|
}
|
|
|
|
}
|
|
|