bdy 1.18.24-stage → 1.18.26-dev
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/distTs/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bdy",
|
|
3
3
|
"preferGlobal": false,
|
|
4
|
-
"version": "1.18.
|
|
4
|
+
"version": "1.18.26-dev",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"scripts": {
|
|
@@ -55,7 +55,6 @@
|
|
|
55
55
|
"mime-db": "1.52.0",
|
|
56
56
|
"mime-types": "2.1.35",
|
|
57
57
|
"netmask": "2.0.2",
|
|
58
|
-
"node-fetch": "3.3.2",
|
|
59
58
|
"node-forge": "1.3.3",
|
|
60
59
|
"open": "11.0.0",
|
|
61
60
|
"path-is-inside": "1.0.2",
|
|
@@ -9,10 +9,9 @@ const node_http_1 = __importDefault(require("node:http"));
|
|
|
9
9
|
const texts_1 = require("../texts");
|
|
10
10
|
const utils_1 = require("../utils");
|
|
11
11
|
const input_1 = __importDefault(require("../input"));
|
|
12
|
-
const
|
|
12
|
+
const uuid_1 = require("uuid");
|
|
13
13
|
const OAUTH_CLIENT_APP_PORT = 7596;
|
|
14
14
|
const OAUTH_CLIENT_APP_HOST = 'localhost';
|
|
15
|
-
const OAUTH_CLIENT_APP_REDIRECT_URL = `http://localhost:${OAUTH_CLIENT_APP_PORT}`;
|
|
16
15
|
const OAUTH_CLIENT_APP_SCOPES = [
|
|
17
16
|
'WORKSPACE',
|
|
18
17
|
'MEMBER_EMAIL',
|
|
@@ -32,45 +31,84 @@ const OAUTH_CLIENT_APP_SCOPES = [
|
|
|
32
31
|
'TUNNEL_MANAGE',
|
|
33
32
|
'UNIT_TEST_MANAGE',
|
|
34
33
|
];
|
|
34
|
+
function getRedirectUrl(api) {
|
|
35
|
+
return `https://${api}/oauth2/cli`;
|
|
36
|
+
}
|
|
35
37
|
async function oauthServer(api, clientId, clientSecret) {
|
|
36
38
|
const ApiClient = require('../api/client').default;
|
|
37
39
|
const open = require('open').default;
|
|
40
|
+
const redirectUrl = getRedirectUrl(api);
|
|
38
41
|
return new Promise((resolve) => {
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (!urlCode) {
|
|
43
|
-
res.end(texts_1.ERR_LOGIN_HTTP_FAILED);
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
42
|
+
const state = (0, uuid_1.v4)();
|
|
43
|
+
const abortCode = new AbortController();
|
|
44
|
+
const exchange = async (urlCode, urlState, res) => {
|
|
46
45
|
const client = new ApiClient(new URL(`https://${api}`));
|
|
47
46
|
try {
|
|
48
|
-
const response = await client.exchangeAppToken(urlCode, clientId, clientSecret,
|
|
49
|
-
res
|
|
47
|
+
const response = await client.exchangeAppToken(urlCode, clientId, clientSecret, redirectUrl);
|
|
48
|
+
if (res)
|
|
49
|
+
res.end(urlState);
|
|
50
50
|
s.close();
|
|
51
|
+
abortCode.abort('OK');
|
|
51
52
|
resolve({
|
|
52
53
|
token: response.access_token,
|
|
53
54
|
refreshToken: response.refresh_token,
|
|
54
55
|
});
|
|
56
|
+
return true;
|
|
55
57
|
}
|
|
56
58
|
catch {
|
|
59
|
+
if (res)
|
|
60
|
+
res.end(texts_1.ERR_LOGIN_HTTP_FAILED);
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
const s = node_http_1.default.createServer(async (req, res) => {
|
|
65
|
+
res.setHeader('access-control-allow-origin', '*');
|
|
66
|
+
const url = new URL(req.url || '', `http://${OAUTH_CLIENT_APP_HOST}`);
|
|
67
|
+
const urlCode = url.searchParams.get('code');
|
|
68
|
+
const urlState = url.searchParams.get('state');
|
|
69
|
+
if (!urlCode || urlState !== state) {
|
|
57
70
|
res.end(texts_1.ERR_LOGIN_HTTP_FAILED);
|
|
58
|
-
|
|
59
|
-
output_1.default.exitError(texts_1.ERR_LOGIN_HTTP_FAILED);
|
|
71
|
+
return;
|
|
60
72
|
}
|
|
73
|
+
await exchange(urlCode, urlState, res);
|
|
61
74
|
});
|
|
62
75
|
s.on('error', () => {
|
|
63
76
|
s.close();
|
|
64
77
|
output_1.default.exitError(texts_1.ERR_LOGIN_HTTP_SERVER_PORT_TAKEN);
|
|
65
78
|
});
|
|
66
|
-
s.listen(OAUTH_CLIENT_APP_PORT, OAUTH_CLIENT_APP_HOST, () => {
|
|
67
|
-
const url = `https://${api}/oauth2/authorize?type=web_server&client_id=${encodeURIComponent(clientId)}&redirect_uri=${encodeURIComponent(
|
|
68
|
-
|
|
79
|
+
s.listen(OAUTH_CLIENT_APP_PORT, OAUTH_CLIENT_APP_HOST, async () => {
|
|
80
|
+
const url = `https://${api}/oauth2/authorize?type=web_server&client_id=${encodeURIComponent(clientId)}&redirect_uri=${encodeURIComponent(redirectUrl)}&response_type=code&scope=${encodeURIComponent(OAUTH_CLIENT_APP_SCOPES.join(' '))}&state=${encodeURIComponent(state)}`;
|
|
81
|
+
try {
|
|
82
|
+
await open(url);
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
// do nothing
|
|
86
|
+
}
|
|
87
|
+
output_1.default.normal(texts_1.TXT_LOGIN_OPEN_URL);
|
|
88
|
+
output_1.default.normal(url.replace(/%/g, '%%'));
|
|
89
|
+
output_1.default.normal('');
|
|
90
|
+
for (;;) {
|
|
91
|
+
try {
|
|
92
|
+
const code = await output_1.default.inputString(texts_1.TXT_LOGIN_PROVIDE_CODE, undefined, false, abortCode.signal);
|
|
93
|
+
const success = await exchange(code, state);
|
|
94
|
+
if (success)
|
|
95
|
+
break;
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
if (err.name === 'AbortPromptError') {
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
else if (err.name === 'ExitPromptError') {
|
|
102
|
+
output_1.default.exitError(texts_1.ERR_LOGIN_HTTP_CANCEL);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
69
106
|
});
|
|
70
107
|
});
|
|
71
108
|
}
|
|
72
109
|
async function getOrCreateApp(api) {
|
|
73
110
|
const ApiClient = require('../api/client').default;
|
|
111
|
+
const redirectUrl = getRedirectUrl(api);
|
|
74
112
|
const client = new ApiClient(new URL(`https://${api}`));
|
|
75
113
|
let clientId = cfg_1.default.getApiClientId();
|
|
76
114
|
let clientSecret = cfg_1.default.getApiClientSecret();
|
|
@@ -81,7 +119,7 @@ async function getOrCreateApp(api) {
|
|
|
81
119
|
const app = await client.getApp(clientId);
|
|
82
120
|
if (!app ||
|
|
83
121
|
!app.redirect_uris ||
|
|
84
|
-
!app.redirect_uris.includes(
|
|
122
|
+
!app.redirect_uris.includes(redirectUrl)) {
|
|
85
123
|
clear = true;
|
|
86
124
|
}
|
|
87
125
|
}
|
|
@@ -95,7 +133,7 @@ async function getOrCreateApp(api) {
|
|
|
95
133
|
}
|
|
96
134
|
}
|
|
97
135
|
if (!clientId || !clientSecret || !clientToken) {
|
|
98
|
-
const app = await client.registerApp('Buddy CLI',
|
|
136
|
+
const app = await client.registerApp('Buddy CLI', redirectUrl);
|
|
99
137
|
clientId = app.client_id;
|
|
100
138
|
clientSecret = app.client_secret;
|
|
101
139
|
clientToken = app.registration_access_token;
|
|
@@ -139,7 +177,6 @@ commandLogin.option('--api <url>', texts_1.OPTION_REST_API_ENDPOINT);
|
|
|
139
177
|
commandLogin.option('--region <region>', texts_1.OPTION_REST_API_REGION);
|
|
140
178
|
commandLogin.option('-w, --workspace <domain>', texts_1.OPTION_REST_API_WORKSPACE);
|
|
141
179
|
commandLogin.action(async (options) => {
|
|
142
|
-
logger_1.default.info(options);
|
|
143
180
|
output_1.default.handleSignals();
|
|
144
181
|
cfg_1.default.clearLogin();
|
|
145
182
|
let api = options.api || process.env.BUDDY_API_ENDPOINT;
|
|
@@ -139,9 +139,10 @@ commandSandboxCreate.action(async (options) => {
|
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
output_1.default.green((0, texts_1.TXT_SANDBOX_CREATED)(result.identifier));
|
|
142
|
-
output_1.default.
|
|
142
|
+
output_1.default.dim('SSH: ', false);
|
|
143
143
|
output_1.default.cyan(`ssh ${result.ssh_host} -p ${result.ssh_port}`);
|
|
144
|
-
|
|
144
|
+
output_1.default.dim('Web terminal: ', false);
|
|
145
|
+
output_1.default.cyan(result.html_url);
|
|
145
146
|
output_1.default.exitNormal();
|
|
146
147
|
});
|
|
147
148
|
exports.default = commandSandboxCreate;
|
package/distTs/src/output.js
CHANGED
|
@@ -259,7 +259,7 @@ class Output {
|
|
|
259
259
|
this.cyan(` No`);
|
|
260
260
|
return false;
|
|
261
261
|
}
|
|
262
|
-
static async inputString(message, def, required) {
|
|
262
|
+
static async inputString(message, def, required, signal) {
|
|
263
263
|
if (this.isStdInTTY()) {
|
|
264
264
|
const prompts = require('@inquirer/prompts');
|
|
265
265
|
return await prompts.input({
|
|
@@ -267,7 +267,7 @@ class Output {
|
|
|
267
267
|
message,
|
|
268
268
|
default: def,
|
|
269
269
|
theme: this.getInquirerTheme(),
|
|
270
|
-
});
|
|
270
|
+
}, { signal });
|
|
271
271
|
}
|
|
272
272
|
this.cyan('? ', false);
|
|
273
273
|
this.normal(message, false);
|
package/distTs/src/texts.js
CHANGED
|
@@ -12,9 +12,9 @@ exports.OPTION_SANDBOX_APP_COMMAND = exports.OPTION_SANDBOX_YAML = exports.OPTIO
|
|
|
12
12
|
exports.TXT_SANDBOX_COMMAND_KILLED = exports.OPTION_SANDBOX_COMMAND_KILL_CONFIRM = exports.OPTION_SANDBOX_LOGS_LIMIT = exports.OPTION_SANDBOX_APP_ID = exports.OPTION_SANDBOX_COMMAND_ID = exports.DESC_COMMAND_SANDBOX_EXEC_KILL = exports.DESC_COMMAND_SANDBOX_EXEC_LOGS = exports.DESC_COMMAND_SANDBOX_APP_START = exports.DESC_COMMAND_SANDBOX_APP_STOP = exports.DESC_COMMAND_SANDBOX_APP_STATUS = exports.DESC_COMMAND_SANDBOX_APP_LOGS = exports.DESC_COMMAND_SANDBOX_EXEC_STATUS = exports.DESC_COMMAND_SANDBOX_EXEC_LIST = exports.DESC_COMMAND_SANDBOX_APP_REMOVE = exports.DESC_COMMAND_SANDBOX_APP_ADD = exports.DESC_COMMAND_SANDBOX_APP_LIST = exports.TXT_SANDBOX_WAITING_START = exports.TXT_SANDBOX_WAITING_STOP = exports.TXT_SANDBOX_WAITING_APPS = exports.TXT_SANDBOX_WAITING_SETUP = exports.TXT_SANDBOX_WAITING_RUNNING = exports.TXT_SANDBOX_STOPPED = exports.TXT_SANDBOX_STARTED = exports.TXT_SANDBOX_DESTROYED = exports.TXT_SANDBOX_DESTROY_CONFIRM = exports.TXT_SANDBOX_UPDATED = exports.TXT_SANDBOX_CREATED = exports.TXT_SANDBOX_CREATING = exports.TXT_SANDBOX_APP_STARTED = exports.TXT_SANDBOX_APP_STOPPED = exports.OPTION_SANDBOX_WAIT = exports.OPTION_SANDBOX_WAIT_APPS = exports.OPTION_SANDBOX_WAIT_CONFIGURED = exports.OPTION_SANDBOX_WAIT_RUNNING = exports.ERR_SANDBOX_STOP_FAILED = exports.ERR_SANDBOX_NO_COMMANDS = exports.ERR_SANDBOX_RUNNING_FAILED = exports.ERR_SANDBOX_STOP_TIMEOUT = exports.ERR_SANDBOX_SNAPSHOT_TIMEOUT = exports.ERR_SANDBOX_RUNNING_TIMEOUT = exports.ERR_SANDBOX_APPS_TIMEOUT = exports.ERR_SANDBOX_SETUP_TIMEOUT = exports.ERR_SANDBOX_APP_FAILED = exports.ERR_SANDBOX_SETUP_FAILED = exports.ERR_SANDBOX_INVALID_RESOURCES = exports.ERR_SANDBOX_APP_NOT_FOUND = exports.ERR_SANDBOX_NOT_FOUND = exports.OPTION_SANDBOX_RUNTIME = exports.OPTION_SANDBOX_TIMEOUT = exports.OPTION_SANDBOX_APP_DIR = void 0;
|
|
13
13
|
exports.ERR_SANDBOX_CP_MKDIR = exports.ERR_SANDBOX_CP_PATH_EXISTS = exports.ERR_SANDBOX_CP_NOT_EMPTY_DIR = exports.ERR_SANDBOX_CP_READDIR = exports.ERR_SANDBOX_CP_DEST_NOT_FOLDER = exports.ERR_SANDBOX_CP_SOURCE_NOT_FOUND = exports.TXT_SANDBOX_CP_DONE = exports.TXT_SANDBOX_CP_PROGRESS = exports.TXT_SANDBOX_UNZIPPING_COUNT = exports.TXT_SANDBOX_UNZIP_DONE = exports.TXT_SANDBOX_UNZIP = exports.TXT_SANDBOX_CP_DOWNLOAD_DONE = exports.TXT_SANDBOX_CP_DOWNLOAD = exports.OPTION_SANDBOX_CP_DOWNLOAD_REPLACE = exports.OPTION_SANDBOX_CP_DOWNLOAD_MERGE = exports.OPTION_SANDBOX_CP_DEST = exports.OPTION_SANDBOX_CP_SOURCE = exports.DESC_COMMAND_SANDBOX_CP = exports.ERR_SANDBOX_ENDPOINTS_NOT_FOUND = exports.ERR_SANDBOX_ENDPOINT_NOT_FOUND = exports.ERR_SANDBOX_ENDPOINT_EXISTS = exports.TXT_SANDBOX_ENDPOINT_DELETED = exports.TXT_SANDBOX_ENDPOINT_DELETE_CONFIRM = exports.TXT_SANDBOX_ENDPOINT_ADDED = exports.TXT_SANDBOX_APP_REMOVED = exports.TXT_SANDBOX_APP_ADDED = exports.OPTION_SANDBOX_ENDPOINT_TYPE = exports.OPTION_SANDBOX_ENDPOINT_PORT = exports.OPTION_SANDBOX_ENDPOINT_NAME_ARG = exports.OPTION_SANDBOX_ENDPOINT_NAME = exports.DESC_COMMAND_SANDBOX_ENDPOINT_DELETE = exports.DESC_COMMAND_SANDBOX_ENDPOINT_ADD = exports.DESC_COMMAND_SANDBOX_ENDPOINT_GET = exports.DESC_COMMAND_SANDBOX_ENDPOINT_LIST = exports.DESC_COMMAND_SANDBOX_ENDPOINT = exports.ERR_SANDBOX_SNAPSHOTS_NOT_FOUND = exports.ERR_SANDBOX_SNAPSHOT_NOT_FOUND = exports.ERR_SANDBOX_SNAPSHOT_FAILED = exports.TXT_SANDBOX_SNAPSHOT_WAITING = exports.TXT_SANDBOX_SNAPSHOT_DELETE_CONFIRM = exports.TXT_SANDBOX_SNAPSHOT_DELETED = exports.TXT_SANDBOX_SNAPSHOT_CREATED = exports.OPTION_SANDBOX_FROM_SNAPSHOT = exports.OPTION_SANDBOX_SNAPSHOT_NAME_ARG = exports.OPTION_SANDBOX_SNAPSHOT_NAME = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_DELETE = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_GET = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_CREATE = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_LIST = exports.DESC_COMMAND_SANDBOX_SNAPSHOT = void 0;
|
|
14
14
|
exports.DESC_COMMAND_WORKSPACE_GET = exports.DESC_COMMAND_WORKSPACE_SET = exports.DESC_COMMAND_WORKSPACE_LIST = exports.DESC_COMMAND_WORKSPACE = exports.TXT_LOGOUT_SUCCESS = exports.DESC_COMMAND_LOGOUT = exports.DESC_COMMAND_LOGIN = exports.ERR_API_MEDIA_TYPE_NOT_IMPLEMENTED = exports.ERR_API_PARAMETER_NOT_REPLACED = exports.TXT_API_ENDPOINT_REQUIRED_SCOPES = exports.ERR_API_ENDPOINT_NOT_FOUND = exports.ERR_API_WRONG_METHOD = exports.ERR_SCHEMA_FETCH_FAILED = exports.OPT_COMMAND_API_INFO_URL = exports.OPT_COMMAND_API_INFO_SCHEMA = exports.OPT_COMMAND_API_INFO_METHOD = exports.OPT_COMMAND_API_LIST_SEARCH = exports.OPT_COMMAND_API_LIST_METHOD = exports.ERR_API_REQUEST_BODY_VALUE = exports.ERR_API_REQUEST_QUERY_VALUE = exports.ERR_API_REQUEST_INVALID_JSON = exports.ERR_API_REQUEST_FILE_ERROR = exports.ERR_API_REQUEST_OUTPUT_EXISTS = exports.DESC_COMMAND_API_INFO = exports.DESC_COMMAND_API_FORM = exports.DESC_COMMAND_API_JSON = exports.DESC_COMMAND_API_DATA = exports.DESC_COMMAND_API_OUTPUT = exports.DESC_COMMAND_API_REQUEST_QUERY = exports.DESC_COMMAND_API_PROJECT = exports.DESC_COMMAND_API_WORKSPACE = exports.DESC_COMMAND_API_REQUEST_URL = exports.DESC_COMMAND_API_GET = exports.DESC_COMMAND_API_PATCH = exports.DESC_COMMAND_API_DELETE = exports.DESC_COMMAND_API_PUT = exports.DESC_COMMAND_API_POST = exports.DESC_COMMAND_API_LIST = exports.DESC_COMMAND_API = exports.ERR_WHOAMI_LOGOUT = exports.TXT_WHOAMI_NO_WORKSPACE = exports.DESC_COMMAND_WHOAMI = exports.TXT_SANDBOX_EXEC_FAILED = exports.TXT_SANDBOX_EXEC_INPROGRESS = exports.TXT_SANDBOX_EXEC_SUCCESS = exports.TXT_SANDBOX_EXEC_BACKGROUND = exports.TXT_SANDBOX_EXEC_ID = exports.ERR_SANDBOX_CP_INVALID_SOURCE = exports.ERR_SANDBOX_CP_INVALID_DEST = exports.ERR_SANDBOX_CP_REPLACE = void 0;
|
|
15
|
-
exports.
|
|
16
|
-
exports.
|
|
17
|
-
exports.EXAMPLE_PACKAGE_VERSION_DELETE = exports.EXAMPLE_PACKAGE_VERSION_GET = exports.EXAMPLE_PACKAGE_VERSION_LIST = exports.EXAMPLE_PACKAGE_CREATE = exports.EXAMPLE_PACKAGE_DELETE = exports.EXAMPLE_PACKAGE_DOWNLOAD = exports.EXAMPLE_PACKAGE_PUBLISH = exports.EXAMPLE_PIPELINE_RUN = exports.EXAMPLE_SANDBOX_ENDPOINT_LIST = exports.EXAMPLE_SANDBOX_ENDPOINT_GET = exports.EXAMPLE_SANDBOX_ENDPOINT_DELETE = exports.EXAMPLE_SANDBOX_ENDPOINT_CREATE = exports.EXAMPLE_SANDBOX_SNAPSHOT_LIST = exports.EXAMPLE_SANDBOX_SNAPSHOT_GET = exports.EXAMPLE_SANDBOX_SNAPSHOT_DELETE = exports.EXAMPLE_SANDBOX_SNAPSHOT_CREATE = exports.EXAMPLE_SANDBOX_EXEC_STATUS = exports.EXAMPLE_SANDBOX_EXEC_LOGS = exports.EXAMPLE_SANDBOX_APP_STATUS = exports.EXAMPLE_SANDBOX_APP_STOP = exports.EXAMPLE_SANDBOX_APP_REMOVE = exports.EXAMPLE_SANDBOX_APP_ADD = exports.EXAMPLE_SANDBOX_APP_START = void 0;
|
|
15
|
+
exports.OPT_COMMAND_PACKAGE_NAME = exports.OPT_COMMAND_PACKAGE_TYPE = exports.DESC_COMMAND_PACKAGE_CREATE = exports.DESC_COMMAND_PACKAGE_GET = exports.TXT_PACKAGE_DOCKER_LOGIN_FAILED = exports.TXT_PACKAGE_DOCKER_LOGIN_SUCCESS = exports.TXT_PACKAGE_VERSION_DELETE_CONFIRM = exports.TXT_PACKAGE_DELETE_CONFIRM = exports.DESC_COMMAND_PACKAGE_DELETE = exports.ERR_COMMAND_PACKAGE_NO_PROJECTS = exports.DESC_COMMAND_PACKAGE_VERSION_GET = exports.DESC_COMMAND_PACKAGE_VERSION_LIST = exports.DESC_COMMAND_PACKAGE_VERSION_DELETE = exports.DESC_COMMAND_PACKAGE_DOCKER_LOGIN = exports.DESC_COMMAND_PACKAGE_LIST = exports.DESC_COMMAND_PACKAGE_VERSION = exports.ERR_COMMAND_DOMAIN_UNAVAILABLE = exports.OPTION_COMMAND_DOMAIN_IDENTIFIER = exports.ERR_COMMAND_DOMAIN_NO_DOMAINS = exports.TXT_COMMAND_DOMAIN_PROMPT_REQUIRED = exports.TXT_COMMAND_DOMAIN_BUY_SELECT_DOMAIN = exports.TXT_COMMAND_DOMAIN_PROVIDE_PROMPT = exports.ERR_COMMAND_DOMAIN_NOT_FOUND = exports.OPT_COMMAND_DOMAIN_ONLY_AVAILABLE = exports.OPT_COMMAND_DOMAIN_SORT = exports.OPT_COMMAND_DOMAIN_PHRASE = exports.OPT_COMMAND_DOMAIN_BUY_OWNER = exports.OPT_COMMAND_DOMAIN_BUY_TLD = exports.DESC_COMMAND_DOMAIN_GET = exports.DESC_COMMAND_DOMAIN_LIST = exports.DESC_COMMAND_DOMAIN_SEARCH = exports.DESC_COMMAND_DOMAIN_BUY = exports.DESC_COMMAND_DOMAIN = exports.ERR_API_MESSAGE_REPLACER = exports.ERR_LOGIN_INVALID_BASE_URL = exports.ERR_LOGIN_NO_WORKSPACE_FOUND = exports.ERR_LOGIN_NO_WORKSPACES = exports.ERR_LOGIN_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_FAILED = exports.TXT_LOGIN_OAUTH = exports.ERR_LOGIN_HTTP_SERVER_PORT_TAKEN = exports.TXT_LOGIN_SUCCESS = exports.TXT_LOGIN_SELECT_WORKSPACE = exports.TXT_LOGIN_ENTER_BASE_URL = exports.TXT_LOGIN_PROVIDE_CODE = exports.TXT_LOGIN_OPEN_URL = exports.TXT_LOGIN_SELECT_REGION = exports.TXT_WORKSPACE_NONE = exports.TXT_WORKSPACE_SET_SUCCESS = exports.ARG_COMMAND_WORKSPACE = void 0;
|
|
16
|
+
exports.EXAMPLE_SANDBOX_APP_LIST = exports.EXAMPLE_SANDBOX_EXEC_KILL = exports.EXAMPLE_SANDBOX_EXEC_COMMAND = exports.EXAMPLE_TUNNEL_START = exports.EXAMPLE_TUNNEL_TCP = exports.EXAMPLE_TUNNEL_TLS = exports.EXAMPLE_AGENT_TUNNEL_START = exports.EXAMPLE_AGENT_TUNNEL_STATUS = exports.EXAMPLE_AGENT_TUNNEL_REMOVE = exports.EXAMPLE_AGENT_TUNNEL_LIST = exports.EXAMPLE_TUNNEL_HTTP = exports.EXAMPLE_SANDBOX_CREATE = exports.EXAMPLE_SANDBOX_CP = exports.ERR_PROJECT_NO_PROJECTS = exports.TXT_LOGIN_SELECT_PROJECT = exports.TXT_COMMAND_PROJECT_CREATED = exports.TXT_COMMAND_PROJECT_LINK_NOT_FOUND = exports.TXT_COMMAND_PROJECT_LINK_NAME = exports.TXT_COMMAND_PROJECT_LINK_SELECT_PROJECT = exports.TXT_COMMAND_PROJECT_LINK_TO = exports.TXT_COMMAND_PROJECT_LINK_EXISTING_DESC = exports.TXT_COMMAND_PROJECT_LINK_EXISTING = exports.TXT_COMMAND_PROJECT_LINK_CREATE_NEW_DESC = exports.TXT_COMMAND_PROJECT_LINK_CREATE_NEW = exports.ERR_COMMAND_PROJECT_LINK_DIR_NOT_DIR = exports.TXT_COMMAND_PROJECT_LINK_GIT_REPO_INITIALIZED = exports.TXT_COMMAND_PROJECT_LINK_GIT_REPO = exports.TXT_COMMAND_PROJECT_LINK_DIR_CONFIRM = exports.TXT_COMMAND_PROJECT_LINK_DIR_LINKED = exports.ERR_COMMAND_PROJECT_LINK_DIR_CREATE = exports.OPT_COMMAND_PROJECT_LINK_TRY_NOW = exports.OPT_COMMAND_PROJECT_LINK_SET_GIT_REMOTE = exports.OPT_COMMAND_PROJECT_LINK_HAS_REMOTE = exports.OPT_COMMAND_PROJECT_LINK_DIRECTORY = exports.OPT_COMMAND_PROJECT_LINK_GIT = exports.OPT_COMMAND_PROJECT_LINK_RELINK = exports.DESC_COMMAND_PROJECT_LINK = exports.DESC_COMMAND_PROJECT_LIST = exports.DESC_COMMAND_PROJECT_GIT = exports.DESC_COMMAND_PROJECT_GIT_CREDENTIAL = exports.DESC_COMMAND_PROJECT = exports.TXT_PACKAGE_VERSION_DOWNLOAD = exports.TXT_PACKAGE_PUBLISH = exports.TXT_PACKAGE_CREATED = exports.TXT_PACKAGE_VERSION_DELETED = exports.TXT_PACKAGE_DELETED = exports.ERR_COMMAND_PACKAGE_TYPE = exports.OPT_COMMAND_PACKAGE_VERSION = exports.OPT_COMMAND_PACKAGE_IDENTIFIER = exports.OPT_COMMAND_PACKAGE_CREATE_IDENTIFIER = void 0;
|
|
17
|
+
exports.EXAMPLE_PACKAGE_VERSION_DELETE = exports.EXAMPLE_PACKAGE_VERSION_GET = exports.EXAMPLE_PACKAGE_VERSION_LIST = exports.EXAMPLE_PACKAGE_CREATE = exports.EXAMPLE_PACKAGE_DELETE = exports.EXAMPLE_PACKAGE_DOWNLOAD = exports.EXAMPLE_PACKAGE_PUBLISH = exports.EXAMPLE_PIPELINE_RUN = exports.EXAMPLE_SANDBOX_ENDPOINT_LIST = exports.EXAMPLE_SANDBOX_ENDPOINT_GET = exports.EXAMPLE_SANDBOX_ENDPOINT_DELETE = exports.EXAMPLE_SANDBOX_ENDPOINT_CREATE = exports.EXAMPLE_SANDBOX_SNAPSHOT_LIST = exports.EXAMPLE_SANDBOX_SNAPSHOT_GET = exports.EXAMPLE_SANDBOX_SNAPSHOT_DELETE = exports.EXAMPLE_SANDBOX_SNAPSHOT_CREATE = exports.EXAMPLE_SANDBOX_EXEC_STATUS = exports.EXAMPLE_SANDBOX_EXEC_LOGS = exports.EXAMPLE_SANDBOX_APP_STATUS = exports.EXAMPLE_SANDBOX_APP_STOP = exports.EXAMPLE_SANDBOX_APP_REMOVE = exports.EXAMPLE_SANDBOX_APP_ADD = exports.EXAMPLE_SANDBOX_APP_START = exports.EXAMPLE_SANDBOX_APP_LOGS = exports.EXAMPLE_SANDBOX_EXEC_LIST = void 0;
|
|
18
18
|
const utils_1 = require("./utils");
|
|
19
19
|
exports.ERR_REST_API_GENERAL_ERROR = 'Something went wrong';
|
|
20
20
|
exports.ERR_REST_API_NOT_RESPONDING = 'Api endpoint not responding. Try again later...';
|
|
@@ -765,13 +765,15 @@ const TXT_WORKSPACE_SET_SUCCESS = (workspace) => `Workspace set to: ${workspace}
|
|
|
765
765
|
exports.TXT_WORKSPACE_SET_SUCCESS = TXT_WORKSPACE_SET_SUCCESS;
|
|
766
766
|
exports.TXT_WORKSPACE_NONE = 'No workspace configured. Run "bdy login" or "bdy workspace set" first.';
|
|
767
767
|
exports.TXT_LOGIN_SELECT_REGION = 'Select region:';
|
|
768
|
+
exports.TXT_LOGIN_OPEN_URL = "Browser didn't open? Use the url below to sign in:";
|
|
769
|
+
exports.TXT_LOGIN_PROVIDE_CODE = "Provide code from the browser:";
|
|
768
770
|
exports.TXT_LOGIN_ENTER_BASE_URL = 'Enter your Buddy instance URL (e.g., buddy.company.com):';
|
|
769
771
|
exports.TXT_LOGIN_SELECT_WORKSPACE = 'Select workspace:';
|
|
770
772
|
exports.TXT_LOGIN_SUCCESS = 'Logged in successfully!';
|
|
771
773
|
exports.ERR_LOGIN_HTTP_SERVER_PORT_TAKEN = 'Cant start local http server to authorize';
|
|
772
774
|
exports.TXT_LOGIN_OAUTH = 'Starting authorization process...';
|
|
773
775
|
exports.ERR_LOGIN_HTTP_FAILED = 'Buddy CLI failed to authorize. Try again...';
|
|
774
|
-
exports.
|
|
776
|
+
exports.ERR_LOGIN_HTTP_CANCEL = 'Login canceled';
|
|
775
777
|
exports.ERR_LOGIN_NO_WORKSPACES = 'No workspaces found for this token';
|
|
776
778
|
exports.ERR_LOGIN_NO_WORKSPACE_FOUND = 'Provided workspace has been not found';
|
|
777
779
|
exports.ERR_LOGIN_INVALID_BASE_URL = 'Invalid URL format';
|
|
@@ -4,22 +4,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ApiBuddyClass = void 0;
|
|
7
|
-
const
|
|
7
|
+
const undici_1 = require("undici");
|
|
8
8
|
const tunnel_1 = __importDefault(require("../tunnel"));
|
|
9
9
|
const logger_1 = __importDefault(require("../../logger"));
|
|
10
10
|
const agent_1 = __importDefault(require("../../agent/agent"));
|
|
11
11
|
const utils_1 = require("../../utils");
|
|
12
12
|
const texts_1 = require("../../texts");
|
|
13
13
|
const TIMEOUT = 120000;
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
})
|
|
20
|
-
.catch(reject);
|
|
21
|
-
});
|
|
22
|
-
};
|
|
14
|
+
const dispatcher = new undici_1.Agent({
|
|
15
|
+
connect: {
|
|
16
|
+
rejectUnauthorized: false,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
23
19
|
const makeRequest = async (host, path, body, method = 'POST', respAsJson = true, timeout = TIMEOUT) => {
|
|
24
20
|
let data;
|
|
25
21
|
try {
|
|
@@ -29,14 +25,12 @@ const makeRequest = async (host, path, body, method = 'POST', respAsJson = true,
|
|
|
29
25
|
}, timeout);
|
|
30
26
|
logger_1.default.debug(`TUNNEL API BUDDY REQUEST: ${method} ${host}${path}`);
|
|
31
27
|
logger_1.default.debug(body);
|
|
32
|
-
const response = await
|
|
28
|
+
const response = await (0, undici_1.fetch)(`${host}${path}`, {
|
|
33
29
|
body: body ? JSON.stringify(body) : null,
|
|
34
|
-
headers: body ? { 'Content-Type': 'application/json' } :
|
|
30
|
+
headers: body ? { 'Content-Type': 'application/json' } : undefined,
|
|
35
31
|
method,
|
|
36
32
|
signal: c.signal,
|
|
37
|
-
|
|
38
|
-
rejectUnauthorized: false,
|
|
39
|
-
}),
|
|
33
|
+
dispatcher,
|
|
40
34
|
});
|
|
41
35
|
if (respAsJson)
|
|
42
36
|
data = await response.json();
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bdy",
|
|
3
3
|
"preferGlobal": false,
|
|
4
|
-
"version": "1.18.
|
|
4
|
+
"version": "1.18.26-dev",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"scripts": {
|
|
@@ -55,7 +55,6 @@
|
|
|
55
55
|
"mime-db": "1.52.0",
|
|
56
56
|
"mime-types": "2.1.35",
|
|
57
57
|
"netmask": "2.0.2",
|
|
58
|
-
"node-fetch": "3.3.2",
|
|
59
58
|
"node-forge": "1.3.3",
|
|
60
59
|
"open": "11.0.0",
|
|
61
60
|
"path-is-inside": "1.0.2",
|