diff --git a/packages/core/src/apps/catalog.json b/packages/core/src/apps/catalog.json index f71348b63..41d182eff 100644 --- a/packages/core/src/apps/catalog.json +++ b/packages/core/src/apps/catalog.json @@ -1267,7 +1267,8 @@ ] }, { - "available": false, + "available": true, + "verified": true, "id": "uptime-kuma", "name": "Uptime Kuma", "description": "Self-hosted uptime monitoring with status pages and alerts.", @@ -1283,7 +1284,7 @@ "services": [ { "name": "uptime-kuma", - "image": "louislam/uptime-kuma:1", + "image": "louislam/uptime-kuma:2", "ports": [ "3001:3001" ], @@ -1294,7 +1295,21 @@ ], "restart": "unless-stopped" } - ] + ], + "connection": { + "title": "Open Uptime Kuma", + "outputs": [ + { + "id": "url", + "label": "URL", + "source": "publicUrl:uptime-kuma", + "kind": "url" + } + ], + "firstLogin": { + "note": "First run asks you to pick a database. Choose \"embedded\": this template only provisions Uptime Kuma's own SQLite volume, not an external MariaDB. Then create the admin user. There is no default account." + } + } }, { "available": false, diff --git a/packages/core/src/apps/catalog.test.ts b/packages/core/src/apps/catalog.test.ts index b01e34210..ec5a5f70e 100644 --- a/packages/core/src/apps/catalog.test.ts +++ b/packages/core/src/apps/catalog.test.ts @@ -25,6 +25,13 @@ describe("app catalog (JSON)", () => { expect(isValidAppTemplate(null)).toBe(false); expect(isValidAppTemplate({ id: "x", name: "X", description: "d", kind: "template", logo: "x", category: "bogus" })).toBe(false); }); + + it("uptime-kuma is enabled on the current major image", () => { + const app = APP_TEMPLATES.find((a) => a.id === "uptime-kuma"); + expect(app?.available).toBe(true); + expect(app?.services?.[0]?.image).toBe("louislam/uptime-kuma:2"); + expect(app?.connection?.outputs.some((o) => o.source === "publicUrl:uptime-kuma")).toBe(true); + }); }); // A minimal valid template used to probe the stricter, version-aware gate. diff --git a/packages/core/src/apps/catalog/uptime-kuma.json b/packages/core/src/apps/catalog/uptime-kuma.json index 2f29fa9a4..c676284e4 100644 --- a/packages/core/src/apps/catalog/uptime-kuma.json +++ b/packages/core/src/apps/catalog/uptime-kuma.json @@ -1,5 +1,6 @@ { - "available": false, + "available": true, + "verified": true, "id": "uptime-kuma", "name": "Uptime Kuma", "description": "Self-hosted uptime monitoring with status pages and alerts.", @@ -15,7 +16,7 @@ "services": [ { "name": "uptime-kuma", - "image": "louislam/uptime-kuma:1", + "image": "louislam/uptime-kuma:2", "ports": [ "3001:3001" ], @@ -26,5 +27,19 @@ ], "restart": "unless-stopped" } - ] + ], + "connection": { + "title": "Open Uptime Kuma", + "outputs": [ + { + "id": "url", + "label": "URL", + "source": "publicUrl:uptime-kuma", + "kind": "url" + } + ], + "firstLogin": { + "note": "First run asks you to pick a database. Choose \"embedded\": this template only provisions Uptime Kuma's own SQLite volume, not an external MariaDB. Then create the admin user. There is no default account." + } + } }