@p0security/cli 0.19.4 → 0.19.5

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.
@@ -76,16 +76,18 @@ const buildArgv = () => __awaiter(void 0, void 0, void 0, function* () {
76
76
  // Skip the version check for these non-interactive commands
77
77
  const skipVersionCheckFor = ["ssh-proxy", "ssh-resolve"];
78
78
  function conditionalCheckVersion(argv) {
79
- const invokedCommand = argv._[0];
80
- if (typeof invokedCommand !== "string") {
81
- return;
82
- }
83
- if (skipVersionCheckFor.includes(invokedCommand)) {
84
- return;
85
- }
86
- else {
87
- return (0, version_1.checkVersion)(argv);
88
- }
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ const invokedCommand = argv._[0];
81
+ if (typeof invokedCommand !== "string") {
82
+ return;
83
+ }
84
+ if (skipVersionCheckFor.includes(invokedCommand)) {
85
+ return;
86
+ }
87
+ else {
88
+ return yield (0, version_1.checkVersion)(argv);
89
+ }
90
+ });
89
91
  }
90
92
  const getCli = () => __awaiter(void 0, void 0, void 0, function* () {
91
93
  return commands
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,8CAAmD;AACnD,4CAAkD;AAClD,oDAAsD;AACtD,wCAA2C;AAC3C,mCAAuC;AACvC,+BAAmC;AACnC,mCAAuC;AACvC,6CAAiD;AACjD,mCAAuC;AACvC,qCAAyC;AACzC,6BAAiC;AACjC,uCAA2C;AAC3C,+BAAmC;AACnC,+BAAmC;AACnC,2CAA8C;AAC9C,+CAAkD;AAClD,2CAAiC;AACjC,kDAA0B;AAC1B,2CAAwC;AAExC,MAAM,QAAQ,GAAG;IACf,gBAAU;IACV,oBAAY;IACZ,oBAAY;IACZ,sBAAa;IACb,cAAS;IACT,wBAAc;IACd,oBAAY;IACZ,gBAAU;IACV,2BAAe;IACf,+BAAiB;IACjB,gBAAU;IACV,8BAAiB;CAClB,CAAC;AAEF,MAAM,SAAS,GAAG,GAAS,EAAE;IAC3B,MAAM,EAAE,OAAO,EAAE,GAAG,uBAAa,CAAC;IAClC,MAAM,IAAI,GAAG,IAAA,eAAK,EAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3D,6FAA6F;IAC7F,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAoC,EAAE,EAAE;QACvD,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAA,uBAAc,GAAE,CAAC,CAAC,CAAC;SAC3D;aAAM;YACL,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACtB,IAAA,cAAM,EAAC,KAAK,IAAA,uBAAc,GAAE,EAAE,CAAC,CAAC;SACjC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC,CAAA,CAAC;AAEF,4DAA4D;AAC5D,MAAM,mBAAmB,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AAEzD,SAAS,uBAAuB,CAAC,IAA8B;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QACtC,OAAO;KACR;IAED,IAAI,mBAAmB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;QAChD,OAAO;KACR;SAAM;QACL,OAAO,IAAA,sBAAY,EAAC,IAAI,CAAC,CAAC;KAC3B;AACH,CAAC;AAEM,MAAM,MAAM,GAAG,GAAS,EAAE;IAC/B,OAAA,QAAQ;SACL,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,SAAS,EAAE,CAAC;SACzC,UAAU,CAAC,uBAAuB,CAAC;SACnC,MAAM,EAAE;SACR,aAAa,CAAC,CAAC,CAAC;SAChB,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC9B,IAAI,KAAK,EAAE;YACT,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;SACf;aAAM;YACL,IAAA,cAAM,EAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACrB,IAAA,cAAM,EAAC,KAAK,OAAO,EAAE,CAAC,CAAC;YACvB,IAAA,cAAM,EAAC,KAAK,IAAA,uBAAc,GAAE,EAAE,CAAC,CAAC;SACjC;QACD,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,CAAC,CAAC,CAAA;EAAA,CAAC;AAfM,QAAA,MAAM,UAeZ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,8CAAmD;AACnD,4CAAkD;AAClD,oDAAsD;AACtD,wCAA2C;AAC3C,mCAAuC;AACvC,+BAAmC;AACnC,mCAAuC;AACvC,6CAAiD;AACjD,mCAAuC;AACvC,qCAAyC;AACzC,6BAAiC;AACjC,uCAA2C;AAC3C,+BAAmC;AACnC,+BAAmC;AACnC,2CAA8C;AAC9C,+CAAkD;AAClD,2CAAiC;AACjC,kDAA0B;AAC1B,2CAAwC;AAExC,MAAM,QAAQ,GAAG;IACf,gBAAU;IACV,oBAAY;IACZ,oBAAY;IACZ,sBAAa;IACb,cAAS;IACT,wBAAc;IACd,oBAAY;IACZ,gBAAU;IACV,2BAAe;IACf,+BAAiB;IACjB,gBAAU;IACV,8BAAiB;CAClB,CAAC;AAEF,MAAM,SAAS,GAAG,GAAS,EAAE;IAC3B,MAAM,EAAE,OAAO,EAAE,GAAG,uBAAa,CAAC;IAClC,MAAM,IAAI,GAAG,IAAA,eAAK,EAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3D,6FAA6F;IAC7F,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAoC,EAAE,EAAE;QACvD,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAA,uBAAc,GAAE,CAAC,CAAC,CAAC;SAC3D;aAAM;YACL,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACtB,IAAA,cAAM,EAAC,KAAK,IAAA,uBAAc,GAAE,EAAE,CAAC,CAAC;SACjC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC,CAAA,CAAC;AAEF,4DAA4D;AAC5D,MAAM,mBAAmB,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AAEzD,SAAe,uBAAuB,CAAC,IAA8B;;QACnE,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;YACtC,OAAO;SACR;QAED,IAAI,mBAAmB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;YAChD,OAAO;SACR;aAAM;YACL,OAAO,MAAM,IAAA,sBAAY,EAAC,IAAI,CAAC,CAAC;SACjC;IACH,CAAC;CAAA;AAEM,MAAM,MAAM,GAAG,GAAS,EAAE;IAC/B,OAAA,QAAQ;SACL,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,SAAS,EAAE,CAAC;SACzC,UAAU,CAAC,uBAAuB,CAAC;SACnC,MAAM,EAAE;SACR,aAAa,CAAC,CAAC,CAAC;SAChB,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC9B,IAAI,KAAK,EAAE;YACT,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;SACf;aAAM;YACL,IAAA,cAAM,EAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACrB,IAAA,cAAM,EAAC,KAAK,OAAO,EAAE,CAAC,CAAC;YACvB,IAAA,cAAM,EAAC,KAAK,IAAA,uBAAc,GAAE,EAAE,CAAC,CAAC;SACjC;QACD,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,CAAC,CAAC,CAAA;EAAA,CAAC;AAfM,QAAA,MAAM,UAeZ"}
@@ -126,7 +126,7 @@ const loadCredentials = () => __awaiter(void 0, void 0, void 0, function* () {
126
126
  }
127
127
  });
128
128
  exports.loadCredentials = loadCredentials;
129
- const remainingTokenTime = (identity) => identity.credential.expires_at - Date.now() * 1e-3;
129
+ const remainingTokenTime = (identity) => Math.floor(identity.credential.expires_at - Date.now() * 1e-3);
130
130
  exports.remainingTokenTime = remainingTokenTime;
131
131
  const loadCredentialsWithAutoLogin = (options) => __awaiter(void 0, void 0, void 0, function* () {
132
132
  const identity = yield (0, exports.loadCredentials)();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/drivers/auth/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/drivers/auth/index.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ const instrumentation_1 = require("./opentelemetry/instrumentation");
26
26
  (0, instrumentation_1.startTracing)();
27
27
  const commands_1 = require("./commands");
28
28
  const config_1 = require("./drivers/config");
29
+ const stdio_1 = require("./drivers/stdio");
29
30
  const api_1 = require("@opentelemetry/api");
30
31
  const node_sea_1 = require("node:sea");
31
32
  const lodash_1 = require("lodash");
@@ -65,6 +66,16 @@ const run = () => __awaiter(void 0, void 0, void 0, function* () {
65
66
  // We can suppress output here, as .fail() already print2 errors
66
67
  void cli.parse().catch(lodash_1.noop);
67
68
  });
69
+ // Global error handlers, to avoid ungraceful crashes and to log errors that aren't caught elsewhere.
70
+ // We still exit with a non-zero code to indicate failure.
71
+ process.on("uncaughtException", (error) => {
72
+ (0, stdio_1.print2)("Uncaught Exception: " + error.message);
73
+ process.exit(1);
74
+ });
75
+ process.on("unhandledRejection", (reason) => {
76
+ (0, stdio_1.print2)("Unhandled Rejection: " + (reason instanceof Error ? reason.message : String(reason)));
77
+ process.exit(1);
78
+ });
68
79
  if (require.main === module || (0, node_sea_1.isSea)()) {
69
80
  void (0, exports.main)();
70
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;AAEH,8DAA8D;AAC9D,sEAAsE;AACtE,qEAA+D;AAC/D,IAAA,8BAAY,GAAE,CAAC;AAEf,yCAAoC;AACpC,6CAA8C;AAC9C,4CAA2C;AAC3C,uCAAiC;AACjC,mCAA8B;AAE9B,iFAAiF;AACjF,0FAA0F;AAC1F,qFAAqF;AACrF,MAAM,MAAM,GAAG,WAAK,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAE1C,MAAM,IAAI,GAAG,GAAS,EAAE;IAC7B,MAAM,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAO,IAAI,EAAE,EAAE;QAClD,IAAI;YACF,MAAM,GAAG,EAAE,CAAC;SACb;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,KAAK,CAAC;SACb;gBAAS;YACR,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;IACH,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAXW,QAAA,IAAI,QAWf;AAEF,MAAM,GAAG,GAAG,GAAS,EAAE;IACrB,qFAAqF;IACrF,IAAI;QACF,MAAM,IAAA,mBAAU,GAAE,CAAC;KACpB;IAAC,OAAO,KAAU,EAAE;QACnB,wEAAwE;QACxE,2EAA2E;QAC3E,4CAA4C;QAC5C,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,QAAQ,EAAE;YAC5B,MAAM,KAAK,CAAC;SACb;KACF;IAED,MAAM,GAAG,GAAG,MAAM,IAAA,iBAAM,GAAE,CAAC;IAC3B,gEAAgE;IAChE,KAAM,GAAG,CAAC,KAAK,EAAU,CAAC,KAAK,CAAC,aAAI,CAAC,CAAC;AACxC,CAAC,CAAA,CAAC;AAEF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,IAAA,gBAAK,GAAE,EAAE;IACtC,KAAK,IAAA,YAAI,GAAE,CAAC;CACb"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;AAEH,8DAA8D;AAC9D,sEAAsE;AACtE,qEAA+D;AAC/D,IAAA,8BAAY,GAAE,CAAC;AAEf,yCAAoC;AACpC,6CAA8C;AAC9C,2CAAyC;AACzC,4CAA2C;AAC3C,uCAAiC;AACjC,mCAA8B;AAG9B,iFAAiF;AACjF,0FAA0F;AAC1F,qFAAqF;AACrF,MAAM,MAAM,GAAG,WAAK,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAE1C,MAAM,IAAI,GAAG,GAAS,EAAE;IAC7B,MAAM,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAO,IAAI,EAAE,EAAE;QAClD,IAAI;YACF,MAAM,GAAG,EAAE,CAAC;SACb;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,KAAK,CAAC;SACb;gBAAS;YACR,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;IACH,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAXW,QAAA,IAAI,QAWf;AAEF,MAAM,GAAG,GAAG,GAAS,EAAE;IACrB,qFAAqF;IACrF,IAAI;QACF,MAAM,IAAA,mBAAU,GAAE,CAAC;KACpB;IAAC,OAAO,KAAU,EAAE;QACnB,wEAAwE;QACxE,2EAA2E;QAC3E,4CAA4C;QAC5C,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,QAAQ,EAAE;YAC5B,MAAM,KAAK,CAAC;SACb;KACF;IAED,MAAM,GAAG,GAAG,MAAM,IAAA,iBAAM,GAAE,CAAC;IAC3B,gEAAgE;IAChE,KAAM,GAAG,CAAC,KAAK,EAAU,CAAC,KAAK,CAAC,aAAI,CAAC,CAAC;AACxC,CAAC,CAAA,CAAC;AAEF,qGAAqG;AACrG,0DAA0D;AAC1D,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE;IACxC,IAAA,cAAM,EAAC,sBAAsB,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1C,IAAA,cAAM,EAAC,uBAAuB,GAAG,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,IAAA,gBAAK,GAAE,EAAE;IACtC,KAAK,IAAA,YAAI,GAAE,CAAC;CACb"}
@@ -5,4 +5,4 @@ import yargs from "yargs";
5
5
  *
6
6
  * If there is no new version, or if version lookup errors, just pass silently.
7
7
  */
8
- export declare const checkVersion: (_yargs: yargs.ArgumentsCamelCase) => Promise<void>;
8
+ export declare const checkVersion: (yargs: yargs.ArgumentsCamelCase<{}>) => Promise<void>;
@@ -33,7 +33,7 @@ const semver_1 = __importDefault(require("semver"));
33
33
  const LATEST_VERSION_FILE = "last-version-check";
34
34
  // We don't want to add any significant overhead to p0 commands with the version check,
35
35
  // so just give up if it takes too long.
36
- const VERSION_CHECK_TIMEOUT_MILLIS = 1e3;
36
+ const VERSION_CHECK_TIMEOUT_MILLIS = 2e3;
37
37
  const VERSION_CHECK_INTERVAL_MILLIS = 86400e3; // 1 day
38
38
  /** Checks if there is a new version of the CLI
39
39
  *
@@ -41,25 +41,52 @@ const VERSION_CHECK_INTERVAL_MILLIS = 86400e3; // 1 day
41
41
  *
42
42
  * If there is no new version, or if version lookup errors, just pass silently.
43
43
  */
44
- const checkVersion = (_yargs) => __awaiter(void 0, void 0, void 0, function* () {
44
+ const checkVersion = (yargs) => __awaiter(void 0, void 0, void 0, function* () {
45
+ const isDebug = Boolean(yargs["debug"]);
45
46
  try {
46
47
  const latestFile = node_path_1.default.join(util_1.P0_PATH, LATEST_VERSION_FILE);
47
48
  try {
48
49
  const stat = yield promises_1.default.stat(latestFile);
49
- if (Date.now() - stat.mtime.getTime() <= VERSION_CHECK_INTERVAL_MILLIS)
50
+ const msSinceLastCheck = Date.now() - stat.mtime.getTime();
51
+ if (msSinceLastCheck <= VERSION_CHECK_INTERVAL_MILLIS) {
52
+ if (isDebug) {
53
+ (0, stdio_1.print2)("Skipping version check; last checked " +
54
+ Math.round(msSinceLastCheck / (1000 * 60)) +
55
+ " minutes ago.");
56
+ }
50
57
  return;
58
+ }
51
59
  }
52
60
  catch (error) {
53
61
  if (error.code !== "ENOENT")
54
62
  throw error;
55
63
  }
56
64
  // Write the version-check file first to avoid retrying errors
65
+ // Ensure that the directory exists beforehand
66
+ const dirname = node_path_1.default.dirname(latestFile);
67
+ yield promises_1.default.mkdir(dirname, { recursive: true });
57
68
  yield promises_1.default.writeFile(latestFile, "");
58
- const { name, version } = version_1.p0VersionInfo;
59
- const npmResult = (0, util_1.exec)("npm", ["view", name, "--json"], { check: true });
60
- const npmPackage = yield (0, util_1.timeout)(npmResult, VERSION_CHECK_TIMEOUT_MILLIS);
61
- const { "dist-tags": { latest }, } = JSON.parse(npmPackage.stdout);
62
- if (semver_1.default.lt(version, latest)) {
69
+ const { name, version: current } = version_1.p0VersionInfo;
70
+ if (isDebug) {
71
+ (0, stdio_1.print2)("Checking that your CLI is up to date with the latest version...");
72
+ }
73
+ // On Windows, the main npm file is not an .exe (binary executable) file,
74
+ // so when calling spawn, it cannot be located except via cmd.exe
75
+ const isWindows = (0, util_1.getOperatingSystem)() === "win";
76
+ const npmCmd = isWindows ? "cmd.exe" : "npm";
77
+ const commonNpmArgs = ["view", name, "--json"];
78
+ const npmArgs = isWindows
79
+ ? ["/d", "/s", "/c", "npm", ...commonNpmArgs]
80
+ : commonNpmArgs;
81
+ const processResult = yield (0, util_1.timeout)((0, util_1.exec)(npmCmd, npmArgs, { check: true }), VERSION_CHECK_TIMEOUT_MILLIS);
82
+ const npmPackage = JSON.parse(processResult.stdout);
83
+ const { latest } = npmPackage["dist-tags"];
84
+ if (isDebug) {
85
+ (0, stdio_1.print2)("Package info successfully retrieved.");
86
+ (0, stdio_1.print2)("Latest version: " + latest.padStart(15));
87
+ (0, stdio_1.print2)("Your version: " + current.padStart(15));
88
+ }
89
+ if (semver_1.default.lt(current, latest)) {
63
90
  if ((0, node_sea_1.isSea)()) {
64
91
  (0, stdio_1.print2)(`╔═══════════════════════════════════════════════╗
65
92
  ║ A new version is available ║
@@ -80,8 +107,15 @@ const checkVersion = (_yargs) => __awaiter(void 0, void 0, void 0, function* ()
80
107
  `);
81
108
  }
82
109
  }
110
+ else if (isDebug) {
111
+ (0, stdio_1.print2)("Your version of the CLI is up to date.");
112
+ }
83
113
  }
84
114
  catch (error) {
115
+ if (isDebug) {
116
+ (0, stdio_1.print2)(`Version check failed: ${error.message}`);
117
+ (0, stdio_1.print2)("Ignoring this error and continuing...");
118
+ }
85
119
  // Silently pass errors
86
120
  // TODO: log to ~/.p0
87
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/middlewares/version.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,4CAA0C;AAC1C,kCAAiD;AACjD,wCAA2C;AAC3C,gEAAkC;AAClC,0DAA6B;AAC7B,uCAAiC;AACjC,oDAA4B;AAG5B,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAEjD,uFAAuF;AACvF,wCAAwC;AACxC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEzC,MAAM,6BAA6B,GAAG,OAAO,CAAC,CAAC,QAAQ;AAEvD;;;;;GAKG;AACI,MAAM,YAAY,GAAG,CAAO,MAAgC,EAAE,EAAE;IACrE,IAAI;QACF,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,cAAO,EAAE,mBAAmB,CAAC,CAAC;QAC3D,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,6BAA6B;gBACpE,OAAO;SACV;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;SAC1C;QAED,8DAA8D;QAC9D,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAEnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,uBAAa,CAAC;QAExC,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,MAAM,IAAA,cAAO,EAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;QAC1E,MAAM,EACJ,WAAW,EAAE,EAAE,MAAM,EAAE,GACxB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAElC,IAAI,gBAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;YAC9B,IAAI,IAAA,gBAAK,GAAE,EAAE;gBACX,IAAA,cAAM,EACJ;;;;;;;CAOT,CACQ,CAAC;aACH;iBAAM;gBACL,IAAA,cAAM,EACJ;;;;oBAIU,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;;CAElC,CACQ,CAAC;aACH;SACF;KACF;IAAC,OAAO,KAAU,EAAE;QACnB,uBAAuB;QACvB,qBAAqB;KACtB;AACH,CAAC,CAAA,CAAC;AAlDW,QAAA,YAAY,gBAkDvB"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/middlewares/version.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,7 @@ const accessPropagationGuard = (invalidAccessPatterns, validAccessPatterns, logi
50
50
  let isEphemeralAccessDeniedException = false;
51
51
  let isLoginException = false;
52
52
  let isValidError = false;
53
- child.stderr.on("data", (chunk) => {
53
+ const stderrHandler = (chunk) => {
54
54
  const chunkString = chunk.toString("utf-8");
55
55
  parseAndPrintSshOutputToStderr(chunkString, options);
56
56
  const matchUnprovisionedPattern = invalidAccessPatterns.find((message) => chunkString.match(message.pattern));
@@ -68,11 +68,15 @@ const accessPropagationGuard = (invalidAccessPatterns, validAccessPatterns, logi
68
68
  if (isLoginException) {
69
69
  isEphemeralAccessDeniedException = false; // always overwrite to false so we don't retry the access
70
70
  }
71
- });
71
+ };
72
+ child.stderr.on("data", stderrHandler);
72
73
  return {
73
74
  isAccessPropagated: () => !isEphemeralAccessDeniedException &&
74
75
  (!validAccessPatterns || isValidError),
75
76
  isLoginException: () => isLoginException,
77
+ cleanup: () => {
78
+ child.stderr.removeListener("data", stderrHandler);
79
+ },
76
80
  };
77
81
  };
78
82
  /**
@@ -113,8 +117,8 @@ function spawnSshNode(options) {
113
117
  const gerund = options.isAccessPropagationPreTest
114
118
  ? "Pre-testing"
115
119
  : "Trying";
116
- const remainingSeconds = ((options.endTime - Date.now()) / 1e3).toFixed(1);
117
- (0, stdio_1.print2)(`Waiting for access to propagate. ${gerund} SSH session... (will wait up to ${remainingSeconds} seconds)`);
120
+ const remaining = ((options.endTime - Date.now()) / 1e3).toFixed(1);
121
+ (0, stdio_1.print2)(`Waiting for access to propagate. ${gerund} SSH session... (will wait up to ${remaining} seconds)`);
118
122
  }
119
123
  const child = (0, node_child_process_1.spawn)(options.command, options.args, {
120
124
  env: Object.assign(Object.assign({}, process.env), options.credential),
@@ -122,8 +126,9 @@ function spawnSshNode(options) {
122
126
  shell: false,
123
127
  });
124
128
  // Make sure if the parent process is killed, we kill the child process too
129
+ const signalHandlers = new Map();
125
130
  ["exit", "SIGINT", "SIGTERM", "SIGHUP", "SIGQUIT"].forEach((signal) => {
126
- process.on(signal, () => {
131
+ const handler = () => {
127
132
  try {
128
133
  child.kill();
129
134
  }
@@ -132,17 +137,31 @@ function spawnSshNode(options) {
132
137
  }
133
138
  // Resolving the promise so that we don't hang the process forever.
134
139
  resolve(0);
135
- });
140
+ };
141
+ signalHandlers.set(signal, handler);
142
+ process.on(signal, handler);
136
143
  });
137
144
  // TODO ENG-2284 support login with Google Cloud: currently return a boolean to indicate if the exception was a Google login error.
138
- const { isAccessPropagated, isLoginException } = accessPropagationGuard(provider.unprovisionedAccessPatterns, options.isAccessPropagationPreTest
145
+ const { isAccessPropagated, isLoginException, cleanup: cleanupStderr, } = accessPropagationGuard(provider.unprovisionedAccessPatterns, options.isAccessPropagationPreTest
139
146
  ? provider.provisionedAccessPatterns
140
147
  : undefined, provider.loginRequiredPattern, child, options);
141
148
  const onAbort = () => { var _a, _b; return reject((_b = (_a = options.abortController) === null || _a === void 0 ? void 0 : _a.signal.reason) !== null && _b !== void 0 ? _b : "SSH session aborted"); };
142
149
  (_a = options.abortController) === null || _a === void 0 ? void 0 : _a.signal.addEventListener("abort", onAbort);
150
+ const cleanupAllListeners = () => {
151
+ var _a;
152
+ // Remove process signal handlers
153
+ signalHandlers.forEach((handler, signal) => {
154
+ process.removeListener(signal, handler);
155
+ });
156
+ // Remove abort listener
157
+ (_a = options.abortController) === null || _a === void 0 ? void 0 : _a.signal.removeEventListener("abort", onAbort);
158
+ // Remove stderr data listener
159
+ cleanupStderr();
160
+ };
143
161
  const exitListener = child.on("exit", (code) => {
144
- var _a, _b, _c;
162
+ var _a, _b;
145
163
  exitListener.unref();
164
+ cleanupAllListeners();
146
165
  // In the case of ephemeral AccessDenied exceptions due to unpropagated
147
166
  // permissions, continually retry access until success
148
167
  if (!isAccessPropagated()) {
@@ -150,7 +169,6 @@ function spawnSshNode(options) {
150
169
  reject(`Access did not propagate through ${provider.friendlyName} in time. ${(0, config_1.getContactMessage)()}`);
151
170
  return;
152
171
  }
153
- (_a = options.abortController) === null || _a === void 0 ? void 0 : _a.signal.removeEventListener("abort", onAbort);
154
172
  (0, util_1.delay)(RETRY_DELAY_MS)
155
173
  .then(() => spawnSshNode(options))
156
174
  .then((code) => resolve(code))
@@ -158,11 +176,11 @@ function spawnSshNode(options) {
158
176
  return;
159
177
  }
160
178
  else if (isLoginException()) {
161
- reject((_b = provider.loginRequiredMessage) !== null && _b !== void 0 ? _b : `Please log in to the ${provider.friendlyName} CLI to SSH`);
179
+ reject((_a = provider.loginRequiredMessage) !== null && _a !== void 0 ? _a : `Please log in to the ${provider.friendlyName} CLI to SSH`);
162
180
  return;
163
181
  }
164
182
  if (!options.isAccessPropagationPreTest) {
165
- (_c = options.audit) === null || _c === void 0 ? void 0 : _c.call(options, "end");
183
+ (_b = options.audit) === null || _b === void 0 ? void 0 : _b.call(options, "end");
166
184
  (0, stdio_1.print2)(`SSH session terminated`);
167
185
  }
168
186
  if (options.isAccessPropagationPreTest && isAccessPropagated()) {
@@ -242,6 +260,11 @@ const addCommonArgs = (args, sshProviderProxyCommand, setupData, sshHostKeys) =>
242
260
  const hostKeyAliasOptionExists = sshOptions.some((opt, idx) => { var _a; return opt === "-o" && ((_a = sshOptions[idx + 1]) === null || _a === void 0 ? void 0 : _a.startsWith("HostKeyAlias")); });
243
261
  if (sshHostKeys && !hostKeyAliasOptionExists)
244
262
  sshOptions.push("-o", `HostKeyAlias=${sshHostKeys.alias}`);
263
+ if ((0, util_1.getOperatingSystem)() === "win") {
264
+ // Explicitly set the MAC algorithms to avoid certain MACs whose
265
+ // Windows OpenSSH implementation is unreliable (e.g. umacs-128-etm@openssh.com)
266
+ sshOptions.push("-o", "MACs=hmac-sha2-256-etm@openssh.com,hmac-sha2-256");
267
+ }
245
268
  // Force verbose output from SSH so we can parse the output
246
269
  const verboseOptionExists = sshOptions.some((opt) => opt === "-v");
247
270
  if (!verboseOptionExists) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/ssh/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/ssh/index.ts"],"names":[],"mappings":"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"}
@@ -79,7 +79,10 @@ const exec = (command, args, options) => __awaiter(void 0, void 0, void 0, funct
79
79
  const child = node_child_process_1.default.spawn(command, args, Object.assign(Object.assign({}, (options !== null && options !== void 0 ? options : {})), { stdio: "pipe" }));
80
80
  child.stdout.on("data", (d) => out.push(d));
81
81
  child.stderr.on("data", (d) => err.push(d));
82
- child.on("exit", (code) => {
82
+ // The close event is emitted after the child process has exited (the 'exit' event) and all of its
83
+ // stdio (standard input, standard output, and standard error) streams have been closed.
84
+ // See https://nodejs.org/api/child_process.html#event-close
85
+ child.on("close", (code) => {
83
86
  const stdout = out.join("\n");
84
87
  const stderr = err.join("\n");
85
88
  const result = { code, stdout, stderr };
@@ -87,6 +90,12 @@ const exec = (command, args, options) => __awaiter(void 0, void 0, void 0, funct
87
90
  reject(Object.assign(new Error("Sub-process exited with code"), result));
88
91
  resolve(result);
89
92
  });
93
+ // without a handler for the "error" event, an uncaught exception will be thrown that will crash
94
+ // the process entirely. This can happen if the process fails to spawn, for example, due to the
95
+ // command not being found
96
+ child.on("error", (error) => {
97
+ reject(error);
98
+ });
90
99
  }
91
100
  catch (error) {
92
101
  reject(error);
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}