bdy 1.12.8-beta → 1.12.8-dev-pipeline-run
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/package.json +1 -1
- package/distTs/bin/cli.js +0 -5
- package/distTs/src/agent/agent.js +0 -328
- package/distTs/src/agent/linux.js +0 -124
- package/distTs/src/agent/manager.js +0 -519
- package/distTs/src/agent/osx.js +0 -146
- package/distTs/src/agent/socket/client.js +0 -178
- package/distTs/src/agent/socket/tunnel.js +0 -237
- package/distTs/src/agent/socket.js +0 -242
- package/distTs/src/agent/system.js +0 -179
- package/distTs/src/agent/wait.js +0 -23
- package/distTs/src/agent/windows.js +0 -159
- package/distTs/src/agent.js +0 -302
- package/distTs/src/api/agent.js +0 -99
- package/distTs/src/api/buddy.js +0 -139
- package/distTs/src/api/socket.js +0 -159
- package/distTs/src/cfg.js +0 -234
- package/distTs/src/command/agent/disable.js +0 -27
- package/distTs/src/command/agent/enable.js +0 -27
- package/distTs/src/command/agent/install.js +0 -117
- package/distTs/src/command/agent/restart.js +0 -27
- package/distTs/src/command/agent/run.js +0 -19
- package/distTs/src/command/agent/start.js +0 -28
- package/distTs/src/command/agent/status.js +0 -34
- package/distTs/src/command/agent/stop.js +0 -28
- package/distTs/src/command/agent/target/disable.js +0 -27
- package/distTs/src/command/agent/target/enable.js +0 -27
- package/distTs/src/command/agent/target/status.js +0 -32
- package/distTs/src/command/agent/target.js +0 -15
- package/distTs/src/command/agent/tunnel/http.js +0 -43
- package/distTs/src/command/agent/tunnel/list.js +0 -27
- package/distTs/src/command/agent/tunnel/remove.js +0 -28
- package/distTs/src/command/agent/tunnel/start.js +0 -34
- package/distTs/src/command/agent/tunnel/status.js +0 -31
- package/distTs/src/command/agent/tunnel/tcp.js +0 -43
- package/distTs/src/command/agent/tunnel/tls.js +0 -43
- package/distTs/src/command/agent/tunnel.js +0 -23
- package/distTs/src/command/agent/uninstall.js +0 -44
- package/distTs/src/command/agent/update.js +0 -38
- package/distTs/src/command/agent/version.js +0 -21
- package/distTs/src/command/agent.js +0 -35
- package/distTs/src/command/config/add/http.js +0 -25
- package/distTs/src/command/config/add/tcp.js +0 -25
- package/distTs/src/command/config/add/tls.js +0 -25
- package/distTs/src/command/config/add.js +0 -15
- package/distTs/src/command/config/get/region.js +0 -15
- package/distTs/src/command/config/get/timeout.js +0 -15
- package/distTs/src/command/config/get/token.js +0 -15
- package/distTs/src/command/config/get/tunnel.js +0 -19
- package/distTs/src/command/config/get/tunnels.js +0 -15
- package/distTs/src/command/config/get/whitelist.js +0 -15
- package/distTs/src/command/config/get.js +0 -21
- package/distTs/src/command/config/remove/tunnel.js +0 -19
- package/distTs/src/command/config/remove.js +0 -11
- package/distTs/src/command/config/set/region.js +0 -17
- package/distTs/src/command/config/set/timeout.js +0 -17
- package/distTs/src/command/config/set/token.js +0 -16
- package/distTs/src/command/config/set/whitelist.js +0 -17
- package/distTs/src/command/config/set.js +0 -17
- package/distTs/src/command/config.js +0 -17
- package/distTs/src/command/http.js +0 -30
- package/distTs/src/command/pre.js +0 -49
- package/distTs/src/command/start.js +0 -28
- package/distTs/src/command/tcp.js +0 -30
- package/distTs/src/command/tls.js +0 -30
- package/distTs/src/command/tunnel/config.js +0 -17
- package/distTs/src/command/tunnel/http.js +0 -31
- package/distTs/src/command/tunnel/start.js +0 -28
- package/distTs/src/command/tunnel/tcp.js +0 -30
- package/distTs/src/command/tunnel/tls.js +0 -30
- package/distTs/src/command/tunnel.js +0 -19
- package/distTs/src/command/ut/upload.js +0 -108
- package/distTs/src/command/ut.js +0 -12
- package/distTs/src/command/version.js +0 -13
- package/distTs/src/command/vt/close.js +0 -27
- package/distTs/src/command/vt/compare/validation.js +0 -173
- package/distTs/src/command/vt/compare.js +0 -97
- package/distTs/src/command/vt/exec.js +0 -81
- package/distTs/src/command/vt/installBrowser.js +0 -20
- package/distTs/src/command/vt/scrap.js +0 -193
- package/distTs/src/command/vt/storybook.js +0 -92
- package/distTs/src/command/vt.js +0 -22
- package/distTs/src/format.js +0 -174
- package/distTs/src/index.js +0 -34
- package/distTs/src/input.js +0 -270
- package/distTs/src/logger.js +0 -95
- package/distTs/src/output/interactive/tunnel.js +0 -860
- package/distTs/src/output/noninteractive/agent/tunnels.js +0 -43
- package/distTs/src/output/noninteractive/config/tunnel.js +0 -65
- package/distTs/src/output/noninteractive/config/tunnels.js +0 -18
- package/distTs/src/output/noninteractive/tunnel.js +0 -59
- package/distTs/src/output.js +0 -143
- package/distTs/src/server/cert.js +0 -52
- package/distTs/src/server/http1.js +0 -75
- package/distTs/src/server/http2.js +0 -78
- package/distTs/src/server/sftp.js +0 -497
- package/distTs/src/server/ssh.js +0 -446
- package/distTs/src/server/tls.js +0 -41
- package/distTs/src/ssh/client.js +0 -197
- package/distTs/src/texts.js +0 -421
- package/distTs/src/tunnel/agent.js +0 -103
- package/distTs/src/tunnel/api/agent.js +0 -100
- package/distTs/src/tunnel/api/buddy.js +0 -141
- package/distTs/src/tunnel/cfg.js +0 -243
- package/distTs/src/tunnel/compression.js +0 -44
- package/distTs/src/tunnel/dns.js +0 -53
- package/distTs/src/tunnel/html/503.html +0 -338
- package/distTs/src/tunnel/html.js +0 -33
- package/distTs/src/tunnel/http/log.js +0 -218
- package/distTs/src/tunnel/http/serve.js +0 -133
- package/distTs/src/tunnel/http/stream.js +0 -34
- package/distTs/src/tunnel/http.js +0 -508
- package/distTs/src/tunnel/identification.js +0 -103
- package/distTs/src/tunnel/latency.js +0 -83
- package/distTs/src/tunnel/output/interactive/tunnel.js +0 -867
- package/distTs/src/tunnel/output/noninteractive/agent/tunnels.js +0 -45
- package/distTs/src/tunnel/output/noninteractive/config/tunnel.js +0 -67
- package/distTs/src/tunnel/output/noninteractive/config/tunnels.js +0 -20
- package/distTs/src/tunnel/output/noninteractive/tunnel.js +0 -61
- package/distTs/src/tunnel/server/cert.js +0 -54
- package/distTs/src/tunnel/server/http1.js +0 -80
- package/distTs/src/tunnel/server/http2.js +0 -84
- package/distTs/src/tunnel/server/sftp.js +0 -514
- package/distTs/src/tunnel/server/ssh.js +0 -464
- package/distTs/src/tunnel/server/tls.js +0 -47
- package/distTs/src/tunnel/ssh/client.js +0 -211
- package/distTs/src/tunnel/tcp.js +0 -113
- package/distTs/src/tunnel/tunnel.js +0 -1010
- package/distTs/src/tunnel.js +0 -656
- package/distTs/src/types/ciInfo.js +0 -10
- package/distTs/src/types/options.js +0 -2
- package/distTs/src/types/plugin.js +0 -2
- package/distTs/src/types/queue.js +0 -2
- package/distTs/src/types/requests.js +0 -2
- package/distTs/src/types/resources.js +0 -2
- package/distTs/src/types/schemas.js +0 -54
- package/distTs/src/types/scrape.js +0 -2
- package/distTs/src/types/snapshots.js +0 -2
- package/distTs/src/types/storybook.js +0 -2
- package/distTs/src/types/tunnel.js +0 -141
- package/distTs/src/unitTest/ci.js +0 -108
- package/distTs/src/unitTest/requests.js +0 -72
- package/distTs/src/utils.js +0 -378
- package/distTs/src/visualTest/browser.js +0 -39
- package/distTs/src/visualTest/ci.js +0 -241
- package/distTs/src/visualTest/context.js +0 -52
- package/distTs/src/visualTest/exec.js +0 -51
- package/distTs/src/visualTest/linkUtils.js +0 -21
- package/distTs/src/visualTest/queue.js +0 -43
- package/distTs/src/visualTest/requests.js +0 -365
- package/distTs/src/visualTest/resources.js +0 -259
- package/distTs/src/visualTest/server.js +0 -109
- package/distTs/src/visualTest/snapshots.js +0 -129
- package/distTs/src/visualTest/utils/parseDom.js +0 -238
- package/distTs/src/visualTest/validation.js +0 -18
package/distTs/src/utils.js
DELETED
|
@@ -1,378 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.getBasicCommandTls = exports.getBasicCommandHttp = exports.getBasicCommandTcp = exports.createSshHostKey = exports.getRealTargetHost = exports.isWindows = exports.isLinux = exports.isOsx = exports.isDocker = exports.sleep = exports.getLatestVersion = exports.getVersionEnv = exports.getVersionWithoutEnv = exports.getVersion = exports.getHomeDirectory = exports.newCommand = exports.formatHelp = exports.getPlatform = exports.getHostname = exports.isStringRegExp = exports.getRootDir = exports.TARGET_ONLY_PORT_REGEX = exports.TARGET_HTTP_REGEX = exports.TARGET_TCP_TLS_REGEX = exports.ApiErrorTunnelsDisabled = exports.ApiErrorWorkspaceFlagged = exports.ApiErrorTunnelLimitReached = exports.ApiErrorAgentLimitReached = exports.ApiErrorDomainRestricted = exports.ApiErrorTargetInvalid = exports.ApiErrorWrongToken = exports.ApiErrorFailedToConnect = exports.ApiErrorAgentNotFound = exports.SUGGESTED_BROWSER_VERSION = exports.DEFAULT_TIMEOUT = exports.TUNNEL_HTTP_CB_MIN_REQUESTS = exports.TUNNEL_HTTP_CB_WINDOW = exports.TUNNEL_MAX_REQUEST_SIZE_TO_SYNC = exports.TUNNEL_HTTP_LOG_MAX_REQUESTS = exports.TUNNEL_HTTP_LOG_MAX_BODY = exports.TUNNEL_HTTP_RATE_WINDOW = exports.TUNNEL_HTTP_RATE_LIMIT = void 0;
|
|
30
|
-
exports.apiErrorCodeToClass = apiErrorCodeToClass;
|
|
31
|
-
exports.isFile = isFile;
|
|
32
|
-
const node_path_1 = __importStar(require("node:path"));
|
|
33
|
-
const node_fs_1 = require("node:fs");
|
|
34
|
-
const texts_1 = require("./texts");
|
|
35
|
-
const ssh2_1 = __importDefault(require("ssh2"));
|
|
36
|
-
const node_sea_1 = require("node:sea");
|
|
37
|
-
const commander_1 = require("commander");
|
|
38
|
-
const texts_2 = require("./texts");
|
|
39
|
-
const node_os_1 = __importStar(require("node:os"));
|
|
40
|
-
exports.TUNNEL_HTTP_RATE_LIMIT = 2000;
|
|
41
|
-
exports.TUNNEL_HTTP_RATE_WINDOW = 60000;
|
|
42
|
-
exports.TUNNEL_HTTP_LOG_MAX_BODY = 5242880; // 5MB
|
|
43
|
-
exports.TUNNEL_HTTP_LOG_MAX_REQUESTS = 20;
|
|
44
|
-
exports.TUNNEL_MAX_REQUEST_SIZE_TO_SYNC = 25600; // 25kB (1 request do frontu moze miec max 1MB, 20 requestow po req i res body)
|
|
45
|
-
exports.TUNNEL_HTTP_CB_WINDOW = 10000;
|
|
46
|
-
exports.TUNNEL_HTTP_CB_MIN_REQUESTS = 20;
|
|
47
|
-
exports.DEFAULT_TIMEOUT = 30;
|
|
48
|
-
exports.SUGGESTED_BROWSER_VERSION = '130.0.6723.69';
|
|
49
|
-
function apiErrorCodeToClass(code, host) {
|
|
50
|
-
if (code === 234031) {
|
|
51
|
-
return new ApiErrorTargetInvalid();
|
|
52
|
-
}
|
|
53
|
-
if (code === 234000) {
|
|
54
|
-
return new ApiErrorAgentNotFound();
|
|
55
|
-
}
|
|
56
|
-
if (code === 234020) {
|
|
57
|
-
return new ApiErrorWrongToken();
|
|
58
|
-
}
|
|
59
|
-
if (code === 234044) {
|
|
60
|
-
return new ApiErrorDomainRestricted();
|
|
61
|
-
}
|
|
62
|
-
if (code === 234500) {
|
|
63
|
-
return new ApiErrorTunnelsDisabled();
|
|
64
|
-
}
|
|
65
|
-
if (code === 234502) {
|
|
66
|
-
return new ApiErrorAgentLimitReached();
|
|
67
|
-
}
|
|
68
|
-
if (code === 234501) {
|
|
69
|
-
return new ApiErrorTunnelLimitReached();
|
|
70
|
-
}
|
|
71
|
-
if (code === 1150000) {
|
|
72
|
-
return new ApiErrorWorkspaceFlagged();
|
|
73
|
-
}
|
|
74
|
-
return new ApiErrorFailedToConnect(host);
|
|
75
|
-
}
|
|
76
|
-
class ApiErrorAgentNotFound extends Error {
|
|
77
|
-
constructor() {
|
|
78
|
-
super(texts_1.ERR_AGENT_REMOVED);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
exports.ApiErrorAgentNotFound = ApiErrorAgentNotFound;
|
|
82
|
-
class ApiErrorFailedToConnect extends Error {
|
|
83
|
-
constructor(host) {
|
|
84
|
-
super((0, texts_1.ERR_FAILED_TO_CONNECT)(host));
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
exports.ApiErrorFailedToConnect = ApiErrorFailedToConnect;
|
|
88
|
-
class ApiErrorWrongToken extends Error {
|
|
89
|
-
constructor() {
|
|
90
|
-
super(texts_1.ERR_WRONG_TOKEN);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
exports.ApiErrorWrongToken = ApiErrorWrongToken;
|
|
94
|
-
class ApiErrorTargetInvalid extends Error {
|
|
95
|
-
constructor() {
|
|
96
|
-
super(texts_1.ERR_TUNNEL_TARGET_INVALID);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
exports.ApiErrorTargetInvalid = ApiErrorTargetInvalid;
|
|
100
|
-
class ApiErrorDomainRestricted extends Error {
|
|
101
|
-
constructor() {
|
|
102
|
-
super(texts_1.ERR_DOMAIN_RESTRICTED);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
exports.ApiErrorDomainRestricted = ApiErrorDomainRestricted;
|
|
106
|
-
class ApiErrorAgentLimitReached extends Error {
|
|
107
|
-
constructor() {
|
|
108
|
-
super(texts_1.ERR_AGENT_LIMIT_REACHED);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
exports.ApiErrorAgentLimitReached = ApiErrorAgentLimitReached;
|
|
112
|
-
class ApiErrorTunnelLimitReached extends Error {
|
|
113
|
-
constructor() {
|
|
114
|
-
super(texts_1.ERR_TUNNEL_LIMIT_REACHED);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.ApiErrorTunnelLimitReached = ApiErrorTunnelLimitReached;
|
|
118
|
-
class ApiErrorWorkspaceFlagged extends Error {
|
|
119
|
-
constructor() {
|
|
120
|
-
super(texts_1.ERR_WORKSPACE_FLAGGED);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
exports.ApiErrorWorkspaceFlagged = ApiErrorWorkspaceFlagged;
|
|
124
|
-
class ApiErrorTunnelsDisabled extends Error {
|
|
125
|
-
constructor() {
|
|
126
|
-
super(texts_1.ERR_TUNNELS_DISABLED);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
exports.ApiErrorTunnelsDisabled = ApiErrorTunnelsDisabled;
|
|
130
|
-
exports.TARGET_TCP_TLS_REGEX = /^(([^:/]+):)?(\d+)$/i;
|
|
131
|
-
exports.TARGET_HTTP_REGEX = /^((https?):\/\/)?([^:/]+:[^@:/]+@)?([^:/]+)(:(\d+))?(\/)?$/i;
|
|
132
|
-
exports.TARGET_ONLY_PORT_REGEX = /^\d+$/i;
|
|
133
|
-
let cachedVersion;
|
|
134
|
-
let cachedRoot;
|
|
135
|
-
const getRootDir = () => {
|
|
136
|
-
if (!cachedRoot) {
|
|
137
|
-
cachedRoot = node_path_1.default.resolve(__dirname, '..');
|
|
138
|
-
}
|
|
139
|
-
return cachedRoot;
|
|
140
|
-
};
|
|
141
|
-
exports.getRootDir = getRootDir;
|
|
142
|
-
const isStringRegExp = (str) => /^\/.*\/$/.test(str);
|
|
143
|
-
exports.isStringRegExp = isStringRegExp;
|
|
144
|
-
const getHostname = () => {
|
|
145
|
-
return node_os_1.default.hostname();
|
|
146
|
-
};
|
|
147
|
-
exports.getHostname = getHostname;
|
|
148
|
-
const getPlatform = () => {
|
|
149
|
-
return node_os_1.default.platform();
|
|
150
|
-
};
|
|
151
|
-
exports.getPlatform = getPlatform;
|
|
152
|
-
const formatHelp = (cmd, helper) => {
|
|
153
|
-
const termWidth = helper.padWidth(cmd, helper);
|
|
154
|
-
const helpWidth = helper.helpWidth || 80;
|
|
155
|
-
const itemIndentWidth = 2;
|
|
156
|
-
const itemSeparatorWidth = 2; // between term and description
|
|
157
|
-
function formatItem(term, description) {
|
|
158
|
-
if (description) {
|
|
159
|
-
const fullText = `${term.padEnd(termWidth + itemSeparatorWidth)}${description}`;
|
|
160
|
-
return helper.wrap(fullText, helpWidth - itemIndentWidth, termWidth + itemSeparatorWidth);
|
|
161
|
-
}
|
|
162
|
-
return term;
|
|
163
|
-
}
|
|
164
|
-
function formatList(textArray) {
|
|
165
|
-
return textArray.join('\n').replace(/^/gm, ' '.repeat(itemIndentWidth));
|
|
166
|
-
}
|
|
167
|
-
// Usage
|
|
168
|
-
let output = ['USAGE:', ` ${helper.commandUsage(cmd)}`, ''];
|
|
169
|
-
// Description
|
|
170
|
-
const commandDescription = helper.commandDescription(cmd);
|
|
171
|
-
if (commandDescription.length > 0) {
|
|
172
|
-
output = output.concat([
|
|
173
|
-
'DESCRIPTION:',
|
|
174
|
-
` ${helper.wrap(commandDescription, helpWidth, itemIndentWidth)}`,
|
|
175
|
-
'',
|
|
176
|
-
]);
|
|
177
|
-
}
|
|
178
|
-
// Arguments
|
|
179
|
-
const argumentList = helper
|
|
180
|
-
.visibleArguments(cmd)
|
|
181
|
-
.map((argument) => {
|
|
182
|
-
return formatItem(helper.argumentTerm(argument), helper.argumentDescription(argument));
|
|
183
|
-
});
|
|
184
|
-
if (argumentList.length > 0) {
|
|
185
|
-
output = output.concat(['ARGUMENTS:', formatList(argumentList), '']);
|
|
186
|
-
}
|
|
187
|
-
// Options
|
|
188
|
-
const optionList = helper.visibleOptions(cmd).map((option) => {
|
|
189
|
-
return formatItem(helper.optionTerm(option), helper.optionDescription(option));
|
|
190
|
-
});
|
|
191
|
-
if (optionList.length > 0) {
|
|
192
|
-
output = output.concat(['OPTIONS:', formatList(optionList), '']);
|
|
193
|
-
}
|
|
194
|
-
// Commands
|
|
195
|
-
const commandList = helper.visibleCommands(cmd).map((cmd) => {
|
|
196
|
-
return formatItem(helper.subcommandTerm(cmd), helper.subcommandDescription(cmd));
|
|
197
|
-
});
|
|
198
|
-
if (commandList.length > 0) {
|
|
199
|
-
output = output.concat(['COMMANDS:', formatList(commandList), '']);
|
|
200
|
-
}
|
|
201
|
-
return output.join('\n');
|
|
202
|
-
};
|
|
203
|
-
exports.formatHelp = formatHelp;
|
|
204
|
-
const newCommand = (name, desc) => {
|
|
205
|
-
const cmd = new commander_1.Command(name);
|
|
206
|
-
if (desc)
|
|
207
|
-
cmd.description(desc);
|
|
208
|
-
cmd.configureHelp({
|
|
209
|
-
formatHelp: exports.formatHelp,
|
|
210
|
-
});
|
|
211
|
-
return cmd;
|
|
212
|
-
};
|
|
213
|
-
exports.newCommand = newCommand;
|
|
214
|
-
const getHomeDirectory = () => {
|
|
215
|
-
if ((0, exports.isDocker)())
|
|
216
|
-
return '/buddy';
|
|
217
|
-
const r = (0, node_os_1.homedir)();
|
|
218
|
-
const p = node_path_1.default.join(r, '.bdy');
|
|
219
|
-
if (!(0, node_fs_1.existsSync)(p)) {
|
|
220
|
-
(0, node_fs_1.mkdirSync)(p, { recursive: true });
|
|
221
|
-
try {
|
|
222
|
-
(0, node_fs_1.chmodSync)(p, 0o777);
|
|
223
|
-
}
|
|
224
|
-
catch {
|
|
225
|
-
// do nothing
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
return p;
|
|
229
|
-
};
|
|
230
|
-
exports.getHomeDirectory = getHomeDirectory;
|
|
231
|
-
const getVersion = () => {
|
|
232
|
-
if (!cachedVersion) {
|
|
233
|
-
let packageJson;
|
|
234
|
-
if ((0, node_sea_1.isSea)()) {
|
|
235
|
-
packageJson = JSON.parse((0, node_sea_1.getAsset)('package.json', 'utf8'));
|
|
236
|
-
}
|
|
237
|
-
else {
|
|
238
|
-
const root = (0, exports.getRootDir)();
|
|
239
|
-
packageJson = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.resolve)(root, 'package.json'), 'utf8'));
|
|
240
|
-
}
|
|
241
|
-
cachedVersion = packageJson.version;
|
|
242
|
-
}
|
|
243
|
-
return cachedVersion;
|
|
244
|
-
};
|
|
245
|
-
exports.getVersion = getVersion;
|
|
246
|
-
const getVersionWithoutEnv = () => {
|
|
247
|
-
const v = (0, exports.getVersion)();
|
|
248
|
-
const m = v.match(/^\d+\.\d+\.\d+/);
|
|
249
|
-
if (m)
|
|
250
|
-
return m[0];
|
|
251
|
-
return '0.0.0';
|
|
252
|
-
};
|
|
253
|
-
exports.getVersionWithoutEnv = getVersionWithoutEnv;
|
|
254
|
-
const getVersionEnv = () => {
|
|
255
|
-
const v = (0, exports.getVersion)();
|
|
256
|
-
if (/dev/.test(v))
|
|
257
|
-
return 'dev';
|
|
258
|
-
if (/beta/.test(v))
|
|
259
|
-
return 'beta';
|
|
260
|
-
if (/stage/.test(v))
|
|
261
|
-
return 'stage';
|
|
262
|
-
if (/master/.test(v))
|
|
263
|
-
return 'master';
|
|
264
|
-
return 'prod';
|
|
265
|
-
};
|
|
266
|
-
exports.getVersionEnv = getVersionEnv;
|
|
267
|
-
const getLatestVersion = async () => {
|
|
268
|
-
try {
|
|
269
|
-
const env = (0, exports.getVersionEnv)();
|
|
270
|
-
const c = new AbortController();
|
|
271
|
-
setTimeout(() => {
|
|
272
|
-
c.abort();
|
|
273
|
-
}, 10000);
|
|
274
|
-
const response = await fetch(`https://es.buddy.works/bdy/${env}/latest`, {
|
|
275
|
-
method: 'GET',
|
|
276
|
-
signal: c.signal,
|
|
277
|
-
});
|
|
278
|
-
if (response.status === 200) {
|
|
279
|
-
const data = await response.text();
|
|
280
|
-
const v = data.trim();
|
|
281
|
-
if (env === 'prod')
|
|
282
|
-
return v;
|
|
283
|
-
return `${v}-${env}`;
|
|
284
|
-
}
|
|
285
|
-
else {
|
|
286
|
-
return '0.0.0';
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
catch {
|
|
290
|
-
throw new Error(texts_2.ERR_FETCH_VERSION);
|
|
291
|
-
}
|
|
292
|
-
};
|
|
293
|
-
exports.getLatestVersion = getLatestVersion;
|
|
294
|
-
const sleep = (ms) => {
|
|
295
|
-
return new Promise((resolve) => {
|
|
296
|
-
setTimeout(resolve, ms);
|
|
297
|
-
});
|
|
298
|
-
};
|
|
299
|
-
exports.sleep = sleep;
|
|
300
|
-
const isDocker = () => {
|
|
301
|
-
return process.env['IS_IN_DOCKER'] === '1';
|
|
302
|
-
};
|
|
303
|
-
exports.isDocker = isDocker;
|
|
304
|
-
const isOsx = () => {
|
|
305
|
-
return node_os_1.default.platform() === 'darwin';
|
|
306
|
-
};
|
|
307
|
-
exports.isOsx = isOsx;
|
|
308
|
-
const isLinux = () => {
|
|
309
|
-
return node_os_1.default.platform() === 'linux';
|
|
310
|
-
};
|
|
311
|
-
exports.isLinux = isLinux;
|
|
312
|
-
const isWindows = () => {
|
|
313
|
-
return node_os_1.default.platform() === 'win32';
|
|
314
|
-
};
|
|
315
|
-
exports.isWindows = isWindows;
|
|
316
|
-
const getRealTargetHost = (target) => {
|
|
317
|
-
return target || '';
|
|
318
|
-
};
|
|
319
|
-
exports.getRealTargetHost = getRealTargetHost;
|
|
320
|
-
const createSshHostKey = () => {
|
|
321
|
-
const keys = ssh2_1.default.utils.generateKeyPairSync('ed25519', {});
|
|
322
|
-
return keys.private;
|
|
323
|
-
};
|
|
324
|
-
exports.createSshHostKey = createSshHostKey;
|
|
325
|
-
const getBasicCommandTcp = () => {
|
|
326
|
-
const commandTcp = (0, exports.newCommand)('tcp');
|
|
327
|
-
commandTcp.alias('TCP');
|
|
328
|
-
commandTcp.option('-r, --region <region>', texts_1.OPTION_REGION);
|
|
329
|
-
commandTcp.option('-w, --whitelist <cidrs...>', texts_1.OPTION_WHITELIST);
|
|
330
|
-
commandTcp.option('-n, --name <name>', texts_1.OPTION_NAME);
|
|
331
|
-
commandTcp.option('-t, --timeout <seconds>', texts_1.OPTION_TIMEOUT);
|
|
332
|
-
return commandTcp;
|
|
333
|
-
};
|
|
334
|
-
exports.getBasicCommandTcp = getBasicCommandTcp;
|
|
335
|
-
const getBasicCommandHttp = () => {
|
|
336
|
-
const commandHttp = (0, exports.newCommand)('http');
|
|
337
|
-
commandHttp.alias('HTTP');
|
|
338
|
-
commandHttp.option('-r, --region <region>', texts_1.OPTION_REGION);
|
|
339
|
-
commandHttp.option('-w, --whitelist <cidrs...>', texts_1.OPTION_WHITELIST);
|
|
340
|
-
commandHttp.option('-n, --name <name>', texts_1.OPTION_NAME);
|
|
341
|
-
commandHttp.option('-t, --timeout <seconds>', texts_1.OPTION_TIMEOUT);
|
|
342
|
-
commandHttp.option('-h, --host <host>', texts_1.OPTION_HTTP_HOST);
|
|
343
|
-
commandHttp.option('--header <headers...>', texts_1.OPTION_HEADER);
|
|
344
|
-
commandHttp.option('--response-header <headers...>', texts_1.OPTION_RESPONSE_HEADER);
|
|
345
|
-
commandHttp.option('--useragent <useragent...>', texts_1.OPTION_HEADER_USER_AGENT);
|
|
346
|
-
commandHttp.option('-a, --auth <user:pass>', texts_1.OPTION_HTTP_AUTH);
|
|
347
|
-
commandHttp.option('-b, --buddy', texts_1.OPTION_HTTP_AUTH_BUDDY);
|
|
348
|
-
commandHttp.option('-l, --log', texts_1.OPTION_HTTP_LOG);
|
|
349
|
-
commandHttp.option('-v, --verify', texts_1.OPTION_HTTP_VERIFY);
|
|
350
|
-
commandHttp.option('-2, --http2', texts_1.OPTION_HTTP_2);
|
|
351
|
-
commandHttp.option('-c, --compression', texts_1.OPTION_HTTP_COMPRESSION);
|
|
352
|
-
commandHttp.option('--ca <ca>', texts_1.OPTION_TLS_CA);
|
|
353
|
-
commandHttp.option('--circuit-breaker <threshold>', texts_1.OPTION_HTTP_CIRCUIT_BREAKER);
|
|
354
|
-
return commandHttp;
|
|
355
|
-
};
|
|
356
|
-
exports.getBasicCommandHttp = getBasicCommandHttp;
|
|
357
|
-
const getBasicCommandTls = () => {
|
|
358
|
-
const commandTls = (0, exports.newCommand)('tls');
|
|
359
|
-
commandTls.alias('TLS');
|
|
360
|
-
commandTls.option('-r, --region <region>', texts_1.OPTION_REGION);
|
|
361
|
-
commandTls.option('-w, --whitelist <cidrs...>', texts_1.OPTION_WHITELIST);
|
|
362
|
-
commandTls.option('-n, --name <name>', texts_1.OPTION_NAME);
|
|
363
|
-
commandTls.option('-t, --timeout <seconds>', texts_1.OPTION_TIMEOUT);
|
|
364
|
-
commandTls.option('-k, --key <key>', texts_1.OPTION_TLS_KEY);
|
|
365
|
-
commandTls.option('-c, --cert <cert>', texts_1.OPTION_TLS_CERT);
|
|
366
|
-
commandTls.option('--ca <ca>', texts_1.OPTION_TLS_CA);
|
|
367
|
-
commandTls.option('-i, --terminate <at>', texts_1.OPTION_TLS_TERMINATE);
|
|
368
|
-
return commandTls;
|
|
369
|
-
};
|
|
370
|
-
exports.getBasicCommandTls = getBasicCommandTls;
|
|
371
|
-
function isFile(path) {
|
|
372
|
-
try {
|
|
373
|
-
return (0, node_fs_1.statSync)(path).isFile();
|
|
374
|
-
}
|
|
375
|
-
catch {
|
|
376
|
-
return false;
|
|
377
|
-
}
|
|
378
|
-
}
|
|
@@ -1,39 +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.installBrowser = installBrowser;
|
|
7
|
-
exports.getBrowserPath = getBrowserPath;
|
|
8
|
-
const browsers_1 = require("@puppeteer/browsers");
|
|
9
|
-
const node_path_1 = require("node:path");
|
|
10
|
-
const node_os_1 = require("node:os");
|
|
11
|
-
const texts_1 = require("../texts");
|
|
12
|
-
const output_1 = __importDefault(require("../output"));
|
|
13
|
-
const utils_1 = require("../utils");
|
|
14
|
-
const customBrowserPath = process.env.SNAPSHOTS_BROWSER_PATH;
|
|
15
|
-
const cacheDir = (0, node_path_1.join)((0, node_os_1.homedir)(), '.cache', 'puppeteer');
|
|
16
|
-
const installOptions = {
|
|
17
|
-
cacheDir,
|
|
18
|
-
browser: browsers_1.Browser.CHROMEHEADLESSSHELL,
|
|
19
|
-
buildId: utils_1.SUGGESTED_BROWSER_VERSION,
|
|
20
|
-
};
|
|
21
|
-
async function installBrowser() {
|
|
22
|
-
await (0, browsers_1.canDownload)(installOptions);
|
|
23
|
-
const installedBrowser = await (0, browsers_1.install)(installOptions);
|
|
24
|
-
const executablePath = installedBrowser.executablePath;
|
|
25
|
-
output_1.default.normal((0, texts_1.LOG_INSTALLED_BROWSER)(executablePath));
|
|
26
|
-
return executablePath;
|
|
27
|
-
}
|
|
28
|
-
async function getBrowserPath() {
|
|
29
|
-
if (customBrowserPath) {
|
|
30
|
-
return customBrowserPath;
|
|
31
|
-
}
|
|
32
|
-
const installedBrowsers = await (0, browsers_1.getInstalledBrowsers)({ cacheDir });
|
|
33
|
-
const browserFromCache = installedBrowsers.find((browser) => browser.browser === installOptions.browser &&
|
|
34
|
-
browser.buildId === installOptions.buildId);
|
|
35
|
-
if (browserFromCache) {
|
|
36
|
-
return browserFromCache.executablePath;
|
|
37
|
-
}
|
|
38
|
-
return installBrowser();
|
|
39
|
-
}
|
|
@@ -1,241 +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.getBranchName = getBranchName;
|
|
7
|
-
exports.getCommitHash = getCommitHash;
|
|
8
|
-
exports.getCiAndGitInfo = getCiAndGitInfo;
|
|
9
|
-
exports.logCiInfo = logCiInfo;
|
|
10
|
-
const promises_1 = __importDefault(require("node:fs/promises"));
|
|
11
|
-
const exec_1 = require("./exec");
|
|
12
|
-
const ciInfo_1 = require("../types/ciInfo");
|
|
13
|
-
const output_1 = __importDefault(require("../output"));
|
|
14
|
-
const texts_1 = require("../texts");
|
|
15
|
-
async function getGithubPullRequestCommit() {
|
|
16
|
-
const payloadPath = process.env.GITHUB_EVENT_PATH;
|
|
17
|
-
if (!payloadPath) {
|
|
18
|
-
output_1.default.warning(texts_1.ERR_GITHUB_EVENT_PATH_NOT_FOUND);
|
|
19
|
-
return process.env.GITHUB_SHA;
|
|
20
|
-
}
|
|
21
|
-
try {
|
|
22
|
-
await promises_1.default.access(payloadPath);
|
|
23
|
-
}
|
|
24
|
-
catch (error) {
|
|
25
|
-
output_1.default.warning((0, texts_1.ERR_MISSING_FILE_WITH_HEAD_COMMIT)(payloadPath, JSON.stringify(error)));
|
|
26
|
-
return process.env.GITHUB_SHA;
|
|
27
|
-
}
|
|
28
|
-
let payload;
|
|
29
|
-
try {
|
|
30
|
-
const payloadFile = await promises_1.default.readFile(payloadPath);
|
|
31
|
-
payload = JSON.parse(payloadFile.toString());
|
|
32
|
-
}
|
|
33
|
-
catch (error) {
|
|
34
|
-
output_1.default.warning((0, texts_1.ERR_READING_FILE_WITH_HEAD_COMMIT)(payloadPath, JSON.stringify(error)));
|
|
35
|
-
return process.env.GITHUB_SHA;
|
|
36
|
-
}
|
|
37
|
-
if (!payload?.pull_request) {
|
|
38
|
-
output_1.default.warning(texts_1.ERR_MISSING_HEAD_COMMIT_IN_FILE);
|
|
39
|
-
return process.env.GITHUB_SHA;
|
|
40
|
-
}
|
|
41
|
-
return payload.pull_request.head.sha;
|
|
42
|
-
}
|
|
43
|
-
async function getBranchName(optional) {
|
|
44
|
-
let branch = '';
|
|
45
|
-
try {
|
|
46
|
-
branch = await (0, exec_1.gitExec)(['rev-parse', '--abbrev-ref', 'HEAD']);
|
|
47
|
-
}
|
|
48
|
-
catch (error) {
|
|
49
|
-
if (!optional) {
|
|
50
|
-
output_1.default.warning((0, texts_1.ERR_GETTING_BRANCH_NAME)(JSON.stringify(error)));
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
branch = branch.trim();
|
|
54
|
-
if (!branch) {
|
|
55
|
-
if (!optional) {
|
|
56
|
-
output_1.default.warning(texts_1.ERR_INVALID_BRANCH_NAME);
|
|
57
|
-
}
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
return branch?.trim();
|
|
61
|
-
}
|
|
62
|
-
async function getCommitHash(optional) {
|
|
63
|
-
let commit = '';
|
|
64
|
-
try {
|
|
65
|
-
commit = await (0, exec_1.gitExec)(['rev-parse', '--verify', 'HEAD']);
|
|
66
|
-
}
|
|
67
|
-
catch (error) {
|
|
68
|
-
if (!optional) {
|
|
69
|
-
output_1.default.warning((0, texts_1.ERR_GETTING_COMMIT_HASH)(JSON.stringify(error)));
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
commit = commit.trim();
|
|
73
|
-
if (!commit || commit.length !== 40) {
|
|
74
|
-
if (!optional) {
|
|
75
|
-
output_1.default.warning((0, texts_1.ERR_INVALID_COMMIT_HASH)(commit));
|
|
76
|
-
}
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
return commit;
|
|
80
|
-
}
|
|
81
|
-
async function getBaseCommit(baseBranch, headBranch, requiredOriginPrefix) {
|
|
82
|
-
if (!baseBranch) {
|
|
83
|
-
output_1.default.warning(texts_1.ERR_BASE_BRANCH_NOT_DEFINED);
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
if (!headBranch) {
|
|
87
|
-
output_1.default.warning(texts_1.ERR_HEAD_BRANCH_NOT_DEFINED);
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
let commit = '';
|
|
91
|
-
try {
|
|
92
|
-
const preparedBranch = requiredOriginPrefix && !headBranch.includes('origin/')
|
|
93
|
-
? `origin/${headBranch}`
|
|
94
|
-
: headBranch;
|
|
95
|
-
const preparedBaseBranch = requiredOriginPrefix && !baseBranch.includes('origin/')
|
|
96
|
-
? `origin/${baseBranch}`
|
|
97
|
-
: baseBranch;
|
|
98
|
-
commit = await (0, exec_1.gitExec)(['merge-base', preparedBranch, preparedBaseBranch]);
|
|
99
|
-
}
|
|
100
|
-
catch (error) {
|
|
101
|
-
output_1.default.warning((0, texts_1.ERR_GETTING_BASE_COMMIT)(baseBranch, headBranch, JSON.stringify(error)));
|
|
102
|
-
}
|
|
103
|
-
commit = commit.trim();
|
|
104
|
-
if (!commit || commit.length !== 40) {
|
|
105
|
-
output_1.default.warning((0, texts_1.ERR_INVALID_COMMIT_HASH)(commit));
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
return commit;
|
|
109
|
-
}
|
|
110
|
-
async function getCommitDetails(commitHash) {
|
|
111
|
-
if (commitHash) {
|
|
112
|
-
try {
|
|
113
|
-
const commitDetails = await (0, exec_1.gitExec)([
|
|
114
|
-
'show',
|
|
115
|
-
'--no-patch',
|
|
116
|
-
'--pretty=%an%n%ae%n%ct%n%B',
|
|
117
|
-
commitHash,
|
|
118
|
-
]);
|
|
119
|
-
const [authorName, authorEmail, authorDate, message] = commitDetails.split('\n');
|
|
120
|
-
const authorDateNumber = Number(authorDate);
|
|
121
|
-
return {
|
|
122
|
-
authorName,
|
|
123
|
-
authorEmail,
|
|
124
|
-
authorDate: Number.isNaN(authorDateNumber)
|
|
125
|
-
? undefined
|
|
126
|
-
: authorDateNumber,
|
|
127
|
-
message,
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
catch (error) {
|
|
131
|
-
output_1.default.warning((0, texts_1.ERR_GETTING_COMMIT_DETAILS)(JSON.stringify(error)));
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
async function getCiAndGitInfo({ baseBranch, skipBaseCommitDiscovery, }) {
|
|
136
|
-
const isBuddy = process.env.BUDDY === 'true';
|
|
137
|
-
const isGithubAction = process.env.GITHUB_ACTIONS === 'true';
|
|
138
|
-
const isCircleCI = process.env.CIRCLECI === 'true';
|
|
139
|
-
const forceTag = process.env.SNAPSHOTS_TAG;
|
|
140
|
-
const forceBranch = process.env.SNAPSHOTS_BRANCH;
|
|
141
|
-
const forceCommit = process.env.SNAPSHOTS_COMMIT;
|
|
142
|
-
const forceBaseCommit = process.env.SNAPSHOTS_BASE_COMMIT;
|
|
143
|
-
const withoutBaseCommit = baseBranch === undefined || skipBaseCommitDiscovery;
|
|
144
|
-
if (isBuddy) {
|
|
145
|
-
const pullRequestNumber = Number(process.env.BUDDY_RUN_PR_NO);
|
|
146
|
-
const isPR = !!pullRequestNumber;
|
|
147
|
-
const branch = forceBranch ||
|
|
148
|
-
(isPR
|
|
149
|
-
? process.env.BUDDY_RUN_PR_HEAD_BRANCH
|
|
150
|
-
: process.env.BUDDY_EXECUTION_BRANCH);
|
|
151
|
-
const tag = forceTag || process.env.BUDDY_EXECUTION_TAG;
|
|
152
|
-
const commit = forceCommit || process.env.BUDDY_EXECUTION_REVISION;
|
|
153
|
-
const baseCommit = withoutBaseCommit
|
|
154
|
-
? undefined
|
|
155
|
-
: forceBaseCommit ||
|
|
156
|
-
(isPR ? await getBaseCommit(baseBranch, branch, true) : undefined);
|
|
157
|
-
const invokerId = Number(process.env.BUDDY_INVOKER_ID);
|
|
158
|
-
const pipelineId = Number(process.env.BUDDY_PIPELINE_ID);
|
|
159
|
-
const actionId = Number(process.env.BUDDY_ACTION_ID);
|
|
160
|
-
const executionId = process.env.BUDDY_RUN_HASH;
|
|
161
|
-
return {
|
|
162
|
-
ci: ciInfo_1.CI.BUDDY,
|
|
163
|
-
branch,
|
|
164
|
-
tag,
|
|
165
|
-
pullRequestNumber: isPR ? pullRequestNumber : undefined,
|
|
166
|
-
commit,
|
|
167
|
-
baseCommit,
|
|
168
|
-
pipelineName: process.env.BUDDY_PIPELINE_NAME,
|
|
169
|
-
pipelineId: Number.isNaN(pipelineId) ? undefined : pipelineId,
|
|
170
|
-
actionId: Number.isNaN(actionId) ? undefined : actionId,
|
|
171
|
-
executionId,
|
|
172
|
-
invokerId: Number.isNaN(invokerId) ? undefined : invokerId,
|
|
173
|
-
commitDetails: await getCommitDetails(commit),
|
|
174
|
-
};
|
|
175
|
-
}
|
|
176
|
-
if (isGithubAction) {
|
|
177
|
-
const isPR = process.env.GITHUB_EVENT_NAME === 'pull_request';
|
|
178
|
-
const isTag = process.env.GITHUB_REF_TYPE === 'tag';
|
|
179
|
-
const pullRequestNumber = isPR && process.env.GITHUB_REF
|
|
180
|
-
? Number(process.env.GITHUB_REF.split('/')[2])
|
|
181
|
-
: undefined;
|
|
182
|
-
const branch = forceBranch ||
|
|
183
|
-
(isPR ? process.env.GITHUB_HEAD_REF : process.env.GITHUB_REF_NAME);
|
|
184
|
-
const tag = forceTag || (isTag ? process.env.GITHUB_REF_NAME : undefined);
|
|
185
|
-
const commit = forceCommit ||
|
|
186
|
-
(isPR ? await getGithubPullRequestCommit() : process.env.GITHUB_SHA);
|
|
187
|
-
const baseCommit = withoutBaseCommit
|
|
188
|
-
? undefined
|
|
189
|
-
: forceBaseCommit ||
|
|
190
|
-
(isPR ? await getBaseCommit(baseBranch, branch, true) : undefined);
|
|
191
|
-
return {
|
|
192
|
-
ci: ciInfo_1.CI.GITHUB_ACTION,
|
|
193
|
-
branch,
|
|
194
|
-
tag,
|
|
195
|
-
pullRequestNumber,
|
|
196
|
-
commit,
|
|
197
|
-
baseCommit,
|
|
198
|
-
commitDetails: await getCommitDetails(commit),
|
|
199
|
-
executionUrl: `${process.env.GITHUB_SERVER_URL}/${process.env.GITHUB_REPOSITORY}/actions/runs/${process.env.GITHUB_RUN_ID}`,
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
if (isCircleCI) {
|
|
203
|
-
const isPR = process.env.CIRCLE_PULL_REQUEST;
|
|
204
|
-
const pullRequestNumber = isPR
|
|
205
|
-
? Number(process.env.CIRCLE_PR_NUMBER)
|
|
206
|
-
: undefined;
|
|
207
|
-
const branch = forceBranch || process.env.CIRCLE_BRANCH;
|
|
208
|
-
const tag = forceTag || process.env.CIRCLE_TAG;
|
|
209
|
-
const commit = forceCommit || process.env.CIRCLE_SHA1;
|
|
210
|
-
const baseCommit = withoutBaseCommit
|
|
211
|
-
? undefined
|
|
212
|
-
: forceBaseCommit ||
|
|
213
|
-
(isPR ? await getBaseCommit(baseBranch, branch) : undefined);
|
|
214
|
-
return {
|
|
215
|
-
ci: ciInfo_1.CI.CIRCLE_CI,
|
|
216
|
-
branch,
|
|
217
|
-
tag,
|
|
218
|
-
pullRequestNumber,
|
|
219
|
-
commit,
|
|
220
|
-
baseCommit,
|
|
221
|
-
commitDetails: await getCommitDetails(commit),
|
|
222
|
-
executionUrl: `${process.env.CIRCLE_BUILD_URL}`,
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
|
-
const branch = forceBranch || (await getBranchName(withoutBaseCommit));
|
|
226
|
-
const commit = forceCommit || (await getCommitHash(withoutBaseCommit));
|
|
227
|
-
return {
|
|
228
|
-
ci: ciInfo_1.CI.NONE,
|
|
229
|
-
branch,
|
|
230
|
-
commit,
|
|
231
|
-
baseCommit: withoutBaseCommit
|
|
232
|
-
? undefined
|
|
233
|
-
: branch && branch !== baseBranch
|
|
234
|
-
? forceBaseCommit || (await getBaseCommit(baseBranch, branch))
|
|
235
|
-
: undefined,
|
|
236
|
-
commitDetails: await getCommitDetails(commit),
|
|
237
|
-
};
|
|
238
|
-
}
|
|
239
|
-
function logCiInfo(ciInfo) {
|
|
240
|
-
output_1.default.normal((0, texts_1.TXT_CI_INFO)(ciInfo));
|
|
241
|
-
}
|