@dbos-inc/dbos-cloud 0.8.46-preview → 0.8.49-preview
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/applications/deploy-app-code.ts +18 -2
- package/applications/list-apps.ts +15 -8
- package/applications/register-app.ts +1 -2
- package/applications/types.ts +0 -1
- package/applications/update-app.ts +2 -4
- package/cli.ts +10 -10
- package/cloudutils.ts +2 -0
- package/dist/packages/dbos-cloud/applications/deploy-app-code.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/applications/deploy-app-code.js +15 -1
- package/dist/packages/dbos-cloud/applications/deploy-app-code.js.map +1 -1
- package/dist/packages/dbos-cloud/applications/list-apps.d.ts +1 -1
- package/dist/packages/dbos-cloud/applications/list-apps.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/applications/list-apps.js +16 -8
- package/dist/packages/dbos-cloud/applications/list-apps.js.map +1 -1
- package/dist/packages/dbos-cloud/applications/register-app.d.ts +1 -1
- package/dist/packages/dbos-cloud/applications/register-app.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/applications/register-app.js +1 -2
- package/dist/packages/dbos-cloud/applications/register-app.js.map +1 -1
- package/dist/packages/dbos-cloud/applications/types.d.ts +0 -1
- package/dist/packages/dbos-cloud/applications/types.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/applications/update-app.d.ts +1 -1
- package/dist/packages/dbos-cloud/applications/update-app.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/applications/update-app.js +2 -4
- package/dist/packages/dbos-cloud/applications/update-app.js.map +1 -1
- package/dist/packages/dbos-cloud/cli.js +9 -9
- package/dist/packages/dbos-cloud/cli.js.map +1 -1
- package/dist/packages/dbos-cloud/cloudutils.d.ts +1 -0
- package/dist/packages/dbos-cloud/cloudutils.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/cloudutils.js +2 -1
- package/dist/packages/dbos-cloud/cloudutils.js.map +1 -1
- package/dist/packages/dbos-cloud/userdb.d.ts +1 -1
- package/dist/packages/dbos-cloud/userdb.d.ts.map +1 -1
- package/dist/packages/dbos-cloud/userdb.js +12 -3
- package/dist/packages/dbos-cloud/userdb.js.map +1 -1
- package/package.json +1 -1
- package/userdb.ts +11 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import axios from "axios";
|
|
2
2
|
import { execSync } from "child_process";
|
|
3
3
|
import { writeFileSync, existsSync } from 'fs';
|
|
4
|
-
import { createDirectory, getCloudCredentials, getLogger, readFileSync, runCommand, sleep } from "../cloudutils";
|
|
4
|
+
import { createDirectory, dbosConfigFilePath, getCloudCredentials, getLogger, readFileSync, runCommand, sleep } from "../cloudutils";
|
|
5
5
|
import path from "path";
|
|
6
6
|
import { Application } from "./types";
|
|
7
7
|
|
|
@@ -42,6 +42,10 @@ export async function deployAppCode(host: string, docker: boolean): Promise<numb
|
|
|
42
42
|
execSync(`zip -ry ${deployDirectoryName}/${appName}.zip ./* -x ${deployDirectoryName}/* > /dev/null`);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
const interpolatedConfig = readInterpolatedConfig(dbosConfigFilePath)
|
|
46
|
+
writeFileSync(`${deployDirectoryName}/${dbosConfigFilePath}`, interpolatedConfig)
|
|
47
|
+
execSync(`zip -j ${deployDirectoryName}/${appName}.zip ${deployDirectoryName}/${dbosConfigFilePath} > /dev/null`);
|
|
48
|
+
|
|
45
49
|
try {
|
|
46
50
|
const zipData = readFileSync(`${deployDirectoryName}/${appName}.zip`, "base64");
|
|
47
51
|
|
|
@@ -70,9 +74,13 @@ export async function deployAppCode(host: string, docker: boolean): Promise<numb
|
|
|
70
74
|
if (count % 5 === 0) {
|
|
71
75
|
logger.info(`Waiting for ${appName} with version ${deployOutput.ApplicationVersion} to be available`);
|
|
72
76
|
if (count > 20) {
|
|
73
|
-
logger.info(`If ${appName} takes too long to become available, check its logs
|
|
77
|
+
logger.info(`If ${appName} takes too long to become available, check its logs with 'npx dbos-cloud applications logs'`);
|
|
74
78
|
}
|
|
75
79
|
}
|
|
80
|
+
if (count > 180) {
|
|
81
|
+
logger.error("Application taking too long to become available")
|
|
82
|
+
return 1;
|
|
83
|
+
}
|
|
76
84
|
|
|
77
85
|
// Retrieve the application status, check if it is "AVAILABLE"
|
|
78
86
|
const list = await axios.get(
|
|
@@ -105,6 +113,14 @@ export async function deployAppCode(host: string, docker: boolean): Promise<numb
|
|
|
105
113
|
}
|
|
106
114
|
}
|
|
107
115
|
|
|
116
|
+
function readInterpolatedConfig(configFilePath: string): string {
|
|
117
|
+
const configFileContent = readFileSync(configFilePath) as string;
|
|
118
|
+
const regex = /\${([^}]+)}/g; // Regex to match ${VAR_NAME} style placeholders
|
|
119
|
+
return configFileContent.replace(regex, (_, g1: string) => {
|
|
120
|
+
return process.env[g1] || ""; // If the env variable is not set, return an empty string.
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
|
|
108
124
|
async function buildAppInDocker(appName: string): Promise<boolean> {
|
|
109
125
|
const logger = getLogger();
|
|
110
126
|
|
|
@@ -2,7 +2,7 @@ import axios from "axios";
|
|
|
2
2
|
import { getCloudCredentials, getLogger } from "../cloudutils";
|
|
3
3
|
import { Application } from "./types";
|
|
4
4
|
|
|
5
|
-
export async function listApps(host: string): Promise<number> {
|
|
5
|
+
export async function listApps(host: string, json: boolean): Promise<number> {
|
|
6
6
|
const logger = getLogger();
|
|
7
7
|
const userCredentials = getCloudCredentials();
|
|
8
8
|
const bearerToken = "Bearer " + userCredentials.token;
|
|
@@ -16,17 +16,24 @@ export async function listApps(host: string): Promise<number> {
|
|
|
16
16
|
},
|
|
17
17
|
}
|
|
18
18
|
);
|
|
19
|
-
const
|
|
20
|
-
if (
|
|
19
|
+
const applications: Application[] = list.data as Application[];
|
|
20
|
+
if (applications.length === 0) {
|
|
21
21
|
logger.info("No applications found");
|
|
22
22
|
return 1;
|
|
23
23
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
if (json) {
|
|
25
|
+
console.log(JSON.stringify(applications));
|
|
26
|
+
} else {
|
|
27
|
+
logger.info(`Listing applications for ${userCredentials.userName}`)
|
|
28
|
+
applications.forEach(app => {
|
|
29
|
+
console.log(`Application Name: ${app.Name}`);
|
|
30
|
+
console.log(`ID: ${app.ID}`);
|
|
31
|
+
console.log(`Database Name: ${app.DatabaseName}`);
|
|
32
|
+
console.log(`Status: ${app.Status}`);
|
|
33
|
+
console.log(`Version: ${app.Version}`);
|
|
34
|
+
console.log('-------------------------');
|
|
35
|
+
});
|
|
27
36
|
}
|
|
28
|
-
logger.info(`Listing applications for ${userCredentials.userName}`)
|
|
29
|
-
console.log(JSON.stringify(formattedData));
|
|
30
37
|
return 0;
|
|
31
38
|
} catch (e) {
|
|
32
39
|
if (axios.isAxiosError(e) && e.response) {
|
|
@@ -2,7 +2,7 @@ import axios from "axios";
|
|
|
2
2
|
import { getCloudCredentials, getLogger } from "../cloudutils";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
|
|
5
|
-
export async function registerApp(dbname: string, host: string
|
|
5
|
+
export async function registerApp(dbname: string, host: string): Promise<number> {
|
|
6
6
|
const logger = getLogger();
|
|
7
7
|
const userCredentials = getCloudCredentials();
|
|
8
8
|
const bearerToken = "Bearer " + userCredentials.token;
|
|
@@ -19,7 +19,6 @@ export async function registerApp(dbname: string, host: string, machines: number
|
|
|
19
19
|
{
|
|
20
20
|
name: appName,
|
|
21
21
|
database: dbname,
|
|
22
|
-
max_vms: machines,
|
|
23
22
|
},
|
|
24
23
|
{
|
|
25
24
|
headers: {
|
package/applications/types.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { getCloudCredentials, getLogger } from "../cloudutils";
|
|
|
3
3
|
import { Application } from "./types";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
|
|
6
|
-
export async function updateApp(host: string
|
|
6
|
+
export async function updateApp(host: string): Promise<number> {
|
|
7
7
|
const logger = getLogger();
|
|
8
8
|
const userCredentials = getCloudCredentials();
|
|
9
9
|
const bearerToken = "Bearer " + userCredentials.token;
|
|
@@ -15,12 +15,11 @@ export async function updateApp(host: string, machines: number): Promise<number>
|
|
|
15
15
|
logger.info(`Updating application: ${appName}`)
|
|
16
16
|
|
|
17
17
|
try {
|
|
18
|
-
logger.info(`Updating application ${appName}
|
|
18
|
+
logger.info(`Updating application ${appName}`);
|
|
19
19
|
const update = await axios.patch(
|
|
20
20
|
`https://${host}/${userCredentials.userName}/application/${appName}`,
|
|
21
21
|
{
|
|
22
22
|
name: appName,
|
|
23
|
-
max_vms: machines
|
|
24
23
|
},
|
|
25
24
|
{
|
|
26
25
|
headers: {
|
|
@@ -31,7 +30,6 @@ export async function updateApp(host: string, machines: number): Promise<number>
|
|
|
31
30
|
);
|
|
32
31
|
const application: Application = update.data as Application;
|
|
33
32
|
logger.info(`Successfully updated: ${application.Name}`);
|
|
34
|
-
console.log(JSON.stringify({ "Name": application.Name, "ID": application.ID, "Version": application.Version, "MaxVMs": application.MaxVMs }));
|
|
35
33
|
return 0;
|
|
36
34
|
} catch (e) {
|
|
37
35
|
if (axios.isAxiosError(e) && e.response) {
|
package/cli.ts
CHANGED
|
@@ -65,20 +65,18 @@ applicationCommands
|
|
|
65
65
|
.command('register')
|
|
66
66
|
.description('Register a new application')
|
|
67
67
|
.requiredOption('-d, --database <string>', 'Specify the app database name')
|
|
68
|
-
.
|
|
69
|
-
.action(async (options: { database: string, machines: string }) => {
|
|
68
|
+
.action(async (options: { database: string }) => {
|
|
70
69
|
const { host }: { host: string } = applicationCommands.opts()
|
|
71
|
-
const exitCode = await registerApp(options.database, host
|
|
70
|
+
const exitCode = await registerApp(options.database, host);
|
|
72
71
|
process.exit(exitCode);
|
|
73
72
|
});
|
|
74
73
|
|
|
75
74
|
applicationCommands
|
|
76
75
|
.command('update')
|
|
77
76
|
.description('Update an application')
|
|
78
|
-
.
|
|
79
|
-
.action(async (options: { machines: string }) => {
|
|
77
|
+
.action(async () => {
|
|
80
78
|
const { host }: { host: string } = applicationCommands.opts()
|
|
81
|
-
const exitCode = await updateApp(host
|
|
79
|
+
const exitCode = await updateApp(host);
|
|
82
80
|
process.exit(exitCode);
|
|
83
81
|
});
|
|
84
82
|
|
|
@@ -104,9 +102,10 @@ applicationCommands
|
|
|
104
102
|
applicationCommands
|
|
105
103
|
.command('list')
|
|
106
104
|
.description('List all deployed applications')
|
|
107
|
-
.
|
|
105
|
+
.option('--json', 'Emit JSON output')
|
|
106
|
+
.action(async (options: { json: boolean }) => {
|
|
108
107
|
const { host }: { host: string } = applicationCommands.opts()
|
|
109
|
-
const exitCode = await listApps(host);
|
|
108
|
+
const exitCode = await listApps(host, options.json);
|
|
110
109
|
process.exit(exitCode);
|
|
111
110
|
});
|
|
112
111
|
|
|
@@ -142,9 +141,10 @@ userdbCommands
|
|
|
142
141
|
userdbCommands
|
|
143
142
|
.command('status')
|
|
144
143
|
.argument('<string>', 'database name')
|
|
145
|
-
.
|
|
144
|
+
.option('--json', 'Emit JSON output')
|
|
145
|
+
.action((async (dbname: string, options: { json: boolean}) => {
|
|
146
146
|
const { host }: { host: string } = userdbCommands.opts()
|
|
147
|
-
await getUserDb(host, dbname)
|
|
147
|
+
await getUserDb(host, dbname, options.json)
|
|
148
148
|
}))
|
|
149
149
|
|
|
150
150
|
userdbCommands
|
package/cloudutils.ts
CHANGED
|
@@ -4,6 +4,8 @@ import fs from "fs";
|
|
|
4
4
|
import { spawn, StdioOptions } from 'child_process';
|
|
5
5
|
import { transports, createLogger, format, Logger } from "winston";
|
|
6
6
|
|
|
7
|
+
export const dbosConfigFilePath = "dbos-config.yaml";
|
|
8
|
+
|
|
7
9
|
export function getLogger(): Logger {
|
|
8
10
|
const winstonTransports: TransportStream[] = [];
|
|
9
11
|
winstonTransports.push(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-app-code.d.ts","sourceRoot":"","sources":["../../../../applications/deploy-app-code.ts"],"names":[],"mappings":"AAcA,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"deploy-app-code.d.ts","sourceRoot":"","sources":["../../../../applications/deploy-app-code.ts"],"names":[],"mappings":"AAcA,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAmGlF"}
|
|
@@ -36,6 +36,9 @@ async function deployAppCode(host, docker) {
|
|
|
36
36
|
// Zip the current directory and deploy from there. Requires app to have already been built. Only for testing.
|
|
37
37
|
(0, child_process_1.execSync)(`zip -ry ${deployDirectoryName}/${appName}.zip ./* -x ${deployDirectoryName}/* > /dev/null`);
|
|
38
38
|
}
|
|
39
|
+
const interpolatedConfig = readInterpolatedConfig(cloudutils_1.dbosConfigFilePath);
|
|
40
|
+
(0, fs_1.writeFileSync)(`${deployDirectoryName}/${cloudutils_1.dbosConfigFilePath}`, interpolatedConfig);
|
|
41
|
+
(0, child_process_1.execSync)(`zip -j ${deployDirectoryName}/${appName}.zip ${deployDirectoryName}/${cloudutils_1.dbosConfigFilePath} > /dev/null`);
|
|
39
42
|
try {
|
|
40
43
|
const zipData = (0, cloudutils_1.readFileSync)(`${deployDirectoryName}/${appName}.zip`, "base64");
|
|
41
44
|
// Submit the deploy request
|
|
@@ -58,9 +61,13 @@ async function deployAppCode(host, docker) {
|
|
|
58
61
|
if (count % 5 === 0) {
|
|
59
62
|
logger.info(`Waiting for ${appName} with version ${deployOutput.ApplicationVersion} to be available`);
|
|
60
63
|
if (count > 20) {
|
|
61
|
-
logger.info(`If ${appName} takes too long to become available, check its logs
|
|
64
|
+
logger.info(`If ${appName} takes too long to become available, check its logs with 'npx dbos-cloud applications logs'`);
|
|
62
65
|
}
|
|
63
66
|
}
|
|
67
|
+
if (count > 180) {
|
|
68
|
+
logger.error("Application taking too long to become available");
|
|
69
|
+
return 1;
|
|
70
|
+
}
|
|
64
71
|
// Retrieve the application status, check if it is "AVAILABLE"
|
|
65
72
|
const list = await axios_1.default.get(`https://${host}/${userCredentials.userName}/application`, {
|
|
66
73
|
headers: {
|
|
@@ -91,6 +98,13 @@ async function deployAppCode(host, docker) {
|
|
|
91
98
|
}
|
|
92
99
|
}
|
|
93
100
|
exports.deployAppCode = deployAppCode;
|
|
101
|
+
function readInterpolatedConfig(configFilePath) {
|
|
102
|
+
const configFileContent = (0, cloudutils_1.readFileSync)(configFilePath);
|
|
103
|
+
const regex = /\${([^}]+)}/g; // Regex to match ${VAR_NAME} style placeholders
|
|
104
|
+
return configFileContent.replace(regex, (_, g1) => {
|
|
105
|
+
return process.env[g1] || ""; // If the env variable is not set, return an empty string.
|
|
106
|
+
});
|
|
107
|
+
}
|
|
94
108
|
async function buildAppInDocker(appName) {
|
|
95
109
|
const logger = (0, cloudutils_1.getLogger)();
|
|
96
110
|
// Verify Docker is running
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-app-code.js","sourceRoot":"","sources":["../../../../applications/deploy-app-code.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,iDAAyC;AACzC,2BAA+C;AAC/C,
|
|
1
|
+
{"version":3,"file":"deploy-app-code.js","sourceRoot":"","sources":["../../../../applications/deploy-app-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function listApps(host: string): Promise<number>;
|
|
1
|
+
export declare function listApps(host: string, json: boolean): Promise<number>;
|
|
2
2
|
//# sourceMappingURL=list-apps.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-apps.d.ts","sourceRoot":"","sources":["../../../../applications/list-apps.ts"],"names":[],"mappings":"AAIA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"list-apps.d.ts","sourceRoot":"","sources":["../../../../applications/list-apps.ts"],"names":[],"mappings":"AAIA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA0C3E"}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.listApps = void 0;
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
8
|
const cloudutils_1 = require("../cloudutils");
|
|
9
|
-
async function listApps(host) {
|
|
9
|
+
async function listApps(host, json) {
|
|
10
10
|
const logger = (0, cloudutils_1.getLogger)();
|
|
11
11
|
const userCredentials = (0, cloudutils_1.getCloudCredentials)();
|
|
12
12
|
const bearerToken = "Bearer " + userCredentials.token;
|
|
@@ -16,17 +16,25 @@ async function listApps(host) {
|
|
|
16
16
|
Authorization: bearerToken,
|
|
17
17
|
},
|
|
18
18
|
});
|
|
19
|
-
const
|
|
20
|
-
if (
|
|
19
|
+
const applications = list.data;
|
|
20
|
+
if (applications.length === 0) {
|
|
21
21
|
logger.info("No applications found");
|
|
22
22
|
return 1;
|
|
23
23
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
if (json) {
|
|
25
|
+
console.log(JSON.stringify(applications));
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
logger.info(`Listing applications for ${userCredentials.userName}`);
|
|
29
|
+
applications.forEach(app => {
|
|
30
|
+
console.log(`Application Name: ${app.Name}`);
|
|
31
|
+
console.log(`ID: ${app.ID}`);
|
|
32
|
+
console.log(`Database Name: ${app.DatabaseName}`);
|
|
33
|
+
console.log(`Status: ${app.Status}`);
|
|
34
|
+
console.log(`Version: ${app.Version}`);
|
|
35
|
+
console.log('-------------------------');
|
|
36
|
+
});
|
|
27
37
|
}
|
|
28
|
-
logger.info(`Listing applications for ${userCredentials.userName}`);
|
|
29
|
-
console.log(JSON.stringify(formattedData));
|
|
30
38
|
return 0;
|
|
31
39
|
}
|
|
32
40
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-apps.js","sourceRoot":"","sources":["../../../../applications/list-apps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,8CAA+D;AAGxD,KAAK,UAAU,QAAQ,CAAC,IAAY;
|
|
1
|
+
{"version":3,"file":"list-apps.js","sourceRoot":"","sources":["../../../../applications/list-apps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,8CAA+D;AAGxD,KAAK,UAAU,QAAQ,CAAC,IAAY,EAAE,IAAa;IACxD,MAAM,MAAM,GAAG,IAAA,sBAAS,GAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,IAAA,gCAAmB,GAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;IAEtD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,eAAK,CAAC,GAAG,CAC1B,WAAW,IAAI,IAAI,eAAe,CAAC,QAAQ,cAAc,EACzD;YACE,OAAO,EAAE;gBACP,aAAa,EAAE,WAAW;aAC3B;SACF,CACF,CAAC;QACF,MAAM,YAAY,GAAkB,IAAI,CAAC,IAAqB,CAAC;QAC/D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACrC,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,4BAA4B,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAA;YACnE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACzB,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,eAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,CAAC;QACX,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,gCAAiC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;AACH,CAAC;AA1CD,4BA0CC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function registerApp(dbname: string, host: string
|
|
1
|
+
export declare function registerApp(dbname: string, host: string): Promise<number>;
|
|
2
2
|
//# sourceMappingURL=register-app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-app.d.ts","sourceRoot":"","sources":["../../../../applications/register-app.ts"],"names":[],"mappings":"AAIA,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"register-app.d.ts","sourceRoot":"","sources":["../../../../applications/register-app.ts"],"names":[],"mappings":"AAIA,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsC/E"}
|
|
@@ -7,7 +7,7 @@ exports.registerApp = void 0;
|
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
8
|
const cloudutils_1 = require("../cloudutils");
|
|
9
9
|
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
async function registerApp(dbname, host
|
|
10
|
+
async function registerApp(dbname, host) {
|
|
11
11
|
const logger = (0, cloudutils_1.getLogger)();
|
|
12
12
|
const userCredentials = (0, cloudutils_1.getCloudCredentials)();
|
|
13
13
|
const bearerToken = "Bearer " + userCredentials.token;
|
|
@@ -20,7 +20,6 @@ async function registerApp(dbname, host, machines) {
|
|
|
20
20
|
const register = await axios_1.default.put(`https://${host}/${userCredentials.userName}/application`, {
|
|
21
21
|
name: appName,
|
|
22
22
|
database: dbname,
|
|
23
|
-
max_vms: machines,
|
|
24
23
|
}, {
|
|
25
24
|
headers: {
|
|
26
25
|
"Content-Type": "application/json",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-app.js","sourceRoot":"","sources":["../../../../applications/register-app.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,8CAA+D;AAC/D,0DAA6B;AAEtB,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,IAAY
|
|
1
|
+
{"version":3,"file":"register-app.js","sourceRoot":"","sources":["../../../../applications/register-app.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,8CAA+D;AAC/D,0DAA6B;AAEtB,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,IAAY;IAC5D,MAAM,MAAM,GAAG,IAAA,sBAAS,GAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,IAAA,gCAAmB,GAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;IAEtD,8DAA8D;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAqB,CAAC;IAC1F,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC;IACjC,MAAM,CAAC,IAAI,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,IAAI,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAA;IAElD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAC9B,WAAW,IAAI,IAAI,eAAe,CAAC,QAAQ,cAAc,EACzD;YACE,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,MAAM;SACjB,EACD;YACE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,WAAW;aAC3B;SACF,CACF,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAc,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,IAAI,EAAE,CAAC,CAAC;QACtC,OAAO,CAAC,CAAC;IACX,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,eAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,KAAK,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,OAAO,CAAC,CAAC;QACX,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,KAAM,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACnF,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;AACH,CAAC;AAtCD,kCAsCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../applications/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../applications/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function updateApp(host: string
|
|
1
|
+
export declare function updateApp(host: string): Promise<number>;
|
|
2
2
|
//# sourceMappingURL=update-app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-app.d.ts","sourceRoot":"","sources":["../../../../applications/update-app.ts"],"names":[],"mappings":"AAKA,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"update-app.d.ts","sourceRoot":"","sources":["../../../../applications/update-app.ts"],"names":[],"mappings":"AAKA,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsC7D"}
|
|
@@ -7,7 +7,7 @@ exports.updateApp = void 0;
|
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
8
|
const cloudutils_1 = require("../cloudutils");
|
|
9
9
|
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
async function updateApp(host
|
|
10
|
+
async function updateApp(host) {
|
|
11
11
|
const logger = (0, cloudutils_1.getLogger)();
|
|
12
12
|
const userCredentials = (0, cloudutils_1.getCloudCredentials)();
|
|
13
13
|
const bearerToken = "Bearer " + userCredentials.token;
|
|
@@ -17,10 +17,9 @@ async function updateApp(host, machines) {
|
|
|
17
17
|
logger.info(`Loaded application name from package.json: ${appName}`);
|
|
18
18
|
logger.info(`Updating application: ${appName}`);
|
|
19
19
|
try {
|
|
20
|
-
logger.info(`Updating application ${appName}
|
|
20
|
+
logger.info(`Updating application ${appName}`);
|
|
21
21
|
const update = await axios_1.default.patch(`https://${host}/${userCredentials.userName}/application/${appName}`, {
|
|
22
22
|
name: appName,
|
|
23
|
-
max_vms: machines
|
|
24
23
|
}, {
|
|
25
24
|
headers: {
|
|
26
25
|
"Content-Type": "application/json",
|
|
@@ -29,7 +28,6 @@ async function updateApp(host, machines) {
|
|
|
29
28
|
});
|
|
30
29
|
const application = update.data;
|
|
31
30
|
logger.info(`Successfully updated: ${application.Name}`);
|
|
32
|
-
console.log(JSON.stringify({ "Name": application.Name, "ID": application.ID, "Version": application.Version, "MaxVMs": application.MaxVMs }));
|
|
33
31
|
return 0;
|
|
34
32
|
}
|
|
35
33
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-app.js","sourceRoot":"","sources":["../../../../applications/update-app.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,8CAA+D;AAE/D,0DAA6B;AAEtB,KAAK,UAAU,SAAS,CAAC,IAAY
|
|
1
|
+
{"version":3,"file":"update-app.js","sourceRoot":"","sources":["../../../../applications/update-app.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,8CAA+D;AAE/D,0DAA6B;AAEtB,KAAK,UAAU,SAAS,CAAC,IAAY;IAC1C,MAAM,MAAM,GAAI,IAAA,sBAAS,GAAE,CAAC;IAC5B,MAAM,eAAe,GAAG,IAAA,gCAAmB,GAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;IAEtD,8DAA8D;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAqB,CAAC;IAC1F,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC;IACjC,MAAM,CAAC,IAAI,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,IAAI,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAA;IAE/C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,eAAK,CAAC,KAAK,CAC9B,WAAW,IAAI,IAAI,eAAe,CAAC,QAAQ,gBAAgB,OAAO,EAAE,EACpE;YACE,IAAI,EAAE,OAAO;SACd,EACD;YACE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,WAAW;aAC3B;SACF,CACF,CAAC;QACF,MAAM,WAAW,GAAgB,MAAM,CAAC,IAAmB,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,yBAAyB,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC;IACX,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,eAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,gCAAgC,OAAO,KAAK,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7E,OAAO,CAAC,CAAC;QACX,CAAC;aAAM,CAAC;YACL,CAAW,CAAC,OAAO,GAAG,gCAAgC,OAAO,KAAM,CAAW,CAAC,OAAO,EAAE,CAAC;YAC1F,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;AACH,CAAC;AAtCD,8BAsCC"}
|
|
@@ -50,19 +50,17 @@ applicationCommands
|
|
|
50
50
|
.command('register')
|
|
51
51
|
.description('Register a new application')
|
|
52
52
|
.requiredOption('-d, --database <string>', 'Specify the app database name')
|
|
53
|
-
.option('-m, --machines <string>', 'Number of VMs to deploy', '1')
|
|
54
53
|
.action(async (options) => {
|
|
55
54
|
const { host } = applicationCommands.opts();
|
|
56
|
-
const exitCode = await (0, applications_1.registerApp)(options.database, host
|
|
55
|
+
const exitCode = await (0, applications_1.registerApp)(options.database, host);
|
|
57
56
|
process.exit(exitCode);
|
|
58
57
|
});
|
|
59
58
|
applicationCommands
|
|
60
59
|
.command('update')
|
|
61
60
|
.description('Update an application')
|
|
62
|
-
.
|
|
63
|
-
.action(async (options) => {
|
|
61
|
+
.action(async () => {
|
|
64
62
|
const { host } = applicationCommands.opts();
|
|
65
|
-
const exitCode = await (0, applications_1.updateApp)(host
|
|
63
|
+
const exitCode = await (0, applications_1.updateApp)(host);
|
|
66
64
|
process.exit(exitCode);
|
|
67
65
|
});
|
|
68
66
|
applicationCommands
|
|
@@ -85,9 +83,10 @@ applicationCommands
|
|
|
85
83
|
applicationCommands
|
|
86
84
|
.command('list')
|
|
87
85
|
.description('List all deployed applications')
|
|
88
|
-
.
|
|
86
|
+
.option('--json', 'Emit JSON output')
|
|
87
|
+
.action(async (options) => {
|
|
89
88
|
const { host } = applicationCommands.opts();
|
|
90
|
-
const exitCode = await (0, applications_1.listApps)(host);
|
|
89
|
+
const exitCode = await (0, applications_1.listApps)(host, options.json);
|
|
91
90
|
process.exit(exitCode);
|
|
92
91
|
});
|
|
93
92
|
applicationCommands
|
|
@@ -118,9 +117,10 @@ userdbCommands
|
|
|
118
117
|
userdbCommands
|
|
119
118
|
.command('status')
|
|
120
119
|
.argument('<string>', 'database name')
|
|
121
|
-
.
|
|
120
|
+
.option('--json', 'Emit JSON output')
|
|
121
|
+
.action((async (dbname, options) => {
|
|
122
122
|
const { host } = userdbCommands.opts();
|
|
123
|
-
await (0, userdb_1.getUserDb)(host, dbname);
|
|
123
|
+
await (0, userdb_1.getUserDb)(host, dbname, options.json);
|
|
124
124
|
}));
|
|
125
125
|
userdbCommands
|
|
126
126
|
.command('delete')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../cli.ts"],"names":[],"mappings":";;;AAEA,iDAOwB;AACxB,yCAAoC;AACpC,mCAAgC;AAChC,yCAA0C;AAC1C,qCAAiE;AACjE,6CAAgD;AAEhD,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,2EAA2E;AAEzH,8DAA8D;AAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAwB,CAAC;AAC5E,OAAO;IACL,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAE/B,qBAAqB;AACrB,qBAAqB;AACrB,qBAAqB;AAErB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,sBAAsB,CAAC;KACnC,cAAc,CAAC,yBAAyB,EAAE,UAAU,CAAC;KACrD,MAAM,CAAC,KAAK,EAAE,OAA6B,EAAE,EAAE;IAC9C,MAAM,QAAQ,GAAG,MAAM,IAAA,aAAK,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,0CAA0C,CAAC;KACvD,cAAc,CAAC,yBAAyB,EAAE,UAAU,CAAC;KACrD,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,YAAY,CAAC;KAC/D,MAAM,CAAC,KAAK,EAAE,OAA0C,EAAE,EAAE;IAC3D,IAAI,CAAC,IAAA,6BAAgB,GAAE,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAA,aAAK,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAY,EAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEL,6BAA6B;AAC7B,6BAA6B;AAC7B,6BAA6B;AAE7B,MAAM,mBAAmB,GAAG,OAAO;KAChC,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,+BAA+B,CAAC;KAC5C,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAA;AAElE,mBAAmB;KAChB,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,4BAA4B,CAAC;KACzC,cAAc,CAAC,yBAAyB,EAAE,+BAA+B,CAAC;KAC1E,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { DBOSCloudCredentials } from "./login";
|
|
3
3
|
import { Logger } from "winston";
|
|
4
|
+
export declare const dbosConfigFilePath = "dbos-config.yaml";
|
|
4
5
|
export declare function getLogger(): Logger;
|
|
5
6
|
export declare function getCloudCredentials(): DBOSCloudCredentials;
|
|
6
7
|
export declare function credentialsExist(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloudutils.d.ts","sourceRoot":"","sources":["../../../cloudutils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAe,MAAM,SAAS,CAAC;AAI5D,OAAO,EAAoC,MAAM,EAAE,MAAM,SAAS,CAAC;AAEnE,wBAAgB,SAAS,IAAI,MAAM,CASlC;AAqBD,wBAAgB,mBAAmB,IAAI,oBAAoB,CAW1D;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAGD,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBhF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,cAAuB,GAAG,MAAM,GAAG,MAAM,CAa7F;AAED,eAAO,MAAM,KAAK,OAAQ,MAAM,qBAA0C,CAAC;AAE3E,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAGrC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEhE"}
|
|
1
|
+
{"version":3,"file":"cloudutils.d.ts","sourceRoot":"","sources":["../../../cloudutils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAe,MAAM,SAAS,CAAC;AAI5D,OAAO,EAAoC,MAAM,EAAE,MAAM,SAAS,CAAC;AAEnE,eAAO,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,wBAAgB,SAAS,IAAI,MAAM,CASlC;AAqBD,wBAAgB,mBAAmB,IAAI,oBAAoB,CAW1D;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAGD,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBhF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,cAAuB,GAAG,MAAM,GAAG,MAAM,CAa7F;AAED,eAAO,MAAM,KAAK,OAAQ,MAAM,qBAA0C,CAAC;AAE3E,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAGrC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEhE"}
|
|
@@ -3,11 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createDirectory = exports.sleep = exports.readFileSync = exports.runCommand = exports.credentialsExist = exports.getCloudCredentials = exports.getLogger = void 0;
|
|
6
|
+
exports.createDirectory = exports.sleep = exports.readFileSync = exports.runCommand = exports.credentialsExist = exports.getCloudCredentials = exports.getLogger = exports.dbosConfigFilePath = void 0;
|
|
7
7
|
const login_1 = require("./login");
|
|
8
8
|
const fs_1 = __importDefault(require("fs"));
|
|
9
9
|
const child_process_1 = require("child_process");
|
|
10
10
|
const winston_1 = require("winston");
|
|
11
|
+
exports.dbosConfigFilePath = "dbos-config.yaml";
|
|
11
12
|
function getLogger() {
|
|
12
13
|
const winstonTransports = [];
|
|
13
14
|
winstonTransports.push(new winston_1.transports.Console({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloudutils.js","sourceRoot":"","sources":["../../../cloudutils.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA4D;AAE5D,4CAAoB;AACpB,iDAAoD;AACpD,qCAAmE;
|
|
1
|
+
{"version":3,"file":"cloudutils.js","sourceRoot":"","sources":["../../../cloudutils.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,6 @@ export interface UserDBInstance {
|
|
|
6
6
|
}
|
|
7
7
|
export declare function createUserDb(host: string, dbName: string, adminName: string, adminPassword: string, sync: boolean): Promise<void>;
|
|
8
8
|
export declare function deleteUserDb(host: string, dbName: string): Promise<void>;
|
|
9
|
-
export declare function getUserDb(host: string, dbName: string): Promise<void>;
|
|
9
|
+
export declare function getUserDb(host: string, dbName: string, json: boolean): Promise<void>;
|
|
10
10
|
export declare function getUserDBInfo(host: string, dbName: string): Promise<UserDBInstance>;
|
|
11
11
|
//# sourceMappingURL=userdb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userdb.d.ts","sourceRoot":"","sources":["../../../userdb.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,iBAmCvH;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAoB9D;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"userdb.d.ts","sourceRoot":"","sources":["../../../userdb.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,iBAmCvH;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAoB9D;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,iBAqB1E;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAYzF"}
|
|
@@ -21,7 +21,7 @@ async function createUserDb(host, dbName, adminName, adminPassword, sync) {
|
|
|
21
21
|
logger.info(`Successfully started creating database: ${dbName}`);
|
|
22
22
|
if (sync) {
|
|
23
23
|
let status = "";
|
|
24
|
-
while (status != "available") {
|
|
24
|
+
while (status != "available" && status != "backing-up") {
|
|
25
25
|
await (0, utils_1.sleep)(30000);
|
|
26
26
|
const userDBInfo = await getUserDBInfo(host, dbName);
|
|
27
27
|
logger.info(userDBInfo);
|
|
@@ -62,11 +62,20 @@ async function deleteUserDb(host, dbName) {
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
exports.deleteUserDb = deleteUserDb;
|
|
65
|
-
async function getUserDb(host, dbName) {
|
|
65
|
+
async function getUserDb(host, dbName, json) {
|
|
66
66
|
const logger = (0, cloudutils_1.getLogger)();
|
|
67
67
|
try {
|
|
68
68
|
const userDBInfo = await getUserDBInfo(host, dbName);
|
|
69
|
-
|
|
69
|
+
if (json) {
|
|
70
|
+
console.log(JSON.stringify(userDBInfo));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
logger.info(`Retrieving status of: ${dbName}`);
|
|
74
|
+
console.log(`DB Name: ${userDBInfo.DBName}`);
|
|
75
|
+
console.log(`Status: ${userDBInfo.Status}`);
|
|
76
|
+
console.log(`Host Name: ${userDBInfo.HostName}`);
|
|
77
|
+
console.log(`Port: ${userDBInfo.Port}`);
|
|
78
|
+
}
|
|
70
79
|
}
|
|
71
80
|
catch (e) {
|
|
72
81
|
if (axios_1.default.isAxiosError(e) && e.response) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userdb.js","sourceRoot":"","sources":["../../../userdb.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,6CAA8D;AAC9D,2CAAwC;AASjC,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,SAAiB,EAAE,aAAqB,EAAE,IAAa;IACtH,MAAM,MAAM,GAAG,IAAA,sBAAS,GAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,IAAA,gCAAmB,GAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;IAEtD,IAAI,CAAC;QACH,MAAM,eAAK,CAAC,IAAI,CACd,WAAW,IAAI,IAAI,eAAe,CAAC,QAAQ,mBAAmB,EAC9D,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,EACpE;YACE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,WAAW;aAC3B;SACF,CACF,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,2CAA2C,MAAM,EAAE,CAAC,CAAC;QAEjE,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,OAAO,MAAM,IAAI,WAAW,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"userdb.js","sourceRoot":"","sources":["../../../userdb.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/userdb.ts
CHANGED
|
@@ -30,7 +30,7 @@ export async function createUserDb(host: string, dbName: string, adminName: stri
|
|
|
30
30
|
|
|
31
31
|
if (sync) {
|
|
32
32
|
let status = "";
|
|
33
|
-
while (status != "available") {
|
|
33
|
+
while (status != "available" && status != "backing-up") {
|
|
34
34
|
await sleep(30000);
|
|
35
35
|
const userDBInfo = await getUserDBInfo(host, dbName);
|
|
36
36
|
logger.info(userDBInfo);
|
|
@@ -68,12 +68,20 @@ export async function deleteUserDb(host: string, dbName: string) {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
export async function getUserDb(host: string, dbName: string) {
|
|
71
|
+
export async function getUserDb(host: string, dbName: string, json: boolean) {
|
|
72
72
|
const logger = getLogger();
|
|
73
73
|
|
|
74
74
|
try {
|
|
75
75
|
const userDBInfo = await getUserDBInfo(host, dbName);
|
|
76
|
-
|
|
76
|
+
if (json) {
|
|
77
|
+
console.log(JSON.stringify(userDBInfo));
|
|
78
|
+
} else {
|
|
79
|
+
logger.info(`Retrieving status of: ${dbName}`);
|
|
80
|
+
console.log(`DB Name: ${userDBInfo.DBName}`);
|
|
81
|
+
console.log(`Status: ${userDBInfo.Status}`);
|
|
82
|
+
console.log(`Host Name: ${userDBInfo.HostName}`);
|
|
83
|
+
console.log(`Port: ${userDBInfo.Port}`);
|
|
84
|
+
}
|
|
77
85
|
} catch (e) {
|
|
78
86
|
if (axios.isAxiosError(e) && e.response) {
|
|
79
87
|
logger.error(`Error getting database ${dbName}: ${e.response?.data}`);
|