From 24475caf0f5e91e717cd18c3f04ee9d2369700c7 Mon Sep 17 00:00:00 2001 From: Matthew Ezra Labre Date: Fri, 28 Apr 2023 17:54:50 +0800 Subject: [PATCH 1/4] add media_domain in config file generated from init --- src/authenticated-command.ts | 13 +++++++++++++ src/commands/init.ts | 8 +++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/authenticated-command.ts b/src/authenticated-command.ts index 2bc2791..a46ddb2 100644 --- a/src/authenticated-command.ts +++ b/src/authenticated-command.ts @@ -31,6 +31,19 @@ export function InitSDK(token: string) { }) } +export async function GetInstanceBin(token: string, instanceId: string) { + const res = await fetch(`https://media-manager.api.zesty.io/site/${instanceId}/bins`, { + method: 'POST', + headers: { + 'Authorization': `Bearer ${token}`, + } + }) + .then(res => res.json()) + .then(json => json.data) + + return res +} + export default abstract class extends Command { sdk: any diff --git a/src/commands/init.ts b/src/commands/init.ts index 4be888f..f384f8a 100644 --- a/src/commands/init.ts +++ b/src/commands/init.ts @@ -7,7 +7,7 @@ import { resolve } from 'path' import Signup from './auth/signup' import Login from './auth/login' import CreateInstance from './instance/create' -import { GetUserToken, InitSDK } from '../authenticated-command' +import { GetUserToken, InitSDK, GetInstanceBin } from '../authenticated-command' export default class Init extends Command { @@ -167,6 +167,12 @@ export default class Init extends Command { try { this.log(chalk(`Creating .zesty config directory`)) + const bin = await GetInstanceBin(token, instance.ZUID) + + if (bin) { + instance["mediaDomain"] = bin.storage_base_url + } + // Make config dir await mkdir(zestyConfigDir, { recursive: true } as any) From 275c577b466091464d388a045132986953a21445 Mon Sep 17 00:00:00 2001 From: Matthew Ezra Labre Date: Tue, 2 May 2023 16:34:08 +0800 Subject: [PATCH 2/4] updated instance create to use instance-installer, fixes on media_domain --- src/authenticated-command.ts | 15 +-------------- src/commands/init.ts | 15 +++++++++++---- src/commands/instance/create.ts | 14 +++++++------- 3 files changed, 19 insertions(+), 25 deletions(-) diff --git a/src/authenticated-command.ts b/src/authenticated-command.ts index a46ddb2..e00e35f 100644 --- a/src/authenticated-command.ts +++ b/src/authenticated-command.ts @@ -30,20 +30,7 @@ export function InitSDK(token: string) { // mediaAPIURL: "https://svc.zesty.io", }) } - -export async function GetInstanceBin(token: string, instanceId: string) { - const res = await fetch(`https://media-manager.api.zesty.io/site/${instanceId}/bins`, { - method: 'POST', - headers: { - 'Authorization': `Bearer ${token}`, - } - }) - .then(res => res.json()) - .then(json => json.data) - - return res -} - + export default abstract class extends Command { sdk: any diff --git a/src/commands/init.ts b/src/commands/init.ts index f384f8a..6a383a8 100644 --- a/src/commands/init.ts +++ b/src/commands/init.ts @@ -7,7 +7,7 @@ import { resolve } from 'path' import Signup from './auth/signup' import Login from './auth/login' import CreateInstance from './instance/create' -import { GetUserToken, InitSDK, GetInstanceBin } from '../authenticated-command' +import { GetUserToken, InitSDK } from '../authenticated-command' export default class Init extends Command { @@ -167,10 +167,17 @@ export default class Init extends Command { try { this.log(chalk(`Creating .zesty config directory`)) - const bin = await GetInstanceBin(token, instance.ZUID) + sdk.setInstance(instance.ZUID) + const bins = await sdk.media.getBins() - if (bin) { - instance["mediaDomain"] = bin.storage_base_url + if (bins?.data?.length > 0) { + let mediaDomains: string[] = [] + + bins.data.forEach((bin: any) => { + mediaDomains.push(bin.storage_base_url) + }); + + instance["mediaDomain"] = mediaDomains } // Make config dir diff --git a/src/commands/instance/create.ts b/src/commands/instance/create.ts index 542298a..30ab1a6 100644 --- a/src/commands/instance/create.ts +++ b/src/commands/instance/create.ts @@ -34,18 +34,18 @@ export default class CreateInstance extends Command { this.sdk.setInstance(instance.data.ZUID) this.log(`Created instance: ${name}`) - // TODO: this needs to get moved into the SDK - // set blueprint to bootstrap - this.log(`Setting instance blueprint`) - await fetch(`https://accounts.api.zesty.io/v1/instances/${instance.data.ZUID}/blueprints`, { - method: "PUT", + this.log(`Installing NextJS Marketing Template`) + await fetch(`https://installer-xytrmaqk4a-uc.a.run.app/install`, { + method: "POST", headers: { 'Authorization': `Bearer ${this.sdk.token}`, 'Content-Type': "application/json" }, - body: JSON.stringify({ "zuid": "14-64329e0-555645" }) + body: JSON.stringify({ + "instance_zuid": instance.data.ZUID, + "repository": "https://github.com/zesty-io/template-nextjs-marketing" + }) }) - } else { this.warn(`Failed to create instance.`) } From e6baa41fdf84f1600f9e92d80394221559d8134c Mon Sep 17 00:00:00 2001 From: Matthew Ezra Labre Date: Wed, 3 May 2023 07:08:44 +0800 Subject: [PATCH 3/4] updated media_domain to use cdn_base_url --- src/commands/init.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/commands/init.ts b/src/commands/init.ts index 6a383a8..033a573 100644 --- a/src/commands/init.ts +++ b/src/commands/init.ts @@ -174,7 +174,7 @@ export default class Init extends Command { let mediaDomains: string[] = [] bins.data.forEach((bin: any) => { - mediaDomains.push(bin.storage_base_url) + mediaDomains.push(bin.cdn_base_url) }); instance["mediaDomain"] = mediaDomains From 5647892ab0a09158b1e14f2057bbd693658068b6 Mon Sep 17 00:00:00 2001 From: Matthew Ezra Labre Date: Thu, 4 May 2023 07:11:45 +0800 Subject: [PATCH 4/4] removed getting bin data in init --- src/authenticated-command.ts | 2 +- src/commands/init.ts | 13 ------------- 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/src/authenticated-command.ts b/src/authenticated-command.ts index e00e35f..2bc2791 100644 --- a/src/authenticated-command.ts +++ b/src/authenticated-command.ts @@ -30,7 +30,7 @@ export function InitSDK(token: string) { // mediaAPIURL: "https://svc.zesty.io", }) } - + export default abstract class extends Command { sdk: any diff --git a/src/commands/init.ts b/src/commands/init.ts index 033a573..4be888f 100644 --- a/src/commands/init.ts +++ b/src/commands/init.ts @@ -167,19 +167,6 @@ export default class Init extends Command { try { this.log(chalk(`Creating .zesty config directory`)) - sdk.setInstance(instance.ZUID) - const bins = await sdk.media.getBins() - - if (bins?.data?.length > 0) { - let mediaDomains: string[] = [] - - bins.data.forEach((bin: any) => { - mediaDomains.push(bin.cdn_base_url) - }); - - instance["mediaDomain"] = mediaDomains - } - // Make config dir await mkdir(zestyConfigDir, { recursive: true } as any)