From f39e49ab349585b281049a9402605c68a10061bf Mon Sep 17 00:00:00 2001 From: Ben Allfree Date: Wed, 4 Dec 2024 02:57:06 -0800 Subject: [PATCH] mothership: instance creation fixes --- .../pockethost/src/mothership-app/pb_hooks/mothership.js | 5 +++-- .../src/lib/handlers/instance/api/HandleInstanceCreate.ts | 7 ++++--- .../src/lib/handlers/signup/api/HandleSignupConfirm.ts | 7 +++---- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/packages/pockethost/src/mothership-app/pb_hooks/mothership.js b/packages/pockethost/src/mothership-app/pb_hooks/mothership.js index f9a40b60..212c505f 100644 --- a/packages/pockethost/src/mothership-app/pb_hooks/mothership.js +++ b/packages/pockethost/src/mothership-app/pb_hooks/mothership.js @@ -77,13 +77,14 @@ var HandleInstanceCreate = (c) => { log(`***TOP OF POST`); let data = new DynamicModel({ subdomain: "", + version: versions[0], region: "sfo-2" }); log(`***before bind`); c.bind(data); log(`***after bind`); data = JSON.parse(JSON.stringify(data)); - const { subdomain, region } = data; + const { subdomain, version, region } = data; log(`***vars`, JSON.stringify({ subdomain, region })); if (!subdomain) { throw new BadRequestError( @@ -96,7 +97,7 @@ var HandleInstanceCreate = (c) => { record.set("region", region || `sfo-1`); record.set("subdomain", subdomain); record.set("status", "idle"); - record.set("version", versions[0]); + record.set("version", version); record.set("dev", true); record.set("syncAdmin", true); record.set("notifyMaintenanceMode", true); diff --git a/packages/pockethost/src/mothership-app/src/lib/handlers/instance/api/HandleInstanceCreate.ts b/packages/pockethost/src/mothership-app/src/lib/handlers/instance/api/HandleInstanceCreate.ts index 0af9fecc..d3251afa 100644 --- a/packages/pockethost/src/mothership-app/src/lib/handlers/instance/api/HandleInstanceCreate.ts +++ b/packages/pockethost/src/mothership-app/src/lib/handlers/instance/api/HandleInstanceCreate.ts @@ -15,8 +15,9 @@ export const HandleInstanceCreate = (c: echo.Context) => { log(`***TOP OF POST`) let data = new DynamicModel({ subdomain: '', + version: versions[0], region: 'sfo-2', - }) as { subdomain?: string; region?: string } + }) as { subdomain?: string; version?: string; region?: string } log(`***before bind`) @@ -27,7 +28,7 @@ export const HandleInstanceCreate = (c: echo.Context) => { // This is necessary for destructuring to work correctly data = JSON.parse(JSON.stringify(data)) - const { subdomain, region } = data + const { subdomain, version, region } = data log(`***vars`, JSON.stringify({ subdomain, region })) @@ -43,7 +44,7 @@ export const HandleInstanceCreate = (c: echo.Context) => { record.set('region', region || `sfo-1`) record.set('subdomain', subdomain) record.set('status', 'idle') - record.set('version', versions[0]) + record.set('version', version) record.set('dev', true) record.set('syncAdmin', true) record.set('notifyMaintenanceMode', true) diff --git a/packages/pockethost/src/mothership-app/src/lib/handlers/signup/api/HandleSignupConfirm.ts b/packages/pockethost/src/mothership-app/src/lib/handlers/signup/api/HandleSignupConfirm.ts index 986b7db7..b4346672 100644 --- a/packages/pockethost/src/mothership-app/src/lib/handlers/signup/api/HandleSignupConfirm.ts +++ b/packages/pockethost/src/mothership-app/src/lib/handlers/signup/api/HandleSignupConfirm.ts @@ -19,6 +19,7 @@ export const HandleSignupConfirm = (c: echo.Context) => { const password = parsed.password?.trim() const desiredInstanceName = parsed.instanceName?.trim() const region = parsed.region?.trim() + const version = parsed.version?.trim() || versions[0] if (!email) { throw error(`email`, 'required', 'Email is required') @@ -64,7 +65,6 @@ export const HandleSignupConfirm = (c: echo.Context) => { user.set('username', username) user.set('email', email) user.set('subscription', 'free') - user.set('notifyMaintenanceMode', true) user.setPassword(password) txDao.saveRecord(user) } catch (e) { @@ -74,13 +74,12 @@ export const HandleSignupConfirm = (c: echo.Context) => { try { const instance = new Record(instanceCollection) instance.set('subdomain', desiredInstanceName) - instance.set('region', region || `sfo-1`) + instance.set('region', region || `sfo-2`) instance.set('uid', user.get('id')) instance.set('status', 'idle') - instance.set('notifyMaintenanceMode', true) instance.set('syncAdmin', true) instance.set('dev', true) - instance.set('version', versions[0]) + instance.set('version', version) txDao.saveRecord(instance) } catch (e) { if (`${e}`.match(/ UNIQUE /)) {