@dbos-inc/dbos-cloud 1.0.2 → 1.1.9-preview.gb854acef85

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.
Files changed (119) hide show
  1. package/applications/delete-app.ts +1 -1
  2. package/applications/deploy-app-code.ts +2 -2
  3. package/applications/get-app-info.ts +2 -2
  4. package/applications/get-app-logs.ts +1 -1
  5. package/applications/index.ts +6 -6
  6. package/applications/list-apps.ts +2 -2
  7. package/applications/register-app.ts +1 -1
  8. package/applications/update-app.ts +2 -2
  9. package/cli.ts +40 -14
  10. package/dashboards.ts +1 -1
  11. package/dist/applications/delete-app.d.ts.map +1 -0
  12. package/dist/applications/delete-app.js +34 -0
  13. package/dist/applications/delete-app.js.map +1 -0
  14. package/dist/applications/deploy-app-code.d.ts.map +1 -0
  15. package/dist/{packages/dbos-cloud/applications → applications}/deploy-app-code.js +23 -30
  16. package/dist/applications/deploy-app-code.js.map +1 -0
  17. package/dist/applications/get-app-info.d.ts.map +1 -0
  18. package/dist/applications/get-app-info.js +43 -0
  19. package/dist/applications/get-app-info.js.map +1 -0
  20. package/dist/applications/get-app-logs.d.ts.map +1 -0
  21. package/dist/{packages/dbos-cloud/applications → applications}/get-app-logs.js +9 -16
  22. package/dist/applications/get-app-logs.js.map +1 -0
  23. package/dist/applications/index.d.ts +7 -0
  24. package/dist/applications/index.d.ts.map +1 -0
  25. package/dist/applications/index.js +7 -0
  26. package/dist/applications/index.js.map +1 -0
  27. package/dist/applications/list-apps.d.ts.map +1 -0
  28. package/dist/applications/list-apps.js +41 -0
  29. package/dist/applications/list-apps.js.map +1 -0
  30. package/dist/applications/register-app.d.ts.map +1 -0
  31. package/dist/applications/register-app.js +39 -0
  32. package/dist/applications/register-app.js.map +1 -0
  33. package/dist/applications/types.d.ts.map +1 -0
  34. package/dist/{packages/dbos-cloud/applications → applications}/types.js +1 -5
  35. package/dist/applications/types.js.map +1 -0
  36. package/dist/applications/update-app.d.ts.map +1 -0
  37. package/dist/applications/update-app.js +38 -0
  38. package/dist/applications/update-app.js.map +1 -0
  39. package/dist/cli.d.ts.map +1 -0
  40. package/dist/{packages/dbos-cloud/cli.js → cli.js} +53 -35
  41. package/dist/cli.js.map +1 -0
  42. package/dist/{packages/dbos-cloud/cloudutils.d.ts → cloudutils.d.ts} +1 -1
  43. package/dist/cloudutils.d.ts.map +1 -0
  44. package/dist/{packages/dbos-cloud/cloudutils.js → cloudutils.js} +34 -52
  45. package/dist/cloudutils.js.map +1 -0
  46. package/dist/dashboards.d.ts.map +1 -0
  47. package/dist/dashboards.js +55 -0
  48. package/dist/dashboards.js.map +1 -0
  49. package/dist/login.d.ts.map +1 -0
  50. package/dist/{packages/dbos-cloud/login.js → login.js} +17 -25
  51. package/dist/login.js.map +1 -0
  52. package/dist/package.json +44 -0
  53. package/dist/register.d.ts.map +1 -0
  54. package/dist/register.js +86 -0
  55. package/dist/register.js.map +1 -0
  56. package/dist/userdb.d.ts.map +1 -0
  57. package/dist/{packages/dbos-cloud/userdb.js → userdb.js} +34 -47
  58. package/dist/userdb.js.map +1 -0
  59. package/login.ts +1 -1
  60. package/package.json +6 -3
  61. package/register.ts +2 -2
  62. package/tsconfig.json +4 -2
  63. package/userdb.ts +1 -2
  64. package/dist/packages/dbos-cloud/applications/delete-app.d.ts.map +0 -1
  65. package/dist/packages/dbos-cloud/applications/delete-app.js +0 -41
  66. package/dist/packages/dbos-cloud/applications/delete-app.js.map +0 -1
  67. package/dist/packages/dbos-cloud/applications/deploy-app-code.d.ts.map +0 -1
  68. package/dist/packages/dbos-cloud/applications/deploy-app-code.js.map +0 -1
  69. package/dist/packages/dbos-cloud/applications/get-app-info.d.ts.map +0 -1
  70. package/dist/packages/dbos-cloud/applications/get-app-info.js +0 -50
  71. package/dist/packages/dbos-cloud/applications/get-app-info.js.map +0 -1
  72. package/dist/packages/dbos-cloud/applications/get-app-logs.d.ts.map +0 -1
  73. package/dist/packages/dbos-cloud/applications/get-app-logs.js.map +0 -1
  74. package/dist/packages/dbos-cloud/applications/index.d.ts +0 -7
  75. package/dist/packages/dbos-cloud/applications/index.d.ts.map +0 -1
  76. package/dist/packages/dbos-cloud/applications/index.js +0 -16
  77. package/dist/packages/dbos-cloud/applications/index.js.map +0 -1
  78. package/dist/packages/dbos-cloud/applications/list-apps.d.ts.map +0 -1
  79. package/dist/packages/dbos-cloud/applications/list-apps.js +0 -48
  80. package/dist/packages/dbos-cloud/applications/list-apps.js.map +0 -1
  81. package/dist/packages/dbos-cloud/applications/register-app.d.ts.map +0 -1
  82. package/dist/packages/dbos-cloud/applications/register-app.js +0 -46
  83. package/dist/packages/dbos-cloud/applications/register-app.js.map +0 -1
  84. package/dist/packages/dbos-cloud/applications/types.d.ts.map +0 -1
  85. package/dist/packages/dbos-cloud/applications/types.js.map +0 -1
  86. package/dist/packages/dbos-cloud/applications/update-app.d.ts.map +0 -1
  87. package/dist/packages/dbos-cloud/applications/update-app.js +0 -45
  88. package/dist/packages/dbos-cloud/applications/update-app.js.map +0 -1
  89. package/dist/packages/dbos-cloud/cli.d.ts.map +0 -1
  90. package/dist/packages/dbos-cloud/cli.js.map +0 -1
  91. package/dist/packages/dbos-cloud/cloudutils.d.ts.map +0 -1
  92. package/dist/packages/dbos-cloud/cloudutils.js.map +0 -1
  93. package/dist/packages/dbos-cloud/dashboards.d.ts.map +0 -1
  94. package/dist/packages/dbos-cloud/dashboards.js +0 -63
  95. package/dist/packages/dbos-cloud/dashboards.js.map +0 -1
  96. package/dist/packages/dbos-cloud/login.d.ts.map +0 -1
  97. package/dist/packages/dbos-cloud/login.js.map +0 -1
  98. package/dist/packages/dbos-cloud/register.d.ts.map +0 -1
  99. package/dist/packages/dbos-cloud/register.js +0 -116
  100. package/dist/packages/dbos-cloud/register.js.map +0 -1
  101. package/dist/packages/dbos-cloud/userdb.d.ts.map +0 -1
  102. package/dist/packages/dbos-cloud/userdb.js.map +0 -1
  103. package/dist/src/utils.d.ts +0 -6
  104. package/dist/src/utils.d.ts.map +0 -1
  105. package/dist/src/utils.js +0 -51
  106. package/dist/src/utils.js.map +0 -1
  107. /package/dist/{packages/dbos-cloud/applications → applications}/delete-app.d.ts +0 -0
  108. /package/dist/{packages/dbos-cloud/applications → applications}/deploy-app-code.d.ts +0 -0
  109. /package/dist/{packages/dbos-cloud/applications → applications}/get-app-info.d.ts +0 -0
  110. /package/dist/{packages/dbos-cloud/applications → applications}/get-app-logs.d.ts +0 -0
  111. /package/dist/{packages/dbos-cloud/applications → applications}/list-apps.d.ts +0 -0
  112. /package/dist/{packages/dbos-cloud/applications → applications}/register-app.d.ts +0 -0
  113. /package/dist/{packages/dbos-cloud/applications → applications}/types.d.ts +0 -0
  114. /package/dist/{packages/dbos-cloud/applications → applications}/update-app.d.ts +0 -0
  115. /package/dist/{packages/dbos-cloud/cli.d.ts → cli.d.ts} +0 -0
  116. /package/dist/{packages/dbos-cloud/dashboards.d.ts → dashboards.d.ts} +0 -0
  117. /package/dist/{packages/dbos-cloud/login.d.ts → login.d.ts} +0 -0
  118. /package/dist/{packages/dbos-cloud/register.d.ts → register.d.ts} +0 -0
  119. /package/dist/{packages/dbos-cloud/userdb.d.ts → userdb.d.ts} +0 -0
@@ -1,19 +1,13 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.login = exports.authenticate = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
- const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
9
- const jwks_rsa_1 = __importDefault(require("jwks-rsa"));
10
- const cloudutils_1 = require("./cloudutils");
1
+ import axios from "axios";
2
+ import jwt from 'jsonwebtoken';
3
+ import jwksClient from 'jwks-rsa';
4
+ import { getLogger, handleAPIErrors, isCloudAPIErrorResponse, sleep, writeCredentials } from "./cloudutils.js";
11
5
  const DBOSCloudHost = process.env.DBOS_DOMAIN || "cloud.dbos.dev";
12
6
  const productionEnvironment = DBOSCloudHost === "cloud.dbos.dev";
13
7
  const Auth0Domain = productionEnvironment ? 'login.dbos.dev' : 'dbos-inc.us.auth0.com';
14
8
  const DBOSClientID = productionEnvironment ? '6p7Sjxf13cyLMkdwn14MxlH7JdhILled' : 'G38fLmVErczEo9ioCFjVIHea6yd0qMZu';
15
9
  const DBOSCloudIdentifier = 'dbos-cloud-api';
16
- const client = (0, jwks_rsa_1.default)({
10
+ const client = jwksClient({
17
11
  jwksUri: `https://${Auth0Domain}/.well-known/jwks.json`
18
12
  });
19
13
  async function getSigningKey(kid) {
@@ -21,13 +15,13 @@ async function getSigningKey(kid) {
21
15
  return key.getPublicKey();
22
16
  }
23
17
  async function verifyToken(token) {
24
- const decoded = jsonwebtoken_1.default.decode(token, { complete: true });
18
+ const decoded = jwt.decode(token, { complete: true });
25
19
  if (!decoded || typeof decoded === 'string' || !decoded.header.kid) {
26
20
  throw new Error('Invalid token');
27
21
  }
28
22
  const signingKey = await getSigningKey(decoded.header.kid);
29
23
  return new Promise((resolve, reject) => {
30
- jsonwebtoken_1.default.verify(token, signingKey, { algorithms: ['RS256'] }, (err, verifiedToken) => {
24
+ jwt.verify(token, signingKey, { algorithms: ['RS256'] }, (err, verifiedToken) => {
31
25
  if (err) {
32
26
  reject(err);
33
27
  }
@@ -38,7 +32,7 @@ async function verifyToken(token) {
38
32
  });
39
33
  }
40
34
  // Redirect a user to auth0 to authenticate, retrieving a JWT bearer token
41
- async function authenticate(logger) {
35
+ export async function authenticate(logger) {
42
36
  logger.info(`Please authenticate with DBOS Cloud!`);
43
37
  const deviceCodeRequest = {
44
38
  method: 'POST',
@@ -48,7 +42,7 @@ async function authenticate(logger) {
48
42
  };
49
43
  let deviceCodeResponse;
50
44
  try {
51
- const response = await axios_1.default.request(deviceCodeRequest);
45
+ const response = await axios.request(deviceCodeRequest);
52
46
  deviceCodeResponse = response.data;
53
47
  }
54
48
  catch (e) {
@@ -73,9 +67,9 @@ async function authenticate(logger) {
73
67
  let elapsedTimeSec = 0;
74
68
  while (elapsedTimeSec < deviceCodeResponse.expires_in) {
75
69
  try {
76
- await (0, cloudutils_1.sleep)(deviceCodeResponse.interval * 1000);
70
+ await sleep(deviceCodeResponse.interval * 1000);
77
71
  elapsedTimeSec += deviceCodeResponse.interval;
78
- const response = await axios_1.default.request(tokenRequest);
72
+ const response = await axios.request(tokenRequest);
79
73
  tokenResponse = response.data;
80
74
  break;
81
75
  }
@@ -89,16 +83,15 @@ async function authenticate(logger) {
89
83
  await verifyToken(tokenResponse.access_token);
90
84
  return tokenResponse.access_token;
91
85
  }
92
- exports.authenticate = authenticate;
93
- async function login(host) {
94
- const logger = (0, cloudutils_1.getLogger)();
86
+ export async function login(host) {
87
+ const logger = getLogger();
95
88
  const token = await authenticate(logger);
96
89
  if (token === null) {
97
90
  return 1;
98
91
  }
99
92
  const bearerToken = "Bearer " + token;
100
93
  try {
101
- const response = await axios_1.default.get(`https://${host}/v1alpha1/user`, {
94
+ const response = await axios.get(`https://${host}/v1alpha1/user`, {
102
95
  headers: {
103
96
  "Content-Type": "application/json",
104
97
  Authorization: bearerToken,
@@ -109,14 +102,14 @@ async function login(host) {
109
102
  token: token,
110
103
  userName: username,
111
104
  };
112
- (0, cloudutils_1.writeCredentials)(credentials);
105
+ writeCredentials(credentials);
113
106
  logger.info(`Successfully logged in as ${credentials.userName}!`);
114
107
  }
115
108
  catch (e) {
116
109
  const errorLabel = `Failed to login`;
117
110
  const axiosError = e;
118
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
119
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
111
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
112
+ handleAPIErrors(errorLabel, axiosError);
120
113
  }
121
114
  else {
122
115
  logger.error(`${errorLabel}: ${e.message}`);
@@ -125,5 +118,4 @@ async function login(host) {
125
118
  }
126
119
  return 0;
127
120
  }
128
- exports.login = login;
129
121
  //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../login.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@dbos-inc/dbos-cloud",
3
+ "version": "1.1.9-preview.gb854acef85",
4
+ "description": "Tool for performing application deployment to DBOS cloud",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/dbos-inc/dbos-ts",
10
+ "directory": "packages/dbos-cloud"
11
+ },
12
+ "homepage": "https://docs.dbos.dev/",
13
+ "scripts": {
14
+ "build": "tsc --project tsconfig.json",
15
+ "test": "echo \"No tests\"",
16
+ "setversion": "grunt setversion"
17
+ },
18
+ "bin": {
19
+ "dbos-cloud": "./dist/cli.js"
20
+ },
21
+ "devDependencies": {
22
+ "@types/node": "^20.6.3",
23
+ "@types/prompt-sync": "^4.2.3",
24
+ "@types/update-notifier": "^6.0.8",
25
+ "@types/validator": "^13.11.9",
26
+ "grunt": "^1.6.1",
27
+ "nerdbank-gitversioning": "^3.6.133",
28
+ "typescript": "^5.3.3"
29
+ },
30
+ "dependencies": {
31
+ "axios": "^1.6.7",
32
+ "chalk": "4.1.2",
33
+ "commander": "^12.0.0",
34
+ "fast-glob": "^3.3.2",
35
+ "jsonwebtoken": "^9.0.2",
36
+ "jszip": "^3.10.1",
37
+ "jwks-rsa": "^3.1.0",
38
+ "prompt-sync": "^4.2.0",
39
+ "update-notifier": "^7.0.0",
40
+ "validator": "^13.11.0",
41
+ "winston": "^3.12.0",
42
+ "winston-transport": "^4.7.0"
43
+ }
44
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../register.ts"],"names":[],"mappings":"AAkBA,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsElF"}
@@ -0,0 +1,86 @@
1
+ import axios from "axios";
2
+ import { handleAPIErrors, getCloudCredentials, getLogger, isCloudAPIErrorResponse, credentialsExist, writeCredentials, deleteCredentials } from "./cloudutils.js";
3
+ import readline from 'readline';
4
+ import { authenticate } from "./login.js";
5
+ import * as validator from 'validator';
6
+ const rl = readline.createInterface({
7
+ input: process.stdin,
8
+ output: process.stdout
9
+ });
10
+ function isValidUsername(username) {
11
+ if (username.length < 3 || username.length > 30) {
12
+ return false;
13
+ }
14
+ return validator.matches(username, "^[a-z0-9_]+$");
15
+ }
16
+ export async function registerUser(username, host) {
17
+ const logger = getLogger();
18
+ let givenName = "";
19
+ let familyName = "";
20
+ let company = "";
21
+ if (!isValidUsername(username)) {
22
+ logger.error("Invalid username. Usernames must be between 3 and 30 characters long and contain only lowercase letters, underscores, and numbers.");
23
+ return 1;
24
+ }
25
+ if (!credentialsExist()) {
26
+ logger.info("Welcome to DBOS Cloud!");
27
+ logger.info("Before creating an account, please tell us a bit about yourself!");
28
+ const prompt = (query) => new Promise((resolve) => rl.question(query, resolve));
29
+ givenName = await prompt("Enter First/Given Name: ");
30
+ familyName = await prompt("Enter Last/Family Name: ");
31
+ company = await prompt("Enter Company: ");
32
+ const bearerToken = await authenticate(logger);
33
+ if (bearerToken === null) {
34
+ return 1;
35
+ }
36
+ const credentials = {
37
+ token: bearerToken,
38
+ userName: username,
39
+ };
40
+ writeCredentials(credentials);
41
+ }
42
+ else {
43
+ const userCredentials = getCloudCredentials();
44
+ if (userCredentials.userName !== username) {
45
+ logger.error(`You are trying to register ${username}, but are currently authenticated as ${userCredentials.userName}. Please run "npx dbos-cloud logout".`);
46
+ return 1;
47
+ }
48
+ else {
49
+ logger.info(`You are currently authenticated as ${userCredentials.userName}. Registering ${userCredentials.userName} with DBOS Cloud...`);
50
+ }
51
+ }
52
+ const userCredentials = getCloudCredentials();
53
+ const bearerToken = "Bearer " + userCredentials.token;
54
+ const loginName = userCredentials.userName;
55
+ try {
56
+ // Register the user in DBOS Cloud
57
+ await axios.put(`https://${host}/v1alpha1/user`, {
58
+ name: loginName,
59
+ given_name: givenName,
60
+ family_name: familyName,
61
+ company: company,
62
+ }, {
63
+ headers: {
64
+ "Content-Type": "application/json",
65
+ Authorization: bearerToken,
66
+ },
67
+ });
68
+ logger.info(`${username} successfully registered!`);
69
+ }
70
+ catch (e) {
71
+ const errorLabel = `Failed to register user ${loginName}`;
72
+ const axiosError = e;
73
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
74
+ handleAPIErrors(errorLabel, axiosError);
75
+ }
76
+ else {
77
+ logger.error(`${errorLabel}: ${e.message}`);
78
+ }
79
+ if (credentialsExist()) {
80
+ deleteCredentials();
81
+ }
82
+ return 1;
83
+ }
84
+ return 0;
85
+ }
86
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../register.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userdb.d.ts","sourceRoot":"","sources":["../userdb.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,kBAwC3H;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAwB9D;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,kBAyB1E;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,kBAwC3D;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAYzF;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,kBA0B3F"}
@@ -1,18 +1,11 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.resetDBCredentials = exports.getUserDBInfo = exports.listUserDB = exports.getUserDb = exports.deleteUserDb = exports.createUserDb = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
- const cloudutils_1 = require("./cloudutils");
9
- const utils_1 = require("../../src/utils");
10
- async function createUserDb(host, dbName, appDBUsername, appDBPassword, sync) {
11
- const logger = (0, cloudutils_1.getLogger)();
12
- const userCredentials = (0, cloudutils_1.getCloudCredentials)();
1
+ import axios from "axios";
2
+ import { isCloudAPIErrorResponse, handleAPIErrors, getCloudCredentials, getLogger, sleep } from "./cloudutils.js";
3
+ export async function createUserDb(host, dbName, appDBUsername, appDBPassword, sync) {
4
+ const logger = getLogger();
5
+ const userCredentials = getCloudCredentials();
13
6
  const bearerToken = "Bearer " + userCredentials.token;
14
7
  try {
15
- await axios_1.default.post(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb`, { Name: dbName, AdminName: appDBUsername, AdminPassword: appDBPassword }, {
8
+ await axios.post(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb`, { Name: dbName, AdminName: appDBUsername, AdminPassword: appDBPassword }, {
16
9
  headers: {
17
10
  "Content-Type": "application/json",
18
11
  Authorization: bearerToken,
@@ -22,7 +15,7 @@ async function createUserDb(host, dbName, appDBUsername, appDBPassword, sync) {
22
15
  if (sync) {
23
16
  let status = "";
24
17
  while (status != "available" && status != "backing-up") {
25
- await (0, utils_1.sleep)(30000);
18
+ await sleep(30000);
26
19
  const userDBInfo = await getUserDBInfo(host, dbName);
27
20
  logger.info(userDBInfo);
28
21
  status = userDBInfo.Status;
@@ -34,8 +27,8 @@ async function createUserDb(host, dbName, appDBUsername, appDBPassword, sync) {
34
27
  catch (e) {
35
28
  const errorLabel = `Failed to create database ${dbName}`;
36
29
  const axiosError = e;
37
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
38
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
30
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
31
+ handleAPIErrors(errorLabel, axiosError);
39
32
  }
40
33
  else {
41
34
  logger.error(`${errorLabel}: ${e.message}`);
@@ -43,13 +36,12 @@ async function createUserDb(host, dbName, appDBUsername, appDBPassword, sync) {
43
36
  return 1;
44
37
  }
45
38
  }
46
- exports.createUserDb = createUserDb;
47
- async function deleteUserDb(host, dbName) {
48
- const logger = (0, cloudutils_1.getLogger)();
49
- const userCredentials = (0, cloudutils_1.getCloudCredentials)();
39
+ export async function deleteUserDb(host, dbName) {
40
+ const logger = getLogger();
41
+ const userCredentials = getCloudCredentials();
50
42
  const bearerToken = "Bearer " + userCredentials.token;
51
43
  try {
52
- await axios_1.default.delete(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb/${dbName}`, {
44
+ await axios.delete(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb/${dbName}`, {
53
45
  headers: {
54
46
  "Content-Type": "application/json",
55
47
  Authorization: bearerToken,
@@ -61,8 +53,8 @@ async function deleteUserDb(host, dbName) {
61
53
  catch (e) {
62
54
  const errorLabel = `Failed to delete database ${dbName}`;
63
55
  const axiosError = e;
64
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
65
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
56
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
57
+ handleAPIErrors(errorLabel, axiosError);
66
58
  }
67
59
  else {
68
60
  logger.error(`${errorLabel}: ${e.message}`);
@@ -70,9 +62,8 @@ async function deleteUserDb(host, dbName) {
70
62
  return 1;
71
63
  }
72
64
  }
73
- exports.deleteUserDb = deleteUserDb;
74
- async function getUserDb(host, dbName, json) {
75
- const logger = (0, cloudutils_1.getLogger)();
65
+ export async function getUserDb(host, dbName, json) {
66
+ const logger = getLogger();
76
67
  try {
77
68
  const userDBInfo = await getUserDBInfo(host, dbName);
78
69
  if (json) {
@@ -90,8 +81,8 @@ async function getUserDb(host, dbName, json) {
90
81
  catch (e) {
91
82
  const errorLabel = `Failed to retrieve database record ${dbName}`;
92
83
  const axiosError = e;
93
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
94
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
84
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
85
+ handleAPIErrors(errorLabel, axiosError);
95
86
  }
96
87
  else {
97
88
  logger.error(`${errorLabel}: ${e.message}`);
@@ -99,13 +90,12 @@ async function getUserDb(host, dbName, json) {
99
90
  return 1;
100
91
  }
101
92
  }
102
- exports.getUserDb = getUserDb;
103
- async function listUserDB(host, json) {
104
- const logger = (0, cloudutils_1.getLogger)();
93
+ export async function listUserDB(host, json) {
94
+ const logger = getLogger();
105
95
  try {
106
- const userCredentials = (0, cloudutils_1.getCloudCredentials)();
96
+ const userCredentials = getCloudCredentials();
107
97
  const bearerToken = "Bearer " + userCredentials.token;
108
- const res = await axios_1.default.get(`https://${host}/v1alpha1/${userCredentials.userName}/databases`, {
98
+ const res = await axios.get(`https://${host}/v1alpha1/${userCredentials.userName}/databases`, {
109
99
  headers: {
110
100
  "Content-Type": "application/json",
111
101
  Authorization: bearerToken,
@@ -132,8 +122,8 @@ async function listUserDB(host, json) {
132
122
  catch (e) {
133
123
  const errorLabel = `Failed to retrieve info`;
134
124
  const axiosError = e;
135
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
136
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
125
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
126
+ handleAPIErrors(errorLabel, axiosError);
137
127
  }
138
128
  else {
139
129
  logger.error(`${errorLabel}: ${e.message}`);
@@ -141,11 +131,10 @@ async function listUserDB(host, json) {
141
131
  return 1;
142
132
  }
143
133
  }
144
- exports.listUserDB = listUserDB;
145
- async function getUserDBInfo(host, dbName) {
146
- const userCredentials = (0, cloudutils_1.getCloudCredentials)();
134
+ export async function getUserDBInfo(host, dbName) {
135
+ const userCredentials = getCloudCredentials();
147
136
  const bearerToken = "Bearer " + userCredentials.token;
148
- const res = await axios_1.default.get(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb/info/${dbName}`, {
137
+ const res = await axios.get(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb/info/${dbName}`, {
149
138
  headers: {
150
139
  "Content-Type": "application/json",
151
140
  Authorization: bearerToken,
@@ -153,13 +142,12 @@ async function getUserDBInfo(host, dbName) {
153
142
  });
154
143
  return res.data;
155
144
  }
156
- exports.getUserDBInfo = getUserDBInfo;
157
- async function resetDBCredentials(host, dbName, appDBPassword) {
158
- const logger = (0, cloudutils_1.getLogger)();
159
- const userCredentials = (0, cloudutils_1.getCloudCredentials)();
145
+ export async function resetDBCredentials(host, dbName, appDBPassword) {
146
+ const logger = getLogger();
147
+ const userCredentials = getCloudCredentials();
160
148
  const bearerToken = "Bearer " + userCredentials.token;
161
149
  try {
162
- await axios_1.default.post(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb/${dbName}/credentials`, { Name: dbName, Password: appDBPassword }, {
150
+ await axios.post(`https://${host}/v1alpha1/${userCredentials.userName}/databases/userdb/${dbName}/credentials`, { Name: dbName, Password: appDBPassword }, {
163
151
  headers: {
164
152
  "Content-Type": "application/json",
165
153
  Authorization: bearerToken,
@@ -171,8 +159,8 @@ async function resetDBCredentials(host, dbName, appDBPassword) {
171
159
  catch (e) {
172
160
  const errorLabel = `Failed to reset user password for database ${dbName}`;
173
161
  const axiosError = e;
174
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
175
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
162
+ if (isCloudAPIErrorResponse(axiosError.response?.data)) {
163
+ handleAPIErrors(errorLabel, axiosError);
176
164
  }
177
165
  else {
178
166
  logger.error(`${errorLabel}: ${e.message}`);
@@ -180,5 +168,4 @@ async function resetDBCredentials(host, dbName, appDBPassword) {
180
168
  return 1;
181
169
  }
182
170
  }
183
- exports.resetDBCredentials = resetDBCredentials;
184
171
  //# sourceMappingURL=userdb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userdb.js","sourceRoot":"","sources":["../userdb.ts"],"names":[],"mappings":"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"}
package/login.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import axios, { AxiosError } from "axios";
2
2
  import jwt, { JwtPayload } from 'jsonwebtoken';
3
3
  import jwksClient from 'jwks-rsa';
4
- import { DBOSCloudCredentials, getLogger, handleAPIErrors, isCloudAPIErrorResponse, sleep, writeCredentials } from "./cloudutils";
4
+ import { DBOSCloudCredentials, getLogger, handleAPIErrors, isCloudAPIErrorResponse, sleep, writeCredentials } from "./cloudutils.js";
5
5
  import { Logger } from "winston";
6
6
 
7
7
  const DBOSCloudHost = process.env.DBOS_DOMAIN || "cloud.dbos.dev";
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@dbos-inc/dbos-cloud",
3
- "version": "1.0.2",
3
+ "version": "1.1.9-preview.gb854acef85",
4
4
  "description": "Tool for performing application deployment to DBOS cloud",
5
5
  "license": "MIT",
6
+ "type": "module",
6
7
  "repository": {
7
8
  "type": "git",
8
9
  "url": "https://github.com/dbos-inc/dbos-ts",
9
10
  "directory": "packages/dbos-cloud"
10
11
  },
11
- "main": "cli.ts",
12
12
  "homepage": "https://docs.dbos.dev/",
13
13
  "scripts": {
14
14
  "build": "tsc --project tsconfig.json",
@@ -16,11 +16,12 @@
16
16
  "setversion": "grunt setversion"
17
17
  },
18
18
  "bin": {
19
- "dbos-cloud": "./dist/packages/dbos-cloud/cli.js"
19
+ "dbos-cloud": "./dist/cli.js"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/node": "^20.6.3",
23
23
  "@types/prompt-sync": "^4.2.3",
24
+ "@types/update-notifier": "^6.0.8",
24
25
  "@types/validator": "^13.11.9",
25
26
  "grunt": "^1.6.1",
26
27
  "nerdbank-gitversioning": "^3.6.133",
@@ -28,12 +29,14 @@
28
29
  },
29
30
  "dependencies": {
30
31
  "axios": "^1.6.7",
32
+ "chalk": "4.1.2",
31
33
  "commander": "^12.0.0",
32
34
  "fast-glob": "^3.3.2",
33
35
  "jsonwebtoken": "^9.0.2",
34
36
  "jszip": "^3.10.1",
35
37
  "jwks-rsa": "^3.1.0",
36
38
  "prompt-sync": "^4.2.0",
39
+ "update-notifier": "^7.0.0",
37
40
  "validator": "^13.11.0",
38
41
  "winston": "^3.12.0",
39
42
  "winston-transport": "^4.7.0"
package/register.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import axios, { AxiosError } from "axios";
2
- import { handleAPIErrors, getCloudCredentials, getLogger, isCloudAPIErrorResponse, credentialsExist, DBOSCloudCredentials, writeCredentials, deleteCredentials } from "./cloudutils";
2
+ import { handleAPIErrors, getCloudCredentials, getLogger, isCloudAPIErrorResponse, credentialsExist, DBOSCloudCredentials, writeCredentials, deleteCredentials } from "./cloudutils.js";
3
3
  import readline from 'readline';
4
- import { authenticate } from "./login";
4
+ import { authenticate } from "./login.js";
5
5
  import * as validator from 'validator';
6
6
 
7
7
  const rl = readline.createInterface({
package/tsconfig.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "target": "esnext", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
5
5
  "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */
6
6
  "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
7
- "module": "commonjs", /* Specify what module code is generated. */
7
+ "module": "Node16", /* Specify what module code is generated. */
8
8
  "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
9
9
  "declarationMap": true, /* Create sourcemaps for d.ts files. */
10
10
  "sourceMap": true, /* Create source map files for emitted JavaScript files. */
@@ -14,9 +14,11 @@
14
14
  "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
15
15
  "strict": true, /* Enable all strict type-checking options. */
16
16
  "skipLibCheck": true, /* Skip type checking all .d.ts files. */
17
+ "resolveJsonModule": true
17
18
  },
18
19
  "include": [ /* Specifies an array of filenames or patterns to include in the program. */
19
20
  ".",
20
- "applications"
21
+ "applications",
22
+ "package.json"
21
23
  ],
22
24
  }
package/userdb.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  import axios, { AxiosError } from "axios";
2
- import { isCloudAPIErrorResponse, handleAPIErrors, getCloudCredentials, getLogger } from "./cloudutils";
3
- import { sleep } from "../../src/utils";
2
+ import { isCloudAPIErrorResponse, handleAPIErrors, getCloudCredentials, getLogger, sleep } from "./cloudutils.js";
4
3
 
5
4
  export interface UserDBInstance {
6
5
  readonly PostgresInstanceName: string;
@@ -1 +0,0 @@
1
- {"version":3,"file":"delete-app.d.ts","sourceRoot":"","sources":["../../../../applications/delete-app.ts"],"names":[],"mappings":"AAGA,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+B/E"}
@@ -1,41 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.deleteApp = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
- const cloudutils_1 = require("../cloudutils");
9
- async function deleteApp(host, appName) {
10
- const logger = (0, cloudutils_1.getLogger)();
11
- const userCredentials = (0, cloudutils_1.getCloudCredentials)();
12
- const bearerToken = "Bearer " + userCredentials.token;
13
- appName = appName ?? (0, cloudutils_1.retrieveApplicationName)(logger);
14
- if (!appName) {
15
- return 1;
16
- }
17
- logger.info(`Deleting application: ${appName}`);
18
- try {
19
- await axios_1.default.delete(`https://${host}/v1alpha1/${userCredentials.userName}/applications/${appName}`, {
20
- headers: {
21
- "Content-Type": "application/json",
22
- Authorization: bearerToken,
23
- },
24
- });
25
- logger.info(`Successfully deleted application: ${appName}`);
26
- return 0;
27
- }
28
- catch (e) {
29
- const errorLabel = `Failed to delete application ${appName}`;
30
- const axiosError = e;
31
- if ((0, cloudutils_1.isCloudAPIErrorResponse)(axiosError.response?.data)) {
32
- (0, cloudutils_1.handleAPIErrors)(errorLabel, axiosError);
33
- }
34
- else {
35
- logger.error(`${errorLabel}: ${e.message}`);
36
- }
37
- return 1;
38
- }
39
- }
40
- exports.deleteApp = deleteApp;
41
- //# sourceMappingURL=delete-app.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"delete-app.js","sourceRoot":"","sources":["../../../../applications/delete-app.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0C;AAC1C,8CAAkI;AAE3H,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,OAAgB;IAC5D,MAAM,MAAM,GAAG,IAAA,sBAAS,GAAE,CAAA;IAC1B,MAAM,eAAe,GAAG,IAAA,gCAAmB,GAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;IAEtD,OAAO,GAAG,OAAO,IAAI,IAAA,oCAAuB,EAAC,MAAM,CAAC,CAAC;IACrD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAA;IAE/C,IAAI,CAAC;QACH,MAAM,eAAK,CAAC,MAAM,CAAC,WAAW,IAAI,aAAa,eAAe,CAAC,QAAQ,iBAAiB,OAAO,EAAE,EAAE;YACjG,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,WAAW;aAC3B;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,qCAAqC,OAAO,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,CAAC;IACX,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,gCAAgC,OAAO,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAG,CAAe,CAAC;QACnC,IAAI,IAAA,oCAAuB,EAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;YACvD,IAAA,4BAAe,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,KAAM,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AA/BD,8BA+BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy-app-code.d.ts","sourceRoot":"","sources":["../../../../applications/deploy-app-code.ts"],"names":[],"mappings":"AAkCA,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmFjE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy-app-code.js","sourceRoot":"","sources":["../../../../applications/deploy-app-code.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-app-info.d.ts","sourceRoot":"","sources":["../../../../applications/get-app-info.ts"],"names":[],"mappings":"AAIA,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqC/F"}