@serve.zone/appstore 2.5.0 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/readme.md CHANGED
@@ -31,7 +31,7 @@ The App Store currently lists 21 app templates.
31
31
  | App ID | Name | App Store category | Image | Port |
32
32
  | --- | --- | --- | --- | --- |
33
33
  | `adminer` | Adminer | Dev Tools | `adminer:latest` | `8080` |
34
- | `cloudly` | Cloudly | Dev Tools | `code.foss.global/serve.zone/cloudly@sha256:7762dc2660d1392220334a44f361ebf50994af675d97fcf2da5b037e7dc37536` | `3000` |
34
+ | `cloudly` | Cloudly | Dev Tools | `code.foss.global/serve.zone/cloudly@sha256:1ebfebd84d7b8d5a65aba7afda3481fce54d57999d2d9c0ec3716ee969bc47ed` | `3000` |
35
35
  | `ghost` | Ghost | CMS | `ghost:latest` | `2368` |
36
36
  | `gitea` | Gitea | Dev Tools | `gitea/gitea:latest` | `3000` |
37
37
  | `gitops` | GitOps | Dev Tools | `code.foss.global/serve.zone/gitops:2.13.0` | `3000` |
@@ -58,7 +58,7 @@ Some templates ask Onebox to provision local platform services and inject connec
58
58
 
59
59
  | App ID | Requirements | Notes |
60
60
  | --- | --- | --- |
61
- | `cloudly` | MongoDB, S3 | Version `1.1.6` pins Cloudly `24.1.0` and requires Onebox `7.12.0`. The operator-approved WorkloadInit release authority is a required encrypted input delivered only as a root-readable file; the public environment contains its fixed file path, never its value. Onebox must complete its fenced retarget, zero-blocker diagnostics, allocation-fenced scratch rehearsal, receipt-bound production preparation, and mount verification before applying the held target. Rollback remains full-restore-only. |
61
+ | `cloudly` | MongoDB, S3 | Version `1.1.8` pins Cloudly `25.2.0` and requires Onebox `8.3.3`. Both the existing Secrets v2 keyring and operator-approved WorkloadInit authority are required encrypted inputs delivered as separate root-owned `0400` files; the public environment contains only their fixed paths. Complete cutover retirement and verify a fresh restorable checkpoint before upgrading: startup applies ledger-backed migrations and authenticated legacy tombstone cleanup. Rollback remains full-restore-only. |
62
62
  | `ghost` | MariaDB | Uses MySQL-style `database__connection__*` environment variables. |
63
63
  | `gitea` | MariaDB | Uses Gitea database environment variables with `${MARIADB_*}` placeholders. |
64
64
  | `nextcloud` | MariaDB, Valkey | Uses MySQL-compatible database variables. Valkey is declared as a platform requirement. |
@@ -34,7 +34,7 @@ export const appStorePackageData: IAppStorePackageData = {
34
34
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
35
35
  "category": "Dev Tools",
36
36
  "iconName": "server",
37
- "latestVersion": "1.1.6",
37
+ "latestVersion": "1.1.8",
38
38
  "versions": [
39
39
  "1.0.0",
40
40
  "1.1.0",
@@ -43,7 +43,9 @@ export const appStorePackageData: IAppStorePackageData = {
43
43
  "1.1.3",
44
44
  "1.1.4",
45
45
  "1.1.5",
46
- "1.1.6"
46
+ "1.1.6",
47
+ "1.1.7",
48
+ "1.1.8"
47
49
  ],
48
50
  "maintainer": "serve.zone",
49
51
  "links": {
@@ -1139,6 +1141,333 @@ export const appStorePackageData: IAppStorePackageData = {
1139
1141
  "expectedStatus": 200
1140
1142
  }
1141
1143
  },
1144
+ "apps/cloudly/versions/1.1.7/config.json": {
1145
+ "image": "code.foss.global/serve.zone/cloudly@sha256:948b72927d177b8f73be0596017df78437cbaa0e96b5f2ce246590aebbab05e9",
1146
+ "targetPorts": [
1147
+ {
1148
+ "name": "web",
1149
+ "port": 3000,
1150
+ "protocol": "http",
1151
+ "default": true
1152
+ }
1153
+ ],
1154
+ "envVars": [
1155
+ {
1156
+ "key": "SERVEZONE_ENVIRONMENT",
1157
+ "value": "production",
1158
+ "description": "Cloudly runtime environment.",
1159
+ "required": true
1160
+ },
1161
+ {
1162
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
1163
+ "value": "https://${SERVICE_DOMAIN}",
1164
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
1165
+ "required": true
1166
+ },
1167
+ {
1168
+ "key": "SERVEZONE_LISTENPORT",
1169
+ "value": "3000",
1170
+ "description": "Internal Cloudly HTTP port inside the container.",
1171
+ "required": true
1172
+ },
1173
+ {
1174
+ "key": "SERVEZONE_SSLMODE",
1175
+ "value": "external",
1176
+ "description": "Use external TLS termination through Onebox or dcrouter.",
1177
+ "required": true
1178
+ },
1179
+ {
1180
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_PATH",
1181
+ "value": "/run/secrets/cloudly-workloadinit-approval.json",
1182
+ "description": "Private WorkloadInit release-approval artifact mounted by Onebox for Coreflow secret-runtime registration.",
1183
+ "required": true
1184
+ },
1185
+ {
1186
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_FILE",
1187
+ "description": "Operator-approved WorkloadInit release authority. Onebox stores it encrypted and mounts it only as a root-readable file.",
1188
+ "required": true,
1189
+ "secret": true,
1190
+ "delivery": {
1191
+ "type": "file",
1192
+ "targetPath": "/run/secrets/cloudly-workloadinit-approval.json",
1193
+ "uid": 0,
1194
+ "gid": 0,
1195
+ "mode": 256
1196
+ }
1197
+ },
1198
+ {
1199
+ "key": "MONGODB_URL",
1200
+ "value": "${MONGODB_URI}",
1201
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
1202
+ "required": true
1203
+ },
1204
+ {
1205
+ "key": "MONGODB_NAME",
1206
+ "value": "${MONGODB_DATABASE}",
1207
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
1208
+ "required": true
1209
+ },
1210
+ {
1211
+ "key": "MONGODB_USER",
1212
+ "value": "${MONGODB_USERNAME}",
1213
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
1214
+ "required": true
1215
+ },
1216
+ {
1217
+ "key": "MONGODB_PASS",
1218
+ "value": "${MONGODB_PASSWORD}",
1219
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
1220
+ "required": true
1221
+ },
1222
+ {
1223
+ "key": "S3_ENDPOINT",
1224
+ "value": "onebox-corestore",
1225
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
1226
+ "required": true
1227
+ },
1228
+ {
1229
+ "key": "S3_PORT",
1230
+ "value": "9000",
1231
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
1232
+ "required": true
1233
+ },
1234
+ {
1235
+ "key": "S3_USESSL",
1236
+ "value": "false",
1237
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
1238
+ "required": true
1239
+ },
1240
+ {
1241
+ "key": "S3_BUCKET",
1242
+ "value": "${S3_BUCKET}",
1243
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
1244
+ "required": true
1245
+ },
1246
+ {
1247
+ "key": "S3_ACCESSKEY",
1248
+ "value": "${S3_ACCESS_KEY}",
1249
+ "description": "S3 access key provisioned by Onebox Corestore.",
1250
+ "required": true
1251
+ },
1252
+ {
1253
+ "key": "S3_SECRETKEY",
1254
+ "value": "${S3_SECRET_KEY}",
1255
+ "description": "S3 secret key provisioned by Onebox Corestore.",
1256
+ "required": true
1257
+ }
1258
+ ],
1259
+ "platformRequirements": {
1260
+ "mongodb": true,
1261
+ "s3": true
1262
+ },
1263
+ "platformOidc": {
1264
+ "redirectPath": "/auth/oidc/callback",
1265
+ "roles": [
1266
+ {
1267
+ "id": "admin",
1268
+ "label": "Administrator",
1269
+ "description": "Full Cloudly administration for this hosted instance."
1270
+ },
1271
+ {
1272
+ "id": "user",
1273
+ "label": "User",
1274
+ "description": "Standard authenticated Cloudly access for this hosted instance."
1275
+ }
1276
+ ],
1277
+ "environmentVariables": {
1278
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
1279
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
1280
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
1281
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
1282
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
1283
+ },
1284
+ "clientAuthenticationMethod": "client_secret_basic"
1285
+ },
1286
+ "minOneboxVersion": "7.14.0",
1287
+ "changelog": "Move Cloudly to 25.1.0 on SmartDB 5.5.1 with orchestrator-driven legacy deployment settlement, a direct /status readiness endpoint, and the Alpine-based image. Onebox 7.14.0 settles legacy deployment operations during the fenced Cloudly Secrets v2 cutover before this target is applied.",
1288
+ "breaking": true,
1289
+ "requiresManualReview": true,
1290
+ "migrationRequired": true,
1291
+ "backupBeforeUpgrade": true,
1292
+ "healthCheck": {
1293
+ "path": "/status",
1294
+ "port": 3000,
1295
+ "expectedStatus": 200
1296
+ }
1297
+ },
1298
+ "apps/cloudly/versions/1.1.8/config.json": {
1299
+ "image": "code.foss.global/serve.zone/cloudly@sha256:1ebfebd84d7b8d5a65aba7afda3481fce54d57999d2d9c0ec3716ee969bc47ed",
1300
+ "targetPorts": [
1301
+ {
1302
+ "name": "web",
1303
+ "port": 3000,
1304
+ "protocol": "http",
1305
+ "default": true
1306
+ }
1307
+ ],
1308
+ "envVars": [
1309
+ {
1310
+ "key": "SERVEZONE_ENVIRONMENT",
1311
+ "value": "production",
1312
+ "description": "Cloudly runtime environment.",
1313
+ "required": true
1314
+ },
1315
+ {
1316
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
1317
+ "value": "https://${SERVICE_DOMAIN}",
1318
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
1319
+ "required": true
1320
+ },
1321
+ {
1322
+ "key": "SERVEZONE_LISTENPORT",
1323
+ "value": "3000",
1324
+ "description": "Internal Cloudly HTTP port inside the container.",
1325
+ "required": true
1326
+ },
1327
+ {
1328
+ "key": "SERVEZONE_SSLMODE",
1329
+ "value": "external",
1330
+ "description": "Use external TLS termination through Onebox or dcrouter.",
1331
+ "required": true
1332
+ },
1333
+ {
1334
+ "key": "SERVEZONE_SECRET_KEYRING_PATH",
1335
+ "value": "/run/secrets/cloudly-secrets-v2-keyring.json",
1336
+ "description": "Path to the Cloudly Secrets v2 keyring mounted by Onebox; the keyring value is never placed in the public environment.",
1337
+ "required": true
1338
+ },
1339
+ {
1340
+ "key": "SERVEZONE_SECRET_KEYRING_FILE",
1341
+ "description": "Existing Cloudly Secrets v2 keyring. Onebox stores it encrypted and mounts it only as a root-readable file; retain the existing keyring when upgrading.",
1342
+ "required": true,
1343
+ "secret": true,
1344
+ "delivery": {
1345
+ "type": "file",
1346
+ "targetPath": "/run/secrets/cloudly-secrets-v2-keyring.json",
1347
+ "uid": 0,
1348
+ "gid": 0,
1349
+ "mode": 256
1350
+ }
1351
+ },
1352
+ {
1353
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_PATH",
1354
+ "value": "/run/secrets/cloudly-workloadinit-approval.json",
1355
+ "description": "Private WorkloadInit release-approval artifact mounted by Onebox for Coreflow secret-runtime registration.",
1356
+ "required": true
1357
+ },
1358
+ {
1359
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_FILE",
1360
+ "description": "Operator-approved WorkloadInit release authority. Onebox stores it encrypted and mounts it only as a root-readable file.",
1361
+ "required": true,
1362
+ "secret": true,
1363
+ "delivery": {
1364
+ "type": "file",
1365
+ "targetPath": "/run/secrets/cloudly-workloadinit-approval.json",
1366
+ "uid": 0,
1367
+ "gid": 0,
1368
+ "mode": 256
1369
+ }
1370
+ },
1371
+ {
1372
+ "key": "MONGODB_URL",
1373
+ "value": "${MONGODB_URI}",
1374
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
1375
+ "required": true
1376
+ },
1377
+ {
1378
+ "key": "MONGODB_NAME",
1379
+ "value": "${MONGODB_DATABASE}",
1380
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
1381
+ "required": true
1382
+ },
1383
+ {
1384
+ "key": "MONGODB_USER",
1385
+ "value": "${MONGODB_USERNAME}",
1386
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
1387
+ "required": true
1388
+ },
1389
+ {
1390
+ "key": "MONGODB_PASS",
1391
+ "value": "${MONGODB_PASSWORD}",
1392
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
1393
+ "required": true
1394
+ },
1395
+ {
1396
+ "key": "S3_ENDPOINT",
1397
+ "value": "onebox-corestore",
1398
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
1399
+ "required": true
1400
+ },
1401
+ {
1402
+ "key": "S3_PORT",
1403
+ "value": "9000",
1404
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
1405
+ "required": true
1406
+ },
1407
+ {
1408
+ "key": "S3_USESSL",
1409
+ "value": "false",
1410
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
1411
+ "required": true
1412
+ },
1413
+ {
1414
+ "key": "S3_BUCKET",
1415
+ "value": "${S3_BUCKET}",
1416
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
1417
+ "required": true
1418
+ },
1419
+ {
1420
+ "key": "S3_ACCESSKEY",
1421
+ "value": "${S3_ACCESS_KEY}",
1422
+ "description": "S3 access key provisioned by Onebox Corestore.",
1423
+ "required": true
1424
+ },
1425
+ {
1426
+ "key": "S3_SECRETKEY",
1427
+ "value": "${S3_SECRET_KEY}",
1428
+ "description": "S3 secret key provisioned by Onebox Corestore.",
1429
+ "required": true
1430
+ }
1431
+ ],
1432
+ "platformRequirements": {
1433
+ "mongodb": true,
1434
+ "s3": true
1435
+ },
1436
+ "platformOidc": {
1437
+ "redirectPath": "/auth/oidc/callback",
1438
+ "roles": [
1439
+ {
1440
+ "id": "admin",
1441
+ "label": "Administrator",
1442
+ "description": "Full Cloudly administration for this hosted instance."
1443
+ },
1444
+ {
1445
+ "id": "user",
1446
+ "label": "User",
1447
+ "description": "Standard authenticated Cloudly access for this hosted instance."
1448
+ }
1449
+ ],
1450
+ "environmentVariables": {
1451
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
1452
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
1453
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
1454
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
1455
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
1456
+ },
1457
+ "clientAuthenticationMethod": "client_secret_basic"
1458
+ },
1459
+ "minOneboxVersion": "8.3.3",
1460
+ "changelog": "Move Cloudly to 25.2.0 with ledger-backed startup migrations and authenticated legacy tombstone cleanup. Requires completed Secrets v2 cutover retirement and a fresh verified restorable checkpoint. Preserve the encrypted keyring and WorkloadInit approval as dedicated root-readable files. Rollback requires a full restore.",
1461
+ "breaking": true,
1462
+ "requiresManualReview": true,
1463
+ "migrationRequired": true,
1464
+ "backupBeforeUpgrade": true,
1465
+ "healthCheck": {
1466
+ "path": "/status",
1467
+ "port": 3000,
1468
+ "expectedStatus": 200
1469
+ }
1470
+ },
1142
1471
  "apps/ghost/app.json": {
1143
1472
  "id": "ghost",
1144
1473
  "name": "Ghost",
@@ -1960,7 +2289,7 @@ export const appStorePackageData: IAppStorePackageData = {
1960
2289
  },
1961
2290
  "appstore.json": {
1962
2291
  "schemaVersion": 1,
1963
- "updatedAt": "2026-08-17T00:00:00Z",
2292
+ "updatedAt": "2026-09-04T00:00:00Z",
1964
2293
  "apps": [
1965
2294
  {
1966
2295
  "id": "nginx",
@@ -2168,7 +2497,7 @@ export const appStorePackageData: IAppStorePackageData = {
2168
2497
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
2169
2498
  "category": "Dev Tools",
2170
2499
  "iconName": "server",
2171
- "latestVersion": "1.1.6",
2500
+ "latestVersion": "1.1.8",
2172
2501
  "tags": [
2173
2502
  "serve.zone",
2174
2503
  "control-plane",