bdy 1.23.14-dev → 1.23.15-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 +1 -1
- package/distTs/src/agent/agent.js +27 -2
- package/distTs/src/agent/linux.js +7 -5
- package/distTs/src/agent/manager.js +25 -0
- package/distTs/src/agent/osx.js +7 -9
- package/distTs/src/agent/socket/client.js +10 -0
- package/distTs/src/agent/system.js +16 -4
- package/distTs/src/agent/windows.js +1 -2
- package/distTs/src/command/agent/install.js +1 -1
- package/distTs/src/command/agent/run.js +16 -0
- package/distTs/src/texts.js +15 -12
- package/distTs/src/types/tunnel.js +11 -0
- package/package.json +1 -1
package/distTs/package.json
CHANGED
|
@@ -343,12 +343,16 @@ class Agent extends events_1.default {
|
|
|
343
343
|
this.socket.fetch(!this.disabled, null, null, false, this.getTunnelsUpdate(), true);
|
|
344
344
|
}
|
|
345
345
|
}
|
|
346
|
-
// Matches on the
|
|
347
|
-
//
|
|
346
|
+
// Matches on the request values exactly, which is what lets an update status share the
|
|
347
|
+
// field: TUNNEL_AGENT_UPDATE_STATUS values fall through here and do nothing, so an
|
|
348
348
|
// outcome we reported ourselves is never read back as a fresh request. Anything unknown
|
|
349
349
|
// is left alone rather than acked, so a value a newer front understands is still there
|
|
350
350
|
// when the agent is upgraded.
|
|
351
351
|
async makeAction(action) {
|
|
352
|
+
if (action === tunnel_1.TUNNEL_AGENT_ACTION.DEBUG_ON ||
|
|
353
|
+
action === tunnel_1.TUNNEL_AGENT_ACTION.DEBUG_OFF) {
|
|
354
|
+
return this.makeDebugAction(action === tunnel_1.TUNNEL_AGENT_ACTION.DEBUG_ON);
|
|
355
|
+
}
|
|
352
356
|
if (action === tunnel_1.TUNNEL_AGENT_ACTION.DELETE) {
|
|
353
357
|
if (this.manager) {
|
|
354
358
|
return this.manager.disableAgentAndExit(texts_1.ERR_AGENT_REMOVED);
|
|
@@ -373,6 +377,27 @@ class Agent extends events_1.default {
|
|
|
373
377
|
return;
|
|
374
378
|
}
|
|
375
379
|
}
|
|
380
|
+
// Applied from here rather than through the local api that `agent debug` calls: that api
|
|
381
|
+
// exists so another process can reach a running agent, and this is already inside one.
|
|
382
|
+
// A foreground tunnel has no manager and no config to record the level in, so it only
|
|
383
|
+
// changes its own - which is all it has to change.
|
|
384
|
+
//
|
|
385
|
+
// Always acked, and idempotent on purpose. The backend rewrites the whole agent row per
|
|
386
|
+
// request, so an ack can be undone by a concurrent update and the request comes back on
|
|
387
|
+
// the next fetch (see reclearLostUpdateStatus) - re-applying a level the process already
|
|
388
|
+
// runs at costs nothing, while rewriting the config every 15 seconds would, which is why
|
|
389
|
+
// the state check guards the write and not the ack.
|
|
390
|
+
makeDebugAction(debug) {
|
|
391
|
+
if (logger_1.default.debugOn !== debug) {
|
|
392
|
+
logger_1.default.info((0, texts_1.LOG_AGENT_DEBUG_REMOTE)(debug));
|
|
393
|
+
if (!this.manager)
|
|
394
|
+
logger_1.default.setDebug(debug);
|
|
395
|
+
else if (!this.manager.setDebug(debug)) {
|
|
396
|
+
logger_1.default.info(texts_1.LOG_AGENT_DEBUG_NOT_PERSISTED);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
return this.ackAction();
|
|
400
|
+
}
|
|
376
401
|
refreshTunnels(tunnels) {
|
|
377
402
|
if (this.tunnelsUpdating)
|
|
378
403
|
return;
|
|
@@ -49,14 +49,13 @@ class AgentLinux extends system_1.default {
|
|
|
49
49
|
// `systemctl show bdy` would hand the token to the same unprivileged users - and file modes
|
|
50
50
|
// cannot stop that. Closing this means the agent reading the token from a file only it can
|
|
51
51
|
// read, which is a change of where the token lives, not of this template.
|
|
52
|
-
getServiceConfig(id, host, token, port, user
|
|
52
|
+
getServiceConfig(id, host, token, port, user) {
|
|
53
53
|
const cli = this.getSystemBinaryPath();
|
|
54
54
|
return `[Unit]
|
|
55
55
|
Description=Buddy Tunnel Agent
|
|
56
56
|
After=network.target
|
|
57
57
|
|
|
58
58
|
[Service]
|
|
59
|
-
Environment="DEBUG=${debug ? 1 : 0}"
|
|
60
59
|
User=${user || 'root'}
|
|
61
60
|
WorkingDirectory=/
|
|
62
61
|
ExecStart=${cli} agent run --id="${id}" --host="${host}" --token="${token}" --port=${port}
|
|
@@ -84,7 +83,10 @@ WantedBy=multi-user.target`;
|
|
|
84
83
|
const user = m[1].trim();
|
|
85
84
|
return user === 'root' ? '' : user;
|
|
86
85
|
}
|
|
87
|
-
async install(id, host, token, port, start, user,
|
|
86
|
+
async install(id, host, token, port, start, user,
|
|
87
|
+
// Windows only - a unit runs as a user without being handed their password
|
|
88
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
89
|
+
_pass) {
|
|
88
90
|
try {
|
|
89
91
|
// ensure service clear
|
|
90
92
|
await this.uninstall();
|
|
@@ -105,7 +107,7 @@ WantedBy=multi-user.target`;
|
|
|
105
107
|
await this.extractBinaryArchive();
|
|
106
108
|
await this.fixBinaryRights();
|
|
107
109
|
logger_1.default.info(texts_1.LOG_AGENT_SYSTEM_SERVICE_CONFIG);
|
|
108
|
-
await this.saveFile(this.getServicePath(), this.getServiceConfig(id, host, token, port, user
|
|
110
|
+
await this.saveFile(this.getServicePath(), this.getServiceConfig(id, host, token, port, user));
|
|
109
111
|
// Everything above was written by this root process, so the service user does not own
|
|
110
112
|
// any of it yet and could not write its host key or its log. Ownership first, mode
|
|
111
113
|
// second - see chownSystemDir for why that order is the one that fails safely.
|
|
@@ -135,7 +137,7 @@ WantedBy=multi-user.target`;
|
|
|
135
137
|
catch {
|
|
136
138
|
// do nothing
|
|
137
139
|
}
|
|
138
|
-
await this.saveFile(this.getServicePath(), this.getServiceConfig(json.id, json.host, json.token, json.port, user
|
|
140
|
+
await this.saveFile(this.getServicePath(), this.getServiceConfig(json.id, json.host, json.token, json.port, user));
|
|
139
141
|
// The directory follows the service to its new user, and back to root when the user is
|
|
140
142
|
// cleared - this is what makes changing the user later work without 0777 everywhere
|
|
141
143
|
await this.chownSystemDir(user);
|
|
@@ -502,6 +502,28 @@ class AgentManagerClass {
|
|
|
502
502
|
return;
|
|
503
503
|
}
|
|
504
504
|
}
|
|
505
|
+
// The live level, and the record of it for the next start. Both entry points into an
|
|
506
|
+
// agent process read that record back - `agent run` for a service, startStandaloneProc
|
|
507
|
+
// for an `--app` install - so this write is what makes a toggle survive a restart.
|
|
508
|
+
//
|
|
509
|
+
// Best effort on the write, and the level is changed either way. The config normally
|
|
510
|
+
// belongs to the service user (chownSystemDir hands it over at 0644), so this succeeds
|
|
511
|
+
// for a service running as someone other than root - but a directory left behind by an
|
|
512
|
+
// older install, or a read-only filesystem, still ends up here, and refusing to raise
|
|
513
|
+
// the level over a file that only decides the *next* start would take remote debugging
|
|
514
|
+
// away from the machine in front of us. saveSystemConfig logs what went wrong, and
|
|
515
|
+
// makeDebugAction says what it cost.
|
|
516
|
+
setDebug(debug) {
|
|
517
|
+
logger_1.default.setDebug(debug);
|
|
518
|
+
let json;
|
|
519
|
+
try {
|
|
520
|
+
json = this.system.loadSystemConfig();
|
|
521
|
+
}
|
|
522
|
+
catch {
|
|
523
|
+
return false;
|
|
524
|
+
}
|
|
525
|
+
return this.system.saveSystemConfig(json.id, json.host, json.token, json.port, !!json.standalone, debug);
|
|
526
|
+
}
|
|
505
527
|
async processAgentDebug(req, res) {
|
|
506
528
|
if (!this.agent) {
|
|
507
529
|
this.serverError(res, 'Agent not enabled');
|
|
@@ -515,6 +537,9 @@ class AgentManagerClass {
|
|
|
515
537
|
this.serverError(res, 'Wrong input data');
|
|
516
538
|
return;
|
|
517
539
|
}
|
|
540
|
+
// The level only. The `agent debug` command on the other end of this writes the config
|
|
541
|
+
// itself, from a process that has checked it has the rights to - a second write of the
|
|
542
|
+
// same values from here would say nothing the first one does not.
|
|
518
543
|
logger_1.default.setDebug(!!data.debug);
|
|
519
544
|
logger_1.default.info(`MANAGER REQUEST: change debug to ${!!data.debug}`);
|
|
520
545
|
this.serverOutput(res, {
|
package/distTs/src/agent/osx.js
CHANGED
|
@@ -41,7 +41,7 @@ class AgentOsx extends system_1.default {
|
|
|
41
41
|
// this plist, and the same move on systemd leaks the token through `systemctl show` whatever
|
|
42
42
|
// the file mode is - see the note in AgentLinux.getServiceConfig. Closing this means the agent
|
|
43
43
|
// reading the token from a file only it can read, which is a change of where the token lives.
|
|
44
|
-
getServiceConfig(id, host, token, port, user
|
|
44
|
+
getServiceConfig(id, host, token, port, user) {
|
|
45
45
|
const cli = this.getSystemBinaryPath();
|
|
46
46
|
let cfg = `<?xml version='1.0' encoding='UTF-8'?>
|
|
47
47
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
@@ -63,11 +63,6 @@ class AgentOsx extends system_1.default {
|
|
|
63
63
|
<string>--port</string>
|
|
64
64
|
<string>${port}</string>
|
|
65
65
|
</array>
|
|
66
|
-
<key>EnvironmentVariables</key>
|
|
67
|
-
<dict>
|
|
68
|
-
<key>DEBUG</key>
|
|
69
|
-
<string>${debug ? 1 : 0}</string>
|
|
70
|
-
</dict>
|
|
71
66
|
<key>KeepAlive</key>
|
|
72
67
|
<true/>
|
|
73
68
|
<key>RunAtLoad</key>
|
|
@@ -99,7 +94,10 @@ class AgentOsx extends system_1.default {
|
|
|
99
94
|
const m = cfg.match(/<key>UserName<\/key>\s*<string>([^<]+)<\/string>/);
|
|
100
95
|
return m ? m[1].trim() : '';
|
|
101
96
|
}
|
|
102
|
-
async install(id, host, token, port, start, user,
|
|
97
|
+
async install(id, host, token, port, start, user,
|
|
98
|
+
// Windows only - a launchd job runs as a user without being handed their password
|
|
99
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
100
|
+
_pass) {
|
|
103
101
|
try {
|
|
104
102
|
// ensure service clear
|
|
105
103
|
await this.uninstall();
|
|
@@ -120,7 +118,7 @@ class AgentOsx extends system_1.default {
|
|
|
120
118
|
await this.extractBinaryArchive();
|
|
121
119
|
await this.fixBinaryRights();
|
|
122
120
|
logger_1.default.info(texts_1.LOG_AGENT_SYSTEM_SERVICE_CONFIG);
|
|
123
|
-
await this.saveFile(this.getServicePath(), this.getServiceConfig(id, host, token, port, user
|
|
121
|
+
await this.saveFile(this.getServicePath(), this.getServiceConfig(id, host, token, port, user));
|
|
124
122
|
// Everything above was written by this root process, so the service user does not own
|
|
125
123
|
// any of it yet and could not write its host key or its log. Ownership first, mode
|
|
126
124
|
// second - see chownSystemDir for why that order is the one that fails safely.
|
|
@@ -150,7 +148,7 @@ class AgentOsx extends system_1.default {
|
|
|
150
148
|
catch {
|
|
151
149
|
// do nothing
|
|
152
150
|
}
|
|
153
|
-
await this.saveFile(this.getServicePath(), this.getServiceConfig(json.id, json.host, json.token, json.port, user
|
|
151
|
+
await this.saveFile(this.getServicePath(), this.getServiceConfig(json.id, json.host, json.token, json.port, user));
|
|
154
152
|
// The directory follows the service to its new user, and back to root when the user is
|
|
155
153
|
// cleared - this is what makes changing the user later work without 0777 everywhere
|
|
156
154
|
await this.chownSystemDir(user);
|
|
@@ -55,6 +55,15 @@ class AgentSocketClient extends events_1.default {
|
|
|
55
55
|
version: this.version,
|
|
56
56
|
activate,
|
|
57
57
|
action: pending !== null ? pending : action,
|
|
58
|
+
// The live level, not the one the config records: DEBUG_ON is answered by this
|
|
59
|
+
// process, so what it runs at is the only answer worth reporting. Nothing reads it
|
|
60
|
+
// yet - the backend takes the fetch apart field by field and has nowhere to put
|
|
61
|
+
// this one, so the front offers both directions instead of a toggle. Sent anyway,
|
|
62
|
+
// and on every emit rather than only after a toggle: the day there is a column for
|
|
63
|
+
// it, every agent already in the field fills it in without being upgraded, and the
|
|
64
|
+
// whole row is rewritten per request so a payload that left it out would be a
|
|
65
|
+
// refresh tick clearing what a toggle had just reported.
|
|
66
|
+
debug: logger_1.default.debugOn,
|
|
58
67
|
disabled,
|
|
59
68
|
resetFirstHeard,
|
|
60
69
|
tunnels,
|
|
@@ -81,6 +90,7 @@ class AgentSocketClient extends events_1.default {
|
|
|
81
90
|
user: this.user,
|
|
82
91
|
version: this.version,
|
|
83
92
|
activate,
|
|
93
|
+
debug: logger_1.default.debugOn,
|
|
84
94
|
tunnels,
|
|
85
95
|
});
|
|
86
96
|
}
|
|
@@ -18,7 +18,7 @@ class AgentSystem {
|
|
|
18
18
|
serviceMode = false;
|
|
19
19
|
// extend
|
|
20
20
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
21
|
-
async install(_id, _host, _token, _port, _start, _user, _pass
|
|
21
|
+
async install(_id, _host, _token, _port, _start, _user, _pass) {
|
|
22
22
|
return Promise.reject();
|
|
23
23
|
}
|
|
24
24
|
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
@@ -858,9 +858,21 @@ class AgentSystem {
|
|
|
858
858
|
catch {
|
|
859
859
|
output_1.default.exitError(texts_1.ERR_AGENT_NOT_INSTALLED);
|
|
860
860
|
}
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
861
|
+
// Both ways, not only on: the config is what `agent debug` and the remote toggle write,
|
|
862
|
+
// so an agent turned back down starts back down - see the same read in `agent run` for
|
|
863
|
+
// why reading it only when true leaves an install that can never be quietened.
|
|
864
|
+
//
|
|
865
|
+
// The environment still wins upwards, unlike over there. This process is started by
|
|
866
|
+
// hand, so a DEBUG in it was typed by whoever is watching the run - where the one a
|
|
867
|
+
// service inherits is a leftover from the definition an older cli installed. Same OR
|
|
868
|
+
// the level had before this was a config at all: Logger seeds itself from DEBUG, so
|
|
869
|
+
// this only adds the config's ability to state `false`.
|
|
870
|
+
//
|
|
871
|
+
// The one place that assumption does not hold is a container started with `-e DEBUG=1`,
|
|
872
|
+
// where nothing was typed per run: there the remote toggle takes effect immediately but
|
|
873
|
+
// does not survive the container restarting, because the env is back and outranks the
|
|
874
|
+
// config again. Left that way on purpose - an image that asks for debug logs gets them.
|
|
875
|
+
logger_1.default.setDebug(!!json.debug || process.env.DEBUG === '1');
|
|
864
876
|
const saved = this.saveStandaloneProcConfig();
|
|
865
877
|
if (!saved) {
|
|
866
878
|
output_1.default.exitError(texts_1.ERR_SWW_AGENT_ENABLING);
|
|
@@ -116,7 +116,7 @@ class AgentWindows extends system_1.default {
|
|
|
116
116
|
throw err;
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
|
-
async install(id, host, token, port, start, user, pass
|
|
119
|
+
async install(id, host, token, port, start, user, pass) {
|
|
120
120
|
try {
|
|
121
121
|
// ensure srv was clear
|
|
122
122
|
await this.uninstall();
|
|
@@ -145,7 +145,6 @@ class AgentWindows extends system_1.default {
|
|
|
145
145
|
await this.nssm('set bdy AppRestartDelay 0');
|
|
146
146
|
await this.nssm('set bdy AppExit Default Restart');
|
|
147
147
|
await this.nssm('set bdy Start SERVICE_AUTO_START');
|
|
148
|
-
await this.nssm(`set bdy AppEnvironmentExtra DEBUG=${debug ? 1 : 0}`);
|
|
149
148
|
if (user && pass) {
|
|
150
149
|
await this.nssm(`set bdy ObjectName ${user} ${pass}`);
|
|
151
150
|
await this.grantAccess(user);
|
|
@@ -128,7 +128,7 @@ const installService = async (options) => {
|
|
|
128
128
|
}
|
|
129
129
|
await output_1.default.spinner(texts_1.TXT_ENABLING_AGENT);
|
|
130
130
|
try {
|
|
131
|
-
await AgentManager.system.install(id, host, agentToken, port, !!options.start, options.user, options.pass
|
|
131
|
+
await AgentManager.system.install(id, host, agentToken, port, !!options.start, options.user, options.pass);
|
|
132
132
|
}
|
|
133
133
|
catch {
|
|
134
134
|
await removeAllAndExit(texts_1.ERR_SWW_AGENT_ENABLING, id, host, agentToken);
|
|
@@ -17,6 +17,22 @@ commandAgentRun.action(async (options) => {
|
|
|
17
17
|
// the user it runs as has an `--app` install of their own
|
|
18
18
|
AgentManager.system.serviceMode = true;
|
|
19
19
|
logger_1.default.changeRootPath(AgentManager.system.getNewAgentConfigDir());
|
|
20
|
+
// The level comes from the agent config, which is the only place the two things that
|
|
21
|
+
// change it can write: `agent debug` and the remote DEBUG_ON action both run in a process
|
|
22
|
+
// that cannot rewrite a service definition, so a service reading DEBUG out of its own
|
|
23
|
+
// definition came back from every restart at the level it was installed with.
|
|
24
|
+
//
|
|
25
|
+
// Set unconditionally rather than only when true, so a DEBUG left behind in a definition
|
|
26
|
+
// written by an older cli is overridden by the config instead of being ored with it -
|
|
27
|
+
// otherwise an agent installed with --debug could never be turned back down.
|
|
28
|
+
try {
|
|
29
|
+
logger_1.default.setDebug(!!AgentManager.system.loadSystemConfig().debug);
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
// Nothing readable to take the level from - no install, or a config this process cannot
|
|
33
|
+
// read or parse. Whatever DEBUG the environment carries stands, which for a service is
|
|
34
|
+
// the one written by the cli that installed it.
|
|
35
|
+
}
|
|
20
36
|
AgentManager.start(options.id, options.host, options.token, parseInt(options.port, 10));
|
|
21
37
|
});
|
|
22
38
|
exports.default = commandAgentRun;
|
package/distTs/src/texts.js
CHANGED
|
@@ -9,18 +9,18 @@ exports.TXT_ARTIFACT_DOWNLOADED_ZIP = exports.TXT_ARTIFACT_DOWNLOADING_ZIP = exp
|
|
|
9
9
|
exports.OPTION_PIPELINE_RUN_NO_WAIT = exports.OPTION_PIPELINE_RUN_ACTION = exports.OPTION_REST_API_TOKEN = exports.OPTION_ARTIFACT_DOWNLOAD_REPLACE = exports.OPTION_ARTIFACT_DOWNLOAD_MERGE = exports.OPTION_ARTIFACT_PUBLISH_OVERWRITE_VERSION = exports.OPTION_ARTIFACT_VERSION_AGENT_NOTE = exports.OPTION_ARTIFACT_VERSION_NOTE = exports.OPTION_ARTIFACT_VERSION_FROM = exports.OPTION_ARTIFACT_PUBLISH_CREATE = exports.OPTION_ARTIFACT_ID = exports.OPTION_ARTIFACT_DOWNLOAD_PATH = exports.OPTION_ARTIFACT_PUBLISH_PATH = exports.OPTION_PIPELINE_RUN_ACTION_ID = exports.OPTION_PIPELINE_RUN_ID = exports.OPTION_PIPELINE_YAML = exports.TXT_PIPELINE_DELETED = exports.TXT_PIPELINE_DELETE_CONFIRM = exports.TXT_PIPELINE_UPDATED = exports.TXT_PIPELINE_CREATED = exports.OPTION_PIPELINE_NAME = exports.OPTION_PIPELINE_IDENTIFIER = exports.OPTION_PIPELINE_RUN_ARTIFACT = exports.OPTION_PIPELINE_RUN_ENVIRONMENT = exports.OPTION_PIPELINE_RUN_DELAY = exports.OPTION_PIPELINE_RUN_PAYLOAD = exports.ERR_RUN_PAYLOAD_TOO_MANY_FILES = exports.ERR_RUN_PAYLOAD_NOT_UPLOADED = exports.ERR_RUN_PAYLOAD_TOO_LARGE = exports.ERR_RUN_PAYLOAD_NO_ENTRIES = exports.ERR_RUN_VAR_FILE_INVALID = exports.ERR_RUN_VAR_FILE_NOT_FOUND = exports.OPTION_RUN_SINGLE_VAR_FILE = exports.OPTION_RUN_VAR_FILE = exports.OPTION_RUN_VAR = exports.OPTION_PIPELINE_RUN_PRIORITY = exports.OPTION_PIPELINE_RUN_CLEAR_CACHE = exports.OPTION_PIPELINE_RUN_REFRESH = exports.OPTION_PIPELINE_RUN_COMMENT = exports.OPTION_PIPELINE_RUN_PULL_REQUEST = exports.OPTION_PIPELINE_RUN_REVISION = exports.OPTION_PIPELINE_RUN_TAG = exports.OPTION_PIPELINE_RUN_BRANCH = exports.OPTION_REST_API_REGION = exports.OPTION_REST_API_ENDPOINT = exports.OPTION_DEFAULT_REGION = exports.OPTION_REGION = exports.TXT_ARTIFACT_UNZIPPING_COUNT = exports.TXT_ARTIFACT_UNZIPPED = exports.TXT_ARTIFACT_UNZIPPING = void 0;
|
|
10
10
|
exports.OPTION_EXEC_PARALLEL = exports.OPTION_EXEC_ONE_BY_ONE = exports.OPTION_EXEC_SKIP_DISCOVERY = exports.OPTION_EXEC_COMMAND = exports.OPTION_AGENT_DEBUG = exports.OPTION_AGENT_PORT = exports.OPTION_AGENT_TAG = exports.OPTION_AGENT_TUNNELING = exports.OPTION_AGENT_PROXY = exports.OPTION_AGENT_TARGET = exports.OPTION_PASS = exports.OPTION_APP = exports.OPTION_USER = exports.OPTION_AGENT_TOKEN = exports.OPTION_AGENT_START = exports.OPTION_AGENT_ID = exports.OPTION_ID = exports.OPTION_NAME = exports.OPTION_TARGET = exports.OPTION_TLS_TERMINATE = exports.OPTION_TLS_CA = exports.OPTION_TLS_CERT = exports.OPTION_TLS_KEY = exports.OPTION_HTTP_CIRCUIT_BREAKER = exports.OPTION_HTTP_COMPRESSION = exports.OPTION_HTTP_2 = exports.OPTION_HTTP_VERIFY = exports.OPTION_HTTP_LOG = exports.OPTION_HTTP_AUTH_BUDDY = exports.OPTION_HTTP_AUTH = exports.OPTION_HTTP_HOST = exports.OPTION_CONFIRM_DOMAIN_BUY = exports.OPTION_CONFIRM_FORCE = exports.OPTION_FORCE = exports.OPTION_TOKEN = exports.OPTION_TIMEOUT = exports.OPTION_FOLLOW = exports.OPTION_SERVE = exports.OPTION_HEADER_USER_AGENT = exports.OPTION_RESPONSE_HEADER = exports.OPTION_HEADER = exports.OPTION_WHITELIST = exports.OPTION_REST_API_PER_PAGE = exports.OPTION_REST_API_PAGE = exports.OPTION_REST_API_PROJECT = exports.OPTION_REST_API_WORKSPACE = exports.OPTION_FORMAT_JSONL = exports.OPTION_FORMAT = exports.OPTION_VERSION = exports.OPTION_PIPELINE_RUN_NO_FOLLOW = void 0;
|
|
11
11
|
exports.LOG_REGION_DETECTED = exports.LOG_AGENT_REGISTERED = exports.LOG_SOCKET_DISCONNECTED = exports.LOG_SOCKET_CONNECTED = exports.LOG_AGENT_NSSM_CLEARING = exports.LOG_AGENT_NSSM_EXTRACTING = exports.LOG_AGENT_NSSM_DOWNLOADING = exports.LOG_AGENT_ENABLED = exports.LOG_AGENT_STARTING_SYSTEM = exports.LOG_AGENT_STOPPING_SYSTEM = exports.LOG_AGENT_ENABLING_SYSTEM = exports.LOG_AGENT_SYSTEM_SERVICE_CONFIG = exports.LOG_AGENT_EXTRACTING_ARCHIVE = exports.LOG_AGENT_DOWNLOADING_ARCHIVE = exports.LOG_AGENT_SYSTEM_DIR = exports.LOG_ERROR_SAVING_AGENT_LOCAL_CONFIG = exports.LOG_ERROR_REMOVING_AGENT_STANDALONE_LOCK_FILE = exports.LOG_ERROR_SAVING_AGENT_STANDALONE_CONFIG = exports.LOG_ERROR_SAVING_AGENT_SYSTEM_CONFIG = exports.LOG_SAVING_AGENT_LOCAL_CONFIG = exports.LOG_REMOVING_AGENT_PROC_ID = exports.LOG_SAVING_AGENT_PROC_ID = exports.LOG_SAVING_AGENT_SYSTEM_CONFIG = exports.LOG_REGISTERING_AGENT = exports.OPTION_CRAWL_OUTPUT_TYPES = exports.OPTION_CRAWL_OUTPUT_DIR = exports.OPTION_CRAWL_DELAY = exports.OPTION_CRAWL_LOCAL_STORAGE = exports.OPTION_CRAWL_DEVICES = exports.OPTION_CRAWL_BROWSERS = exports.OPTION_CRAWL_COLOR_SCHEME = exports.OPTION_CRAWL_XPATH_SELECTOR = exports.OPTION_CRAWL_CSS_SELECTOR = exports.OPTION_CRAWL_FULL_PAGE = exports.OPTION_CRAWL_QUALITY = exports.OPTION_CRAWL_OUTPUT_TYPE = exports.OPTION_CRAWL_FOLLOW = exports.OPTION_CRAWL_URL = exports.OPTION_COMPARE_WAIT_FOR = exports.OPTION_COMPARE_DELAY = exports.OPTION_COMPARE_HEADER = exports.OPTION_COMPARE_COOKIE = exports.OPTION_COMPARE_IGNORE = exports.OPTION_COMPARE_IGNORE_URLS = exports.OPTION_COMPARE_DRY_RUN = exports.OPTION_COMPARE_URLS_FILE = exports.OPTION_COMPARE_SITEMAP = exports.OPTION_COMPARE_URLS = exports.OPTION_COMPARE_RESPECT_ROBOTS = exports.OPTION_COMPARE_FOLLOW = void 0;
|
|
12
|
-
exports.
|
|
13
|
-
exports.
|
|
14
|
-
exports.
|
|
15
|
-
exports.
|
|
16
|
-
exports.
|
|
17
|
-
exports.
|
|
18
|
-
exports.
|
|
19
|
-
exports.
|
|
20
|
-
exports.
|
|
21
|
-
exports.
|
|
22
|
-
exports.
|
|
23
|
-
exports.EXAMPLE_CRAWL_LINK = exports.EXAMPLE_CRAWL_RUN = exports.EXAMPLE_TESTS_CAPTURE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CLOSE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CREATE = exports.EXAMPLE_TESTS_VISUAL_LINK = exports.EXAMPLE_TESTS_VISUAL_UPLOAD = exports.EXAMPLE_TESTS_VISUAL_SETUP = exports.EXAMPLE_TESTS_UNIT_LINK = exports.EXAMPLE_TESTS_UNIT_UPLOAD = exports.EXAMPLE_ARTIFACT_VERSION_DELETE = exports.EXAMPLE_ARTIFACT_VERSION_GET = exports.EXAMPLE_ARTIFACT_VERSION_LIST = exports.EXAMPLE_ARTIFACT_CREATE = exports.EXAMPLE_ARTIFACT_DELETE = exports.EXAMPLE_ARTIFACT_DOWNLOAD = exports.EXAMPLE_ARTIFACT_PUBLISH = exports.EXAMPLE_ARTIFACT_VERSION_CREATE = exports.EXAMPLE_PIPELINE_RUN_RETRY = exports.EXAMPLE_PIPELINE_RUN_LIST = exports.EXAMPLE_PIPELINE_LIST = exports.EXAMPLE_PIPELINE_YML = exports.EXAMPLE_PIPELINE_GET = exports.EXAMPLE_PIPELINE_UPDATE = exports.EXAMPLE_PIPELINE_DELETE = exports.EXAMPLE_PIPELINE_CREATE = void 0;
|
|
12
|
+
exports.LOG_AGENT_DEBUG_NOT_PERSISTED = exports.LOG_AGENT_DEBUG_REMOTE = exports.LOG_AGENT_UPDATE_ROLLBACK_MISSING = exports.LOG_AGENT_UPDATE_NOT_AN_AGENT = exports.LOG_AGENT_UPDATE_ROLLBACK_ACKED = exports.LOG_AGENT_UPDATE_ROLLED_BACK = exports.LOG_AGENT_UPDATE_ATTEMPT = exports.LOG_AGENT_UPDATE_COMMITTED = exports.LOG_AGENT_UPDATE_BINARY_INVALID = exports.ERR_AGENT_UPDATE_IN_PROGRESS = exports.LOG_AGENT_UPDATE_UNINSTALLED = exports.LOG_AGENT_UPDATE_VERSION_MISMATCH = exports.LOG_AGENT_UPDATE_FAILED = exports.LOG_AGENT_UPDATE_SWAPPED = exports.LOG_AGENT_UPDATE_NOT_NEEDED = exports.LOG_AGENT_UPDATE_NO_ADMIN = exports.LOG_AGENT_UPDATE_STANDALONE = exports.LOG_AGENT_UPDATE_REQUESTED = exports.LOG_AGENT_RIGHTS_SKIPPED = exports.LOG_AGENT_RIGHTS_DIR_SKIPPED = exports.LOG_AGENT_SERVER_STARTED = exports.LOG_ERROR_STARTING_AGENT_SERVER = exports.LOG_SSH_CONNECTION = exports.LOG_LATE_TARGET_ERROR = exports.LOG_LATE_CHANNEL_ERROR = exports.LOG_HANDSHAKE_TIMEOUT = exports.LOG_WRONG_STREAM = exports.LOG_DETECTED_STREAM = exports.LOG_HTTP2_SESSION_TIMEOUT = exports.LOG_HTTP2_SESSION_SHED_TAIL = exports.LOG_HTTP2_SESSION_SHED = exports.LOG_HTTP2_REQUEST = exports.LOG_HTTP2_CONNECTION = exports.LOG_HTTP1_REQUEST = exports.LOG_HTTP1_CONNECTION = exports.LOG_ERROR = exports.LOG_STOPPING_TUNNEL = exports.LOG_STARTING_TUNNEL = exports.LOG_ENABLING_AGENT_TUNNELING = exports.LOG_ENABLING_AGENT_PROXY = exports.LOG_ENABLING_AGENT_TARGET = exports.LOG_DISABLING_AGENT_TUNNELING = exports.LOG_DISABLING_AGENT_PROXY = exports.LOG_DISABLING_AGENT_TARGET = exports.LOG_REMOVING_TUNNEL = exports.LOG_TUNNEL_REGISTERED = exports.LOG_ERROR_WHILE_REFRESHING_AGENT = exports.LOG_REGISTERING_TUNNEL = exports.LOG_GETTING_AGENT = exports.LOG_UNREGISTERING_AGENT = void 0;
|
|
13
|
+
exports.OPTION_SANDBOX_NAME = exports.OPTION_SANDBOX_IDENTIFIER = exports.DESC_COMMAND_SANDBOX_SSH = exports.DESC_COMMAND_SANDBOX_APP = exports.DESC_COMMAND_SANDBOX_EXEC = exports.DESC_COMMAND_SANDBOX_STATUS = exports.DESC_COMMAND_SANDBOX_LOGS = exports.DESC_COMMAND_SANDBOX_RESTART = exports.DESC_COMMAND_SANDBOX_STOP = exports.DESC_COMMAND_SANDBOX_START = exports.DESC_COMMAND_SANDBOX_DESTROY = exports.DESC_COMMAND_SANDBOX_GET = exports.DESC_COMMAND_SANDBOX_LIST = exports.DESC_COMMAND_SANDBOX_UPDATE = exports.DESC_COMMAND_SANDBOX_GET_YAML = exports.DESC_COMMAND_SANDBOX_CREATE = exports.DESC_COMMAND_SANDBOX = exports.DEBUG_WAIT_FOR_IDLE_TIMEOUT = exports.DEBUG_WAIT_FOR_IDLE = exports.DEBUG_RESOURCE_DISCOVERY_TIMEOUT = exports.DEBUG_AUTO_WIDTH = exports.DEBUG_AUTO_SCROLL = exports.DEBUG_RESOURCE_CRAWLING_URL = exports.DEBUG_SNAPSHOT_PROCESSING = exports.DEBUG_SNAPSHOTS_PROCESSING = exports.DEBUG_EXEC_COMMAND = exports.DEBUG_EXEC_TEST_COMMAND = exports.LOG_INSTALLED_BROWSER = exports.LOG_SESSION_LINK = exports.LOG_SENDING_DATA = exports.LOG_SENDING_REQUEST = exports.LOG_PROCESSING_SNAPSHOTS = exports.LOG_RUNNING_EXEC_COMMAND = exports.LOG_TUNNEL_SSH_STREAM = exports.LOG_TUNNEL_TLS_AGENT_STREAM = exports.LOG_TUNNEL_TLS_REGION_STREAM = exports.LOG_TUNNEL_TLS_TARGET_STREAM = exports.LOG_TUNNEL_HTTP2_STREAM = exports.LOG_TUNNEL_HTTP1_STREAM = exports.LOG_TUNNEL_TCP_STREAM = exports.LOG_TUNNEL_HTTP_WRONG_USER_AGENTS = exports.LOG_TUNNEL_HTTP_CIRCUIT_BREAKER_OPEN = exports.LOG_TUNNEL_HTTP_MAX_INFLIGHT = exports.LOG_TUNNEL_HTTP_RATE_LIMIT = exports.LOG_TUNNEL_HTTP_WRON_AUTH = exports.LOG_TUNNEL_IDENTIFIED = exports.LOG_TUNNEL_DISCONNECTED = exports.LOG_TUNNEL_FAILED = exports.LOG_TUNNEL_CONNECTED = exports.LOG_AGENT_STARTED = void 0;
|
|
14
|
+
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_SSH_MISSING = exports.ERR_SANDBOX_SSH_NO_ACCESS = exports.ERR_SANDBOX_NOT_RUNNING = 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_SSH_PRINT = exports.OPTION_SANDBOX_SSH_IDENTITY = exports.OPTION_SANDBOX_SSH_ARGS = exports.OPTION_SANDBOX_RUNTIME = exports.OPTION_SANDBOX_TIMEOUT = exports.OPTION_SANDBOX_FETCH = exports.OPTION_SANDBOX_APP_DIR = exports.OPTION_SANDBOX_APP_COMMAND = exports.OPTION_SANDBOX_YAML = exports.OPTION_SANDBOX_TAGS = exports.OPTION_SANDBOX_INSTALL_SCRIPT = exports.OPTION_SANDBOX_INSTALL_COMMANDS = exports.OPTION_SANDBOX_RESOURCES = exports.OPTION_SANDBOX_OS = exports.OPTION_SANDBOX_AGENT_NOTE = exports.OPTION_SANDBOX_NOTE = void 0;
|
|
15
|
+
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 = 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 = void 0;
|
|
16
|
+
exports.ERR_TARGET_NOT_FOUND = exports.OPTION_TARGET_EXEC_FILE = exports.OPTION_TARGET_EXEC_ASYNC = exports.OPTION_TARGET_EXEC_COMMAND = exports.OPTION_TARGET_EXEC_LOG_LIMIT = exports.OPTION_TARGET_EXEC_LOG_OFFSET = exports.OPTION_TARGET_EXEC_LIMIT = exports.OPTION_TARGET_EXEC_ID = exports.OPTION_TARGET_YAML = exports.OPT_COMMAND_TARGET_SCOPE = exports.OPTION_TARGET_ENVIRONMENT = exports.OPTION_TARGET_PIPELINE = exports.OPTION_TARGET_IDENTIFIER = exports.DESC_COMMAND_TARGET_EXEC_LOGS = exports.DESC_COMMAND_TARGET_EXEC_LIST = exports.DESC_COMMAND_TARGET_EXEC_KILL = exports.DESC_COMMAND_TARGET_EXEC_STATUS = exports.DESC_COMMAND_TARGET_EXEC = exports.DESC_COMMAND_TARGET_DELETE = exports.DESC_COMMAND_TARGET_UPDATE = exports.DESC_COMMAND_TARGET_CREATE = exports.DESC_COMMAND_TARGET_GET = exports.DESC_COMMAND_TARGET_LIST = exports.DESC_COMMAND_TARGET = 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 = 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_IGNORE = exports.OPTION_SANDBOX_CP_USER = exports.OPTION_SANDBOX_CP_DOWNLOAD_REPLACE = exports.OPTION_SANDBOX_CP_DOWNLOAD_MERGE = exports.OPTION_SANDBOX_CP_DEST = void 0;
|
|
17
|
+
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_ENVIRONMENT_DELETED = exports.TXT_ENVIRONMENT_DELETE_CONFIRM = exports.TXT_ENVIRONMENT_UPDATED = exports.TXT_ENVIRONMENT_CREATED = exports.TXT_ENVIRONMENT_NOT_FOUND = exports.ERR_ENVIRONMENT_NOT_FOUND = exports.OPTION_ENVIRONMENT_ICON = exports.OPTION_ENVIRONMENT_PUBLIC_URL = exports.OPTION_ENVIRONMENT_TAGS = exports.OPTION_ENVIRONMENT_CREATE_IDENTIFIER = exports.OPTION_ENVIRONMENT_NAME = exports.OPTION_ENVIRONMENT_IDENTIFIER = exports.DESC_COMMAND_ENVIRONMENT_DELETE = exports.DESC_COMMAND_ENVIRONMENT_UPDATE = exports.DESC_COMMAND_ENVIRONMENT_CREATE = exports.DESC_COMMAND_ENVIRONMENT_GET = exports.DESC_COMMAND_ENVIRONMENT_LIST = exports.DESC_COMMAND_ENVIRONMENT = exports.TXT_TARGET_EXEC_KILLED = exports.TXT_TARGET_EXEC_KILL_CONFIRM = exports.WARN_TARGET_EXEC_TRUNCATED = exports.TXT_TARGET_EXEC_CANCELLED = exports.TXT_TARGET_EXEC_FAILED = exports.TXT_TARGET_EXEC_SUCCESS = exports.TXT_TARGET_EXEC_BACKGROUND = exports.TXT_TARGET_EXEC_ID = exports.TXT_TARGET_DELETED = exports.TXT_TARGET_DELETE_CONFIRM = exports.TXT_TARGET_UPDATED = exports.TXT_TARGET_CREATED = exports.TXT_TARGET_NOT_FOUND = exports.ERR_TARGET_SCOPE_NO_ENVIRONMENT = exports.ERR_TARGET_SCOPE_NO_PIPELINE = exports.ERR_TARGET_PIPELINE_ENV_CONFLICT = exports.ERR_TARGET_PIPELINE_REQUIRES_PROJECT = exports.ERR_TARGET_SCOPE = exports.ERR_TARGET_ENVIRONMENT_NOT_FOUND = exports.ERR_TARGET_EXEC_FILE_NOT_FOUND = exports.ERR_TARGET_EXEC_COMMAND_CONFLICT = exports.ERR_TARGET_EXEC_NO_COMMAND = exports.ERR_TARGET_NO_EXECS = void 0;
|
|
18
|
+
exports.TXT_WORKSPACE_SET_SUCCESS = exports.ARG_COMMAND_WORKSPACE = exports.DESC_COMMAND_WORKSPACE_GET = exports.DESC_COMMAND_WORKSPACE_SET = exports.DESC_COMMAND_WORKSPACE_LIST = exports.DESC_COMMAND_WORKSPACE = exports.TXT_COMMAND_REGISTER_PROVIDE_NAME = exports.TXT_COMMAND_REGISTER_PROVIDE_EMAIL = exports.ERR_COMMAND_REGISTER_INVALID_NAME = exports.ERR_COMMAND_REGISTER_INVALID_EMAIL = exports.OPT_COMMAND_REGISTER_NAME = exports.OPT_COMMAND_REGISTER_EMAIL = exports.DESC_COMMAND_REGISTER = exports.TXT_LOGOUT_SUCCESS = exports.DESC_COMMAND_LOGOUT = exports.DESC_COMMAND_LOGIN = exports.HELP_COMMAND_MCP = exports.ERR_MCP_TOOL_FILTERED = exports.ERR_MCP_TOOLS_CATEGORY = exports.OPT_COMMAND_MCP_TOOLS = exports.ERR_MCP_REFRESH_FAILED = exports.ERR_MCP_URL_INVALID = exports.ERR_MCP_ENDPOINT = exports.DESC_COMMAND_MCP = 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 = void 0;
|
|
19
|
+
exports.OPT_COMMAND_DISTRO_DISABLE = exports.OPT_COMMAND_DISTRO_ENABLE = exports.OPT_COMMAND_DISTRO_AGENT_NOTE = exports.OPT_COMMAND_DISTRO_NOTE = exports.OPT_COMMAND_DISTRO_NAME = exports.OPT_COMMAND_ROUTE_TARGET = exports.OPT_COMMAND_ROUTE_AGENT_NOTE = exports.OPT_COMMAND_ROUTE_NOTE = exports.OPT_COMMAND_ROUTE_PATH = exports.OPT_COMMAND_ROUTE_DOMAIN = exports.OPT_COMMAND_ROUTE_SUBDOMAIN = exports.OPT_COMMAND_ROUTE_TYPE = exports.OPT_COMMAND_ROUTE_ID = exports.OPT_COMMAND_DISTRO_IDENTIFIER = exports.OPT_COMMAND_SCOPE = exports.OPT_COMMAND_AGENT_NOTE = exports.OPT_COMMAND_NOTE = exports.DESC_COMMAND_ROUTE = exports.DESC_COMMAND_ROUTE_UPDATE = exports.DESC_COMMAND_ROUTE_DELETE = exports.DESC_COMMAND_ROUTE_GET = exports.DESC_COMMAND_DISTRO_UPDATE = exports.DESC_COMMAND_DISTRO_GET = exports.DESC_COMMAND_ROUTE_LIST = exports.DESC_COMMAND_DISTRO_LIST = exports.DESC_COMMAND_DISTRO_DELETE = exports.DESC_COMMAND_ROUTE_CREATE = exports.DESC_COMMAND_DISTRO_CREATE = exports.DESC_COMMAND_DISTRO = exports.ERR_API_MESSAGE_REPLACER = exports.ERR_LOGIN_INVALID_BASE_URL = exports.ERR_LOGIN_NO_WORKSPACE_FOUND = exports.ERR_LOGIN_NO_WORKSPACES = exports.ERR_REGISTER_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_FAILED = exports.ERR_LOGIN_HTTP_SERVER_PORT_TAKEN = exports.TXT_REGISTER_SUCCESS = exports.TXT_LOGIN_SUCCESS = exports.TXT_LOGIN_SELECT_WORKSPACE = exports.TXT_LOGIN_ENTER_BASE_URL = exports.TXT_LOGIN_PROVIDE_CODE = exports.TXT_REGISTER_OPEN_URL = exports.TXT_LOGIN_OPEN_URL = exports.TXT_REGISTER_OPENING_STAR = exports.TXT_LOGIN_OPENING_STAR = exports.TXT_REGISTER_OPENING = exports.TXT_LOGIN_OPENING = exports.TXT_LOGIN_SELECT_REGION = exports.TXT_WORKSPACE_NONE = void 0;
|
|
20
|
+
exports.DESC_COMMAND_ARTIFACT_GET = exports.TXT_ARTIFACT_DOCKER_LOGIN_FAILED = exports.TXT_ARTIFACT_DOCKER_LOGIN_SUCCESS = exports.TXT_ARTIFACT_VERSION_DELETE_CONFIRM = exports.TXT_ARTIFACT_DELETE_CONFIRM = exports.DESC_COMMAND_ARTIFACT_DELETE = exports.ERR_COMMAND_ARTIFACT_NO_PROJECTS = exports.DESC_COMMAND_ARTIFACT_VERSION_GET = exports.DESC_COMMAND_ARTIFACT_VERSION_LIST = exports.DESC_COMMAND_ARTIFACT_VERSION_DELETE = exports.DESC_COMMAND_ARTIFACT_DOCKER_LOGIN = exports.DESC_COMMAND_ARTIFACT_LIST = exports.DESC_COMMAND_ARTIFACT_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_ROUTE_NO_DEFAULT = exports.ERR_WRONG_ROUTE_TARGET = exports.ERR_COMMAND_ROUTE_NO_TARGET = exports.ERR_COMMAND_ROUTE_TYPE = exports.TXT_COMMAND_ROUTES_NOT_FOUND = exports.TXT_COMMAND_DISTROS_NOT_FOUND = exports.TXT_COMMAND_ROUTE_DELETED = exports.TXT_COMMAND_DISTRO_DELETED = exports.TXT_COMMAND_ROUTE_DELETE_CONFIRM = exports.TXT_COMMAND_DISTRO_DELETE_CONFIRM = exports.ERR_COMMAND_DISTRO_ENABLE_DISABLE = exports.ERR_COMMAND_NO_UPDATE = exports.ERR_COMMAND_DISTRO_NOT_FOUND = exports.ERR_COMMAND_SCOPE = exports.TXT_COMMAND_DISTRO_UPDATED = exports.TXT_COMMAND_ROUTE_UPDATED = exports.TXT_ROUTE_SERVE = exports.TXT_COMMAND_ROUTE_CREATED = exports.TXT_COMMAND_DISTRO_CREATED = exports.ERR_COMMAND_SCOPE_NO_PROJECT = void 0;
|
|
21
|
+
exports.EXAMPLE_ROUTE_CREATE = exports.EXAMPLE_ROUTE_LIST = exports.EXAMPLE_ROUTE_UPDATE = exports.EXAMPLE_ROUTE_DELETE = exports.EXAMPLE_DISTRO_DELETE = exports.EXAMPLE_ROUTE_GET = exports.EXAMPLE_DISTRO_UPDATE = exports.EXAMPLE_DISTRO_GET = exports.EXAMPLE_DISTRO_LIST = 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_ARTIFACT_VERSION_DOWNLOAD = exports.TXT_ARTIFACT_PUBLISH = exports.TXT_ARTIFACT_CREATED = exports.TXT_ARTIFACT_VERSION_DELETED = exports.TXT_ARTIFACT_DELETED = exports.ERR_COMMAND_ARTIFACT_TYPE = exports.OPT_COMMAND_ARTIFACT_VERSION = exports.OPT_COMMAND_ARTIFACT_IDENTIFIER = exports.OPT_COMMAND_ARTIFACT_CREATE_IDENTIFIER = exports.OPT_COMMAND_ARTIFACT_NAME = exports.OPT_COMMAND_ARTIFACT_TYPE = exports.DESC_COMMAND_ARTIFACT_CREATE = void 0;
|
|
22
|
+
exports.EXAMPLE_PIPELINE_RUN_LOGS = exports.EXAMPLE_PIPELINE_RUN_JSONL = exports.EXAMPLE_PIPELINE_RUN_STATUS = exports.EXAMPLE_PIPELINE_RUN_START = exports.EXAMPLE_SANDBOX_ENDPOINT_LIST = exports.EXAMPLE_SANDBOX_ENDPOINT_GET = exports.EXAMPLE_SANDBOX_ENDPOINT_DELETE = exports.EXAMPLE_SANDBOX_ENDPOINT_CREATE = exports.EXAMPLE_ENVIRONMENT_DELETE = exports.EXAMPLE_ENVIRONMENT_UPDATE = exports.EXAMPLE_ENVIRONMENT_CREATE = exports.EXAMPLE_ENVIRONMENT_GET = exports.EXAMPLE_ENVIRONMENT_LIST = exports.EXAMPLE_TARGET_EXEC_LOGS = exports.EXAMPLE_TARGET_EXEC_LIST = exports.EXAMPLE_TARGET_EXEC_KILL = exports.EXAMPLE_TARGET_EXEC_STATUS = exports.EXAMPLE_TARGET_EXEC_COMMAND = exports.EXAMPLE_TARGET_DELETE = exports.EXAMPLE_TARGET_UPDATE = exports.EXAMPLE_TARGET_CREATE = exports.EXAMPLE_TARGET_GET = exports.EXAMPLE_TARGET_LIST = 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 = exports.EXAMPLE_SANDBOX_APP_LIST = exports.EXAMPLE_SANDBOX_EXEC_KILL = exports.EXAMPLE_SANDBOX_SSH = 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_DISTRO_CREATE = void 0;
|
|
23
|
+
exports.EXAMPLE_CRAWL_LINK = exports.EXAMPLE_CRAWL_RUN = exports.EXAMPLE_TESTS_CAPTURE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CLOSE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CREATE = exports.EXAMPLE_TESTS_VISUAL_LINK = exports.EXAMPLE_TESTS_VISUAL_UPLOAD = exports.EXAMPLE_TESTS_VISUAL_SETUP = exports.EXAMPLE_TESTS_UNIT_LINK = exports.EXAMPLE_TESTS_UNIT_UPLOAD = exports.EXAMPLE_ARTIFACT_VERSION_DELETE = exports.EXAMPLE_ARTIFACT_VERSION_GET = exports.EXAMPLE_ARTIFACT_VERSION_LIST = exports.EXAMPLE_ARTIFACT_CREATE = exports.EXAMPLE_ARTIFACT_DELETE = exports.EXAMPLE_ARTIFACT_DOWNLOAD = exports.EXAMPLE_ARTIFACT_PUBLISH = exports.EXAMPLE_ARTIFACT_VERSION_CREATE = exports.EXAMPLE_PIPELINE_RUN_RETRY = exports.EXAMPLE_PIPELINE_RUN_LIST = exports.EXAMPLE_PIPELINE_LIST = exports.EXAMPLE_PIPELINE_YML = exports.EXAMPLE_PIPELINE_GET = exports.EXAMPLE_PIPELINE_UPDATE = exports.EXAMPLE_PIPELINE_DELETE = exports.EXAMPLE_PIPELINE_CREATE = exports.EXAMPLE_PIPELINE_RUN_CANCEL = exports.EXAMPLE_PIPELINE_RUN_APPLY = void 0;
|
|
24
24
|
const utils_1 = require("./utils");
|
|
25
25
|
exports.ERR_CANCELLED = 'Cancelled';
|
|
26
26
|
exports.ERR_REST_API_GENERAL_ERROR = 'Something went wrong';
|
|
@@ -625,6 +625,9 @@ const LOG_AGENT_UPDATE_ROLLBACK_ACKED = (version) => `Update to '${version}' was
|
|
|
625
625
|
exports.LOG_AGENT_UPDATE_ROLLBACK_ACKED = LOG_AGENT_UPDATE_ROLLBACK_ACKED;
|
|
626
626
|
exports.LOG_AGENT_UPDATE_NOT_AN_AGENT = 'Remote update applies to an installed agent, this is a foreground tunnel with no binary of its own to replace';
|
|
627
627
|
exports.LOG_AGENT_UPDATE_ROLLBACK_MISSING = 'Updated agent kept restarting but the previous binary is gone, nothing to roll back to';
|
|
628
|
+
const LOG_AGENT_DEBUG_REMOTE = (debug) => `Remote request: change debug to ${debug}`;
|
|
629
|
+
exports.LOG_AGENT_DEBUG_REMOTE = LOG_AGENT_DEBUG_REMOTE;
|
|
630
|
+
exports.LOG_AGENT_DEBUG_NOT_PERSISTED = 'Debug mode changed for this process only, the agent config could not be written - it will be lost on restart';
|
|
628
631
|
exports.LOG_AGENT_STARTED = 'Agent started';
|
|
629
632
|
const LOG_TUNNEL_CONNECTED = (id, port) => `Tunnel '${id}' connected. Forwarding port '${port}'`;
|
|
630
633
|
exports.LOG_TUNNEL_CONNECTED = LOG_TUNNEL_CONNECTED;
|
|
@@ -139,10 +139,21 @@ var TUNNEL_AGENT_STATUS;
|
|
|
139
139
|
TUNNEL_AGENT_STATUS["INITIALIZING"] = "initializing";
|
|
140
140
|
TUNNEL_AGENT_STATUS["DISABLED"] = "disabled";
|
|
141
141
|
})(TUNNEL_AGENT_STATUS || (exports.TUNNEL_AGENT_STATUS = TUNNEL_AGENT_STATUS = {}));
|
|
142
|
+
// Requests the front writes into the agent's `action` field. An agent too old to know a
|
|
143
|
+
// value leaves it alone rather than acking it (see makeAction), so the request would sit
|
|
144
|
+
// there unanswered - which is why the front gates these on the version the agent reports
|
|
145
|
+
// rather than relying on the agent to refuse them.
|
|
142
146
|
var TUNNEL_AGENT_ACTION;
|
|
143
147
|
(function (TUNNEL_AGENT_ACTION) {
|
|
144
148
|
TUNNEL_AGENT_ACTION["DELETE"] = "DELETE";
|
|
145
149
|
TUNNEL_AGENT_ACTION["UPDATE"] = "UPDATE";
|
|
150
|
+
// Set the agent's log level where it runs. Unlike the two above, these are idempotent:
|
|
151
|
+
// acting on the same value twice is a no-op, so a request that comes back after being
|
|
152
|
+
// acked costs nothing - which is also why there is no status to report. Nothing carries
|
|
153
|
+
// the level anywhere either, so the front sends whichever of the two was asked for
|
|
154
|
+
// rather than toggling a state it knows.
|
|
155
|
+
TUNNEL_AGENT_ACTION["DEBUG_ON"] = "DEBUG_ON";
|
|
156
|
+
TUNNEL_AGENT_ACTION["DEBUG_OFF"] = "DEBUG_OFF";
|
|
146
157
|
})(TUNNEL_AGENT_ACTION || (exports.TUNNEL_AGENT_ACTION = TUNNEL_AGENT_ACTION = {}));
|
|
147
158
|
// Written back into the same `action` field, which the backend stores as a plain string
|
|
148
159
|
// and never interprets. Disjoint from TUNNEL_AGENT_ACTION on purpose: those two values
|