This commit is contained in:
@@ -1,5 +1,12 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2026-05-08 - 1.24.5 - fix(opsserver)
|
||||||
|
|
||||||
|
start the OpsServer with typedserver custom routes registered through the UtilityWebsiteServer hook
|
||||||
|
|
||||||
|
- fixes daemon startup with the current typedserver lifecycle
|
||||||
|
- cap SmartProxy readiness waiting at 10 seconds during daemon startup
|
||||||
|
|
||||||
## 2026-05-08 - 1.24.4 - fix(installer)
|
## 2026-05-08 - 1.24.4 - fix(installer)
|
||||||
|
|
||||||
avoid documenting a hardcoded initial admin password for fresh installs
|
avoid documenting a hardcoded initial admin password for fresh installs
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@serve.zone/onebox",
|
"name": "@serve.zone/onebox",
|
||||||
"version": "1.24.4",
|
"version": "1.24.5",
|
||||||
"exports": "./mod.ts",
|
"exports": "./mod.ts",
|
||||||
"tasks": {
|
"tasks": {
|
||||||
"test": "deno test --allow-all test/",
|
"test": "deno test --allow-all test/",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@serve.zone/onebox",
|
"name": "@serve.zone/onebox",
|
||||||
"version": "1.24.4",
|
"version": "1.24.5",
|
||||||
"description": "Self-hosted container platform with automatic SSL and DNS - a mini Heroku for single servers",
|
"description": "Self-hosted container platform with automatic SSL and DNS - a mini Heroku for single servers",
|
||||||
"main": "mod.ts",
|
"main": "mod.ts",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ export class OneboxReverseProxy {
|
|||||||
if (status.running) {
|
if (status.running) {
|
||||||
logger.info(`HTTPS already running on port ${this.httpsPort} via SmartProxy`);
|
logger.info(`HTTPS already running on port ${this.httpsPort} via SmartProxy`);
|
||||||
} else {
|
} else {
|
||||||
await this.smartProxy.start();
|
logger.warn('Skipping HTTPS reverse proxy startup because SmartProxy is not running');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -217,7 +217,7 @@ export class SmartProxyManager {
|
|||||||
return network.Id;
|
return network.Id;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async waitForReady(maxAttempts = 120, intervalMs = 1000): Promise<void> {
|
private async waitForReady(maxAttempts = 10, intervalMs = 1000): Promise<void> {
|
||||||
for (let i = 0; i < maxAttempts; i++) {
|
for (let i = 0; i < maxAttempts; i++) {
|
||||||
try {
|
try {
|
||||||
const response = await fetch(`${this.adminUrl}/ready`);
|
const response = await fetch(`${this.adminUrl}/ready`);
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ export class OpsServer {
|
|||||||
domain: 'localhost',
|
domain: 'localhost',
|
||||||
feedMetadata: undefined,
|
feedMetadata: undefined,
|
||||||
bundledContent: bundledFiles,
|
bundledContent: bundledFiles,
|
||||||
|
addCustomRoutes: async (typedserver) => this.registerCustomRoutes(typedserver),
|
||||||
});
|
});
|
||||||
|
|
||||||
// Chain typedrouters: server -> opsServer -> individual handlers
|
// Chain typedrouters: server -> opsServer -> individual handlers
|
||||||
@@ -43,7 +44,6 @@ export class OpsServer {
|
|||||||
|
|
||||||
// Set up all handlers
|
// Set up all handlers
|
||||||
await this.setupHandlers();
|
await this.setupHandlers();
|
||||||
this.registerCustomRoutes();
|
|
||||||
|
|
||||||
await this.server.start(port);
|
await this.server.start(port);
|
||||||
logger.success(`OpsServer started on http://localhost:${port}`);
|
logger.success(`OpsServer started on http://localhost:${port}`);
|
||||||
@@ -73,18 +73,18 @@ export class OpsServer {
|
|||||||
logger.success('OpsServer TypedRequest handlers initialized');
|
logger.success('OpsServer TypedRequest handlers initialized');
|
||||||
}
|
}
|
||||||
|
|
||||||
private registerCustomRoutes(): void {
|
private registerCustomRoutes(typedserver: plugins.typedserver.TypedServer): void {
|
||||||
this.server.typedserver.addRoute(
|
typedserver.addRoute(
|
||||||
'/v2',
|
'/v2',
|
||||||
'ALL',
|
'ALL',
|
||||||
async (ctx) => this.oneboxRef.registry.handleRequest(ctx.request),
|
async (ctx) => this.oneboxRef.registry.handleRequest(ctx.request),
|
||||||
);
|
);
|
||||||
this.server.typedserver.addRoute(
|
typedserver.addRoute(
|
||||||
'/v2/*',
|
'/v2/*',
|
||||||
'ALL',
|
'ALL',
|
||||||
async (ctx) => this.oneboxRef.registry.handleRequest(ctx.request),
|
async (ctx) => this.oneboxRef.registry.handleRequest(ctx.request),
|
||||||
);
|
);
|
||||||
this.server.typedserver.addRoute(
|
typedserver.addRoute(
|
||||||
'/backups/:backupId/download',
|
'/backups/:backupId/download',
|
||||||
'GET',
|
'GET',
|
||||||
async (ctx) => {
|
async (ctx) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user