@p0security/cli 0.19.1 → 0.19.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/build/dist/commands/aws/index.js +4 -0
  2. package/build/dist/commands/aws/index.js.map +1 -1
  3. package/build/dist/commands/aws/permission-set.js +1 -1
  4. package/build/dist/commands/aws/permission-set.js.map +1 -1
  5. package/build/dist/commands/aws/role.js +1 -1
  6. package/build/dist/commands/aws/role.js.map +1 -1
  7. package/build/dist/commands/aws/types.d.ts +1 -0
  8. package/build/dist/commands/kubeconfig.d.ts +1 -0
  9. package/build/dist/commands/kubeconfig.js +19 -11
  10. package/build/dist/commands/kubeconfig.js.map +1 -1
  11. package/build/dist/commands/login.js +18 -6
  12. package/build/dist/commands/login.js.map +1 -1
  13. package/build/dist/commands/ls.js +4 -0
  14. package/build/dist/commands/ls.js.map +1 -1
  15. package/build/dist/commands/shared/ssh.js +2 -2
  16. package/build/dist/commands/shared/ssh.js.map +1 -1
  17. package/build/dist/common/retry.d.ts +34 -5
  18. package/build/dist/common/retry.js +129 -10
  19. package/build/dist/common/retry.js.map +1 -1
  20. package/build/dist/drivers/api.d.ts +9 -16
  21. package/build/dist/drivers/api.js +123 -114
  22. package/build/dist/drivers/api.js.map +1 -1
  23. package/build/dist/drivers/auth/index.js +4 -0
  24. package/build/dist/drivers/auth/index.js.map +1 -1
  25. package/build/dist/drivers/config.d.ts +1 -1
  26. package/build/dist/drivers/config.js +4 -1
  27. package/build/dist/drivers/config.js.map +1 -1
  28. package/build/dist/drivers/firestore.js +3 -0
  29. package/build/dist/drivers/firestore.js.map +1 -1
  30. package/build/dist/plugins/aws/config.d.ts +2 -2
  31. package/build/dist/plugins/aws/config.js +4 -4
  32. package/build/dist/plugins/aws/config.js.map +1 -1
  33. package/build/dist/plugins/aws/idc/index.js +1 -1
  34. package/build/dist/plugins/aws/idc/index.js.map +1 -1
  35. package/build/dist/plugins/aws/ssh.js +5 -5
  36. package/build/dist/plugins/aws/ssh.js.map +1 -1
  37. package/build/dist/plugins/azure/tunnel.js +1 -2
  38. package/build/dist/plugins/azure/tunnel.js.map +1 -1
  39. package/build/dist/plugins/kubeconfig/index.d.ts +2 -2
  40. package/build/dist/plugins/kubeconfig/index.js +5 -5
  41. package/build/dist/plugins/kubeconfig/index.js.map +1 -1
  42. package/build/dist/plugins/okta/aws.d.ts +1 -1
  43. package/build/dist/plugins/okta/aws.js +4 -4
  44. package/build/dist/plugins/okta/aws.js.map +1 -1
  45. package/build/dist/plugins/ssh/index.js +1 -1
  46. package/build/dist/plugins/ssh/index.js.map +1 -1
  47. package/build/dist/types/ssh.d.ts +2 -2
  48. package/build/tsconfig.tsbuildinfo +1 -1
  49. package/package.json +1 -1
@@ -42,6 +42,10 @@ const awsArgs = (yargs) => __awaiter(void 0, void 0, void 0, function* () {
42
42
  .option("reason", {
43
43
  describe: "Reason access is needed",
44
44
  type: "string",
45
+ })
46
+ .option("debug", {
47
+ type: "boolean",
48
+ describe: "Print debug information.",
45
49
  })
46
50
  .env("P0_AWS");
47
51
  const withCommand = ((_a = config.login) === null || _a === void 0 ? void 0 : _a.type) === "idc"
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/aws/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,6CAAkD;AAClD,+CAA6C;AAC7C,qDAA6D;AAC7D,qDAAiD;AACjD,iCAA8B;AAC9B,2CAAiC;AAGjC,MAAM,OAAO,GAAG,CAAO,KAAiB,EAAE,EAAE;;IAC1C,IAAI;QACF,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAY,GAAE,CAAC;QAEnC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,0BAAiB,EAAC,KAAK,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,KAAK;YAChB,gEAAgE;YAChE,6DAA6D;aAC5D,aAAa,CAAC,CAAC,CAAC;aAChB,MAAM,CAAC,SAAS,EAAE;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,iDAAiD;SAC5D,CAAC;aACD,MAAM,CAAC,QAAQ,EAAE;YAChB,QAAQ,EAAE,yBAAyB;YACnC,IAAI,EAAE,QAAQ;SACf,CAAC;aACD,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEjB,MAAM,WAAW,GACf,CAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,IAAI,MAAK,KAAK;YAC1B,CAAC,CAAC,IAAA,8BAAa,EAAC,IAAI,EAAE,KAAK,CAAC;YAC5B,CAAC,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxB,OAAO,WAAW,CAAC;KACpB;IAAC,OAAO,KAAK,EAAE;QACd,2CAA2C;QAC3C,sCAAsC;QAEtC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;QACd,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACZ,MAAM,KAAK,CAAC,CAAC,kEAAkE;KAChF;AACH,CAAC,CAAA,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,KAAiB,EAAE,EAAE,CAC9C,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAC;AAD3C,QAAA,UAAU,cACiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/aws/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,6CAAkD;AAClD,+CAA6C;AAC7C,qDAA6D;AAC7D,qDAAiD;AACjD,iCAA8B;AAC9B,2CAAiC;AAGjC,MAAM,OAAO,GAAG,CAAO,KAAiB,EAAE,EAAE;;IAC1C,IAAI;QACF,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAY,GAAE,CAAC;QAEnC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,0BAAiB,EAAC,KAAK,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,KAAK;YAChB,gEAAgE;YAChE,6DAA6D;aAC5D,aAAa,CAAC,CAAC,CAAC;aAChB,MAAM,CAAC,SAAS,EAAE;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,iDAAiD;SAC5D,CAAC;aACD,MAAM,CAAC,QAAQ,EAAE;YAChB,QAAQ,EAAE,yBAAyB;YACnC,IAAI,EAAE,QAAQ;SACf,CAAC;aACD,MAAM,CAAC,OAAO,EAAE;YACf,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,0BAA0B;SACrC,CAAC;aACD,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEjB,MAAM,WAAW,GACf,CAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,IAAI,MAAK,KAAK;YAC1B,CAAC,CAAC,IAAA,8BAAa,EAAC,IAAI,EAAE,KAAK,CAAC;YAC5B,CAAC,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxB,OAAO,WAAW,CAAC;KACpB;IAAC,OAAO,KAAK,EAAE;QACd,2CAA2C;QAC3C,sCAAsC;QAEtC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;QACd,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACZ,MAAM,KAAK,CAAC,CAAC,kEAAkE;KAChF;AACH,CAAC,CAAA,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,KAAiB,EAAE,EAAE,CAC9C,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAC;AAD3C,QAAA,UAAU,cACiC"}
@@ -34,7 +34,7 @@ exports.permissionSet = permissionSet;
34
34
  const oktaAwsAssumePermissionSet = (argv, authn) => __awaiter(void 0, void 0, void 0, function* () {
35
35
  var _a;
36
36
  const { account, permissionSet } = argv;
37
- const { config } = yield (0, config_1.getAwsConfig)(authn, account);
37
+ const { config } = yield (0, config_1.getAwsConfig)(authn, account, argv.debug);
38
38
  if (((_a = config.login) === null || _a === void 0 ? void 0 : _a.type) !== "idc") {
39
39
  throw new Error(`Unexpected login type. Expected IDC to be enabled for account ${account}`);
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"permission-set.js","sourceRoot":"","sources":["../../../../src/commands/aws/permission-set.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,qDAAwD;AACxD,+CAA0D;AAE1D,+CAAqD;AAErD,iCAA6C;AAC7C,mCAA8B;AAGvB,MAAM,aAAa,GAAG,CAC3B,KAAoC,EACpC,KAAY,EACZ,EAAE,CACF,KAAK,CAAC,OAAO,CACX,gBAAgB,EAChB,mCAAmC,EACnC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,CACX,yBAAyB,EACzB,8BAA8B,EAC9B,CAAC,CAAgC,EAAE,EAAE,CACnC,CAAC,CAAC,UAAU,CAAC,gBAAgB,EAAE;IAC7B,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,4BAA4B;CACvC,CAAC,EACJ,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAClD,CACJ,CAAC;AAnBS,QAAA,aAAa,iBAmBtB;AAEJ,MAAM,0BAA0B,GAAG,CACjC,IAA8D,EAC9D,KAAY,EACZ,EAAE;;IACF,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,qBAAY,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAEtD,IAAI,CAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,IAAI,MAAK,KAAK,EAAE;QAChC,MAAM,IAAI,KAAK,CACb,iEAAiE,OAAO,EAAE,CAC3E,CAAC;KACH;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEzB,MAAM,cAAc,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;IAE9D,MAAM,IAAA,0BAAgB,EAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9C,MAAM,aAAa,GAAG,MAAM,IAAA,uBAAiB,EAAC;QAC5C,SAAS,EAAE,MAAM,CAAC,EAAE;QACpB,aAAa;QACb,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE;KAC5D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,0BAA0B,IAAI,CAAC,aAAa,EAAE,CAAC;IACxH,IAAA,0BAAmB,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAA,CAAC;AAEF,MAAM,gCAAgC,GAAG,CACvC,IAA8D,EAI7D,EAAE;IACH,uCACK,IAAA,aAAI,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KACxB,SAAS,EAAE;YACT,KAAK;YACL,gBAAgB;YAChB,IAAI,CAAC,aAAa;YAClB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACrD,EACD,IAAI,EAAE,IAAI,IACV;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"permission-set.js","sourceRoot":"","sources":["../../../../src/commands/aws/permission-set.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,qDAAwD;AACxD,+CAA0D;AAE1D,+CAAqD;AAErD,iCAA6C;AAC7C,mCAA8B;AAGvB,MAAM,aAAa,GAAG,CAC3B,KAAoC,EACpC,KAAY,EACZ,EAAE,CACF,KAAK,CAAC,OAAO,CACX,gBAAgB,EAChB,mCAAmC,EACnC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,CACX,yBAAyB,EACzB,8BAA8B,EAC9B,CAAC,CAAgC,EAAE,EAAE,CACnC,CAAC,CAAC,UAAU,CAAC,gBAAgB,EAAE;IAC7B,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,4BAA4B;CACvC,CAAC,EACJ,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAClD,CACJ,CAAC;AAnBS,QAAA,aAAa,iBAmBtB;AAEJ,MAAM,0BAA0B,GAAG,CACjC,IAA8D,EAC9D,KAAY,EACZ,EAAE;;IACF,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,qBAAY,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAElE,IAAI,CAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,IAAI,MAAK,KAAK,EAAE;QAChC,MAAM,IAAI,KAAK,CACb,iEAAiE,OAAO,EAAE,CAC3E,CAAC;KACH;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEzB,MAAM,cAAc,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;IAE9D,MAAM,IAAA,0BAAgB,EAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9C,MAAM,aAAa,GAAG,MAAM,IAAA,uBAAiB,EAAC;QAC5C,SAAS,EAAE,MAAM,CAAC,EAAE;QACpB,aAAa;QACb,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE;KAC5D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,0BAA0B,IAAI,CAAC,aAAa,EAAE,CAAC;IACxH,IAAA,0BAAmB,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAA,CAAC;AAEF,MAAM,gCAAgC,GAAG,CACvC,IAA8D,EAI7D,EAAE;IACH,uCACK,IAAA,aAAI,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KACxB,SAAS,EAAE;YACT,KAAK;YACL,gBAAgB;YAChB,IAAI,CAAC,aAAa;YAClB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACrD,EACD,IAAI,EAAE,IAAI,IACV;AACJ,CAAC,CAAC"}
@@ -54,7 +54,7 @@ const oktaAwsAssumeRole = (argv, authn) => __awaiter(void 0, void 0, void 0, fun
54
54
  const awsCredential = yield (0, aws_1.assumeRoleWithOktaSaml)(authn, {
55
55
  accountId: argv.account,
56
56
  role: argv.role,
57
- });
57
+ }, argv.debug);
58
58
  const command = `p0 aws${argv.account ? ` --account ${argv.account}` : ""} role assume ${argv.role}`;
59
59
  (0, util_1.printAwsCredentials)(awsCredential, command);
60
60
  });
@@ -1 +1 @@
1
- {"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/commands/aws/role.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,gDAAgE;AAEhE,+CAAqD;AAErD,iCAA6C;AAC7C,mCAA8B;AAGvB,MAAM,IAAI,GAAG,CAClB,KAAkD,EAClD,KAAY,EACZ,EAAE,CACF,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,EAAE,CAAC,KAAK,EAAE,EAAE,CACzD,KAAK;IACH,+DAA+D;IAC/D,oEAAoE;IACpE,0CAA0C;KACzC,aAAa,CAAC,CAAC,CAAC;KAChB,OAAO,CACN,eAAe,EACf,oBAAoB,EACpB,CAAC,CAA8C,EAAE,EAAE,CACjD,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,kBAAkB;CAC7B,CAAC;AACJ,oCAAoC;AACpC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CACzC,CACJ,CAAC;AAtBS,QAAA,IAAI,QAsBb;AAEJ;;;;;;;;;;GAUG;AACH,MAAM,iBAAiB,GAAG,CACxB,IAAqD,EACrD,KAAY,EACZ,EAAE;IACF,MAAM,cAAc,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,IAAA,0BAAgB,EAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9C,MAAM,aAAa,GAAG,MAAM,IAAA,4BAAsB,EAAC,KAAK,EAAE;QACxD,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,IAAI,CAAC,IAAI,EAAE,CAAC;IACrG,IAAA,0BAAmB,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAA,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,IAAqD,EAIpD,EAAE;IACH,uCACK,IAAA,aAAI,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KACxB,SAAS,EAAE;YACT,KAAK;YACL,MAAM;YACN,IAAI,CAAC,IAAI;YACT,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACrD,EACD,IAAI,EAAE,IAAI,IACV;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/commands/aws/role.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,gDAAgE;AAEhE,+CAAqD;AAErD,iCAA6C;AAC7C,mCAA8B;AAGvB,MAAM,IAAI,GAAG,CAClB,KAAkD,EAClD,KAAY,EACZ,EAAE,CACF,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,EAAE,CAAC,KAAK,EAAE,EAAE,CACzD,KAAK;IACH,+DAA+D;IAC/D,oEAAoE;IACpE,0CAA0C;KACzC,aAAa,CAAC,CAAC,CAAC;KAChB,OAAO,CACN,eAAe,EACf,oBAAoB,EACpB,CAAC,CAA8C,EAAE,EAAE,CACjD,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,kBAAkB;CAC7B,CAAC;AACJ,oCAAoC;AACpC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CACzC,CACJ,CAAC;AAtBS,QAAA,IAAI,QAsBb;AAEJ;;;;;;;;;;GAUG;AACH,MAAM,iBAAiB,GAAG,CACxB,IAAqD,EACrD,KAAY,EACZ,EAAE;IACF,MAAM,cAAc,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,IAAA,0BAAgB,EAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9C,MAAM,aAAa,GAAG,MAAM,IAAA,4BAAsB,EAChD,KAAK,EACL;QACE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,EACD,IAAI,CAAC,KAAK,CACX,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,IAAI,CAAC,IAAI,EAAE,CAAC;IACrG,IAAA,0BAAmB,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAA,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,IAAqD,EAIpD,EAAE;IACH,uCACK,IAAA,aAAI,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KACxB,SAAS,EAAE;YACT,KAAK;YACL,MAAM;YACN,IAAI,CAAC,IAAI;YACT,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACrD,EACD,IAAI,EAAE,IAAI,IACV;AACJ,CAAC,CAAC"}
@@ -11,6 +11,7 @@ You should have received a copy of the GNU General Public License along with @p0
11
11
  export type AssumeCommandArgs = {
12
12
  account?: string;
13
13
  reason?: string;
14
+ debug?: boolean;
14
15
  };
15
16
  export type AssumePermissionSetCommandArgs = AssumeCommandArgs & {
16
17
  permissionSet: string;
@@ -5,5 +5,6 @@ export type KubeconfigCommandArgs = {
5
5
  resource?: string;
6
6
  reason?: string;
7
7
  requestedDuration?: string;
8
+ debug?: boolean;
8
9
  };
9
10
  export declare const kubeconfigCommand: (yargs: yargs.Argv<{}>) => yargs.Argv<{}>;
@@ -54,6 +54,10 @@ const kubeconfigCommand = (yargs) => yargs.command("kubeconfig", "Request access
54
54
  type: "string",
55
55
  // Copied from the P0 backend
56
56
  describe: "Requested duration for access (format like '10 minutes', '2 hours', '5 days', or '1 week')",
57
+ })
58
+ .option("debug", {
59
+ type: "boolean",
60
+ describe: "Print debug information.",
57
61
  }), kubeconfigAction);
58
62
  exports.kubeconfigCommand = kubeconfigCommand;
59
63
  const kubeconfigAction = (args) => __awaiter(void 0, void 0, void 0, function* () {
@@ -62,14 +66,14 @@ const kubeconfigAction = (args) => __awaiter(void 0, void 0, void 0, function* (
62
66
  validateResourceArg(args.resource);
63
67
  }
64
68
  const authn = yield (0, auth_1.authenticate)();
65
- const { clusterConfig, awsLoginType } = yield (0, kubeconfig_1.getAndValidateK8sIntegration)(authn, args.cluster);
69
+ const { clusterConfig, awsLoginType } = yield (0, kubeconfig_1.getAndValidateK8sIntegration)(authn, args.cluster, args.debug);
66
70
  const { clusterId, awsAccountId, awsClusterArn } = clusterConfig;
67
71
  if (!(yield (0, install_1.ensureEksInstall)())) {
68
72
  throw "Required dependencies are missing; please try again after installing them, or check that they are available on the PATH.";
69
73
  }
70
74
  // No spinUntil(); there is one inside requestAccessToCluster() if needed
71
75
  const request = yield (0, kubeconfig_1.requestAccessToCluster)(authn, args, clusterId, role);
72
- const awsAuth = yield (0, kubeconfig_1.awsCloudAuth)(authn, awsAccountId, request, awsLoginType);
76
+ const awsAuth = yield (0, kubeconfig_1.awsCloudAuth)(authn, awsAccountId, request, awsLoginType, args.debug);
73
77
  const profile = (0, kubeconfig_1.profileName)(clusterId);
74
78
  const alias = (0, kubeconfig_1.aliasedArn)(awsClusterArn);
75
79
  // The `aws eks update-kubeconfig` command can't handle the ARN of the EKS cluster.
@@ -97,16 +101,20 @@ const kubeconfigAction = (args) => __awaiter(void 0, void 0, void 0, function* (
97
101
  try {
98
102
  // Federated access especially sometimes takes some time to propagate, so
99
103
  // retry for up to 20 seconds just in case it takes a while.
100
- const awsResult = yield (0, stdio_1.spinUntil)("Waiting for AWS resources to be provisioned and updating kubeconfig for EKS", (0, retry_1.retryWithSleep)(() => __awaiter(void 0, void 0, void 0, function* () { return yield (0, util_1.exec)("aws", updateKubeconfigArgs, { check: true }); }), (error) => {
101
- if (error === null || error === void 0 ? void 0 : error.stderr) {
102
- if (error.stderr.includes("Unknown options") ||
103
- error.stderr.includes("--user-alias")) {
104
- (0, stdio_1.print2)("\nThe AWS CLI version is not compatible with the p0 kubeconfig command. Please update to at least version 2.11.6.");
105
- return false; // Stop retrying if the CLI version is incompatible
104
+ const awsResult = yield (0, stdio_1.spinUntil)("Waiting for AWS resources to be provisioned and updating kubeconfig for EKS", (0, retry_1.retryWithSleep)(() => __awaiter(void 0, void 0, void 0, function* () { return yield (0, util_1.exec)("aws", updateKubeconfigArgs, { check: true }); }), {
105
+ shouldRetry: (error) => {
106
+ if (error === null || error === void 0 ? void 0 : error.stderr) {
107
+ if (error.stderr.includes("Unknown options") ||
108
+ error.stderr.includes("--user-alias")) {
109
+ (0, stdio_1.print2)("\nThe AWS CLI version is not compatible with the p0 kubeconfig command. Please update to at least version 2.11.6.");
110
+ return false; // Stop retrying if the CLI version is incompatible
111
+ }
106
112
  }
107
- }
108
- return true;
109
- }, 8, 2500));
113
+ return true;
114
+ },
115
+ retries: 8,
116
+ delayMs: 2500,
117
+ }));
110
118
  (0, stdio_1.print2)(awsResult.stdout);
111
119
  }
112
120
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"kubeconfig.js","sourceRoot":"","sources":["../../../src/commands/kubeconfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kubeconfig.js","sourceRoot":"","sources":["../../../src/commands/kubeconfig.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,12 @@ const org_1 = require("../drivers/org");
28
28
  const stdio_1 = require("../drivers/stdio");
29
29
  const login_1 = require("../plugins/login");
30
30
  const MIN_REMAINING_TOKEN_TIME_SECONDS = 5 * 60;
31
- const doActualLogin = (orgWithSlug) => __awaiter(void 0, void 0, void 0, function* () {
31
+ const doActualLogin = (orgWithSlug, debug) => __awaiter(void 0, void 0, void 0, function* () {
32
32
  var _a;
33
33
  const plugin = (_a = orgWithSlug === null || orgWithSlug === void 0 ? void 0 : orgWithSlug.ssoProvider) !== null && _a !== void 0 ? _a : (orgWithSlug.usePassword ? "password" : undefined);
34
+ if (debug) {
35
+ (0, stdio_1.print2)(`Using login method: ${plugin !== null && plugin !== void 0 ? plugin : "unknown"}`);
36
+ }
34
37
  const loginFn = plugin && login_1.pluginLoginMap[plugin];
35
38
  if (!loginFn)
36
39
  throw "Unsupported login for your organization";
@@ -80,18 +83,27 @@ const login = (args, options) => __awaiter(void 0, void 0, void 0, function* ()
80
83
  }
81
84
  }
82
85
  }
86
+ if (options === null || options === void 0 ? void 0 : options.debug) {
87
+ (0, stdio_1.print2)(`Current login status: ${loggedIn ? "logged in" : "not logged in"}, org: ${orgSlug}`);
88
+ }
83
89
  if (!loggedIn) {
84
- yield (0, config_1.saveConfig)(orgSlug);
90
+ yield (0, config_1.saveConfig)(orgSlug, options === null || options === void 0 ? void 0 : options.debug);
85
91
  }
86
92
  yield (0, firestore_1.initializeFirebase)();
87
93
  const orgData = yield (0, org_1.getOrgData)(orgSlug);
88
94
  const orgWithSlug = Object.assign(Object.assign({}, orgData), { slug: orgSlug });
95
+ if (options === null || options === void 0 ? void 0 : options.debug) {
96
+ (0, stdio_1.print2)(`Org data: ${JSON.stringify(orgWithSlug)}`);
97
+ }
89
98
  if (!loggedIn) {
90
- yield doActualLogin(orgWithSlug);
99
+ if (options === null || options === void 0 ? void 0 : options.debug) {
100
+ (0, stdio_1.print2)(`Proceeding with actual login for org ${orgSlug}`);
101
+ }
102
+ yield doActualLogin(orgWithSlug, options === null || options === void 0 ? void 0 : options.debug);
91
103
  }
92
104
  if (!(options === null || options === void 0 ? void 0 : options.skipAuthenticate)) {
93
105
  const authn = yield (0, auth_1.authenticate)({ debug: options === null || options === void 0 ? void 0 : options.debug });
94
- yield validateTenantAccess(authn);
106
+ yield validateTenantAccess(authn, options === null || options === void 0 ? void 0 : options.debug);
95
107
  }
96
108
  if (!loggedIn) {
97
109
  (0, stdio_1.print2)(`You are now logged in to the ${orgSlug} organization, and can use the p0 CLI.`);
@@ -113,9 +125,9 @@ const loginCommand = (yargs) => yargs.command("login [org]", "Log in to p0 using
113
125
  describe: "Print debug information.",
114
126
  }), (args) => (0, exports.login)(args, args));
115
127
  exports.loginCommand = loginCommand;
116
- const validateTenantAccess = (authn) => __awaiter(void 0, void 0, void 0, function* () {
128
+ const validateTenantAccess = (authn, debug) => __awaiter(void 0, void 0, void 0, function* () {
117
129
  try {
118
- yield (0, api_1.fetchAccountInfo)(authn);
130
+ yield (0, api_1.fetchAccountInfo)(authn, debug);
119
131
  return true;
120
132
  }
121
133
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/login.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/login.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,10 @@ const lsArgs = (yargs) => yargs
47
47
  type: "boolean",
48
48
  default: false,
49
49
  description: "Output in JSON format",
50
+ })
51
+ .option("debug", {
52
+ type: "boolean",
53
+ describe: "Print debug information.",
50
54
  });
51
55
  const lsCommand = (yargs) => yargs.command("ls [arguments..]", "List request-command arguments", lsArgs, ls);
52
56
  exports.lsCommand = lsCommand;
@@ -1 +1 @@
1
- {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/commands/ls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/commands/ls.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ exports.SSH_PROVIDERS = {
40
40
  "self-hosted": ssh_4.selfHostedSshProvider,
41
41
  };
42
42
  const validateSshInstall = (authn, args) => __awaiter(void 0, void 0, void 0, function* () {
43
- const configDoc = yield (0, api_1.fetchIntegrationConfig)(authn, "ssh");
43
+ const configDoc = yield (0, api_1.fetchIntegrationConfig)(authn, "ssh", args.debug);
44
44
  const configItems = configDoc === null || configDoc === void 0 ? void 0 : configDoc.config["iam-write"];
45
45
  const providersToCheck = args.provider
46
46
  ? [args.provider]
@@ -123,7 +123,7 @@ const prepareRequest = (authn, args, destination, options) => __awaiter(void 0,
123
123
  }
124
124
  const { requestId, publicKey, provisionedRequest } = result;
125
125
  const sshProvider = exports.SSH_PROVIDERS[provisionedRequest.permission.provider];
126
- yield ((_a = sshProvider.submitPublicKey) === null || _a === void 0 ? void 0 : _a.call(sshProvider, authn, provisionedRequest, requestId, publicKey));
126
+ yield ((_a = sshProvider.submitPublicKey) === null || _a === void 0 ? void 0 : _a.call(sshProvider, authn, provisionedRequest, requestId, publicKey, args.debug));
127
127
  yield sshProvider.ensureInstall();
128
128
  const cliRequest = yield pluginToCliRequest(provisionedRequest, args);
129
129
  const request = sshProvider.requestToSsh(cliRequest);
@@ -1 +1 @@
1
- {"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../../../src/commands/shared/ssh.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,wBAA0C;AAC1C,4CAAkD;AAClD,2CAA2D;AAC3D,iDAAyD;AACzD,+CAA6C;AAC7C,+CAAuD;AACvD,iDAA2D;AAC3D,kDAA0D;AAC1D,uDAAsE;AAItE,yCAMyB;AACzB,uCAAoC;AACpC,mCAA8B;AAC9B,2CAAiC;AA0DpB,QAAA,aAAa,GAGtB;IACF,GAAG,EAAE,oBAAc;IACnB,KAAK,EAAE,sBAAgB;IACvB,MAAM,EAAE,oBAAc;IACtB,aAAa,EAAE,2BAAqB;CACrC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,KAAY,EACZ,IAAkD,EAClD,EAAE;IACF,MAAM,SAAS,GAAG,MAAM,IAAA,4BAAsB,EAC5C,KAAK,EACL,KAAK,CACN,CAAC;IACF,MAAM,WAAW,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAEnD,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ;QACpC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACjB,CAAC,CAAC,2BAAqB,CAAC;IAE1B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,CAAC,CAAC,MAAM,CACpD,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,KAAK,CAAC,KAAK,IAAI,WAAW;QAC1B,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAC5D,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,MAAM,mEAAmE,CAAC;KAC3E;AACH,CAAC,CAAA,CAAC;AAEK,MAAM,aAAa,GAAG,CAAC,IAA0C,EAAE,EAAE,CAC1E,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC;AAD1B,QAAA,aAAa,iBACa;AAEhC,MAAM,gBAAgB,GAAG,CAC9B,KAAY,EACZ,IAAkD,EAClD,WAAmB,EACnB,OAA2B,EAC3B,EAAE;IACF,MAAM,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,oBAAa,GAAE,CAAC;IAExD,MAAM,WAAW,GAAG,CAAO,cAAuC,EAAE,EAAE;QACpE,OAAO,MAAM,IAAA,iBAAO,EAAC,SAAS,CAAC,iCAExB,IAAA,aAAI,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KACxB,SAAS,EAAE;gBACT,KAAK;gBACL,SAAS;gBACT,WAAW;gBACX,cAAc;gBACd,SAAS;gBACT,GAAG,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,GAAG,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,KAAI,IAAA,qBAAa,EAAC,IAAI,CAAC;oBAClD,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACZ,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,EACD,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,KAAK,KAEnB,KAAK,EACL,EAAE,OAAO,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAC5D,CAAC;IACJ,CAAC,CAAA,CAAC;IAEF,IAAI,QAAQ,CAAC;IACb,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;QACzB,sBAAsB;QACtB,IAAI;YACF,QAAQ,GAAG,MAAM,WAAW,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;SACnD;QAAC,OAAO,KAAK,EAAE;YACd,kCAAkC;YAClC,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,IAAA,cAAM,EAAC,iDAAiD,CAAC,CAAC;aAC3D;YACD,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;SAChC;KACF;SAAM;QACL,wCAAwC;QACxC,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;KAChC;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAA,EAAE;YACnB,IAAA,cAAM,EAAC,uCAAuC,CAAC,CAAC;SACjD;QACD,OAAO;KACR;IAED,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;IAEvC,MAAM,OAAO,GAAG,aAAa;QAC3B,CAAC,CAAC,iDAAiD;QACnD,CAAC,CAAC,sCAAsC,CAAC;IAC3C,IAAA,cAAM,EAAC,OAAO,CAAC,CAAC;IAEhB,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAqB,EACxC,QAAQ,CAAC,OAAO,CACjB,CAAC;IAEF,IAAI,CAAC,MAAM;QAAE,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEzB,OAAO;QACL,SAAS,EAAE,EAAE;QACb,kBAAkB,EAAE,QAAQ,CAAC,OAAO;QACpC,SAAS;QACT,UAAU;KACX,CAAC;AACJ,CAAC,CAAA,CAAC;AA/EW,QAAA,gBAAgB,oBA+E3B;AAEF,MAAM,kBAAkB,GAAG,CACzB,OAA4C,EAC5C,OAA6B,EACc,EAAE;IAC7C,OAAA,MAAM,qBAAa,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,YAAY,CAC3D,OAAc,EACd,OAAO,CACR,CAAA;EAAA,CAAC;AAEG,MAAM,cAAc,GAAG,CAC5B,KAAY,EACZ,IAAkD,EAClD,WAAmB,EACnB,OAA2B,EAC3B,EAAE;;IACF,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAgB,EAAC,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACzE,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,uCAAuC,IAAA,0BAAiB,GAAE,EAAE,CAAC;KACpE;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;IAE5D,MAAM,WAAW,GAAG,qBAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE1E,MAAM,CAAA,MAAA,WAAW,CAAC,eAAe,4DAC/B,KAAK,EACL,kBAAkB,EAClB,SAAS,EACT,SAAS,CACV,CAAA,CAAC;IAEF,MAAM,WAAW,CAAC,aAAa,EAAE,CAAC;IAElC,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IAEtE,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAErD,MAAM,WAAW,GAAG,MAAM,CAAA,MAAA,WAAW,CAAC,YAAY,4DAAG,OAAO,EAAE,IAAI,CAAC,CAAA,CAAC;IAEpE,uCAAY,MAAM,KAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,IAAG;AAC9E,CAAC,CAAA,CAAC;AA/BW,QAAA,cAAc,kBA+BzB"}
1
+ {"version":3,"file":"ssh.js","sourceRoot":"","sources":["../../../../src/commands/shared/ssh.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,38 @@
1
+ type RetryOptions = {
2
+ shouldRetry?: (error: unknown) => boolean;
3
+ retries?: number;
4
+ delayMs?: number;
5
+ multiplier?: number;
6
+ maxDelayMs?: number;
7
+ jitterFactor?: number;
8
+ debug?: boolean;
9
+ };
1
10
  /**
2
11
  * Retries an operation with a delay between retries
3
12
  * @param operation operation to retry
4
- * @param shouldRetry predicate to evaluate on error; will retry only if this is true
5
- * @param retries number of retries
6
- * @param delay time to wait before retrying
7
- * @returns
13
+ * @param {RetryOptions} options options of retrying the operation
14
+ * @param {function} options.shouldRetry - function to determine if the operation should be retried based on the error
15
+ * @param {number} options.retries - number of retries; must be 0 or a positive integer
16
+ * @param {number} options.delay - time to wait before retrying; must be 0 or a positive integer
17
+ * @param {number} options.multiplier - multiplier to apply to delay after each retry; must be 1.0 or a larger number
18
+ * @param {number} options.maxDelayMs - maximum delay between retries; 0 or negative means no max
19
+ * @param {number} options.jitterFactor - previous delay is multiplied with a random factor in the range [1 - jitterFactor, 1 + jitterFactor], before `multiplier`; must be between 0.0 and 1.0 (inclusive)
20
+ * @param {boolean} options.debug - whether to print debug information
21
+ * @returns result of the operation
8
22
  */
9
- export declare function retryWithSleep<T>(operation: () => Promise<T>, shouldRetry: (error: unknown) => boolean, retries?: number, delayMs?: number): Promise<T>;
23
+ export declare function retryWithSleep<T>(operation: () => Promise<T>, options?: RetryOptions): Promise<T>;
24
+ /**
25
+ * Retries generation of values with a delay between retries
26
+ * @param generator generator to run
27
+ * @param {RetryOptions} options options of retrying the operation
28
+ * @param {function} options.shouldRetry - function to determine if the operation should be retried based on the error
29
+ * @param {number} options.retries - number of retries; must be 0 or a positive integer
30
+ * @param {number} options.delay - time to wait before retrying; must be 0 or a positive integer
31
+ * @param {number} options.multiplier - multiplier to apply to delay after each retry; must be 1.0 or a larger number
32
+ * @param {number} options.maxDelayMs - maximum delay between retries; 0 or negative means no max
33
+ * @param {number} options.jitterFactor - previous delay is multiplied with a random factor in the range [1 - jitterFactor, 1 + jitterFactor], before `multiplier`; must be between 0.0 and 1.0 (inclusive)
34
+ * @param {boolean} options.debug - whether to print debug information
35
+ * @yields values from the generator
36
+ */
37
+ export declare function regenerateWithSleep<T>(generator: () => AsyncGenerator<T, void, unknown>, options?: RetryOptions): AsyncGenerator<T, void, unknown>;
38
+ export {};
@@ -8,8 +8,32 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
12
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
+ var m = o[Symbol.asyncIterator], i;
14
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
+ };
18
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
19
+ var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
20
+ var i, p;
21
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
22
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
23
+ };
24
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
25
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
26
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
27
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
28
+ function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
29
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
30
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
31
+ function fulfill(value) { resume("next", value); }
32
+ function reject(value) { resume("throw", value); }
33
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
34
+ };
11
35
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.retryWithSleep = void 0;
36
+ exports.regenerateWithSleep = exports.retryWithSleep = void 0;
13
37
  /** Copyright © 2024-present P0 Security
14
38
 
15
39
  This file is part of @p0security/cli
@@ -20,27 +44,86 @@ This file is part of @p0security/cli
20
44
 
21
45
  You should have received a copy of the GNU General Public License along with @p0security/cli. If not, see <https://www.gnu.org/licenses/>.
22
46
  **/
47
+ const stdio_1 = require("../drivers/stdio");
23
48
  const util_1 = require("../util");
24
- const MAX_RETRIES = 3;
25
- const MAX_RETRY_BACK_OFF_TIME = 10000;
49
+ const DEFAULT_OPTIONS = {
50
+ shouldRetry: () => true,
51
+ retries: 3,
52
+ delayMs: 1000,
53
+ multiplier: 1.0,
54
+ // A 0 or negative maxDelayMs means no max
55
+ maxDelayMs: 0,
56
+ jitterFactor: 0.5,
57
+ debug: false,
58
+ };
59
+ const optionsWithDefaults = (options) => {
60
+ if ((options === null || options === void 0 ? void 0 : options.retries) && options.retries < 0) {
61
+ if (options.debug) {
62
+ (0, stdio_1.print2)(`retries must be 0 or a positive integer. Got ${options.retries}. Using default value ${DEFAULT_OPTIONS.retries}`);
63
+ }
64
+ delete options.retries;
65
+ }
66
+ if ((options === null || options === void 0 ? void 0 : options.delayMs) && options.delayMs < 0) {
67
+ if (options.debug) {
68
+ (0, stdio_1.print2)(`delayMs must be 0 or a positive integer. Got ${options.delayMs}. Using default value ${DEFAULT_OPTIONS.delayMs}`);
69
+ }
70
+ delete options.delayMs;
71
+ }
72
+ if ((options === null || options === void 0 ? void 0 : options.multiplier) && options.multiplier < 1.0) {
73
+ if (options.debug) {
74
+ (0, stdio_1.print2)(`multiplier must be 1.0 or a larger number. Got ${options.multiplier}. Using default value ${DEFAULT_OPTIONS.multiplier}`);
75
+ }
76
+ delete options.multiplier;
77
+ }
78
+ if ((options === null || options === void 0 ? void 0 : options.jitterFactor) &&
79
+ (options.jitterFactor > 1.0 || options.jitterFactor < 0.0)) {
80
+ if (options.debug) {
81
+ (0, stdio_1.print2)(`jitterFactor must be between 0.0 and 1.0. Got ${options.jitterFactor}. Using default value ${DEFAULT_OPTIONS.jitterFactor}`);
82
+ }
83
+ delete options.jitterFactor;
84
+ }
85
+ return Object.assign(Object.assign({}, DEFAULT_OPTIONS), (options || {}));
86
+ };
87
+ const addJitter = (delayMs, jitterFactor) => {
88
+ return Math.max(0, // ensure non-negative
89
+ delayMs * (1 + jitterFactor * (Math.random() * 2 - 1)));
90
+ };
91
+ const optionsForNextRetry = (options) => {
92
+ const { delayMs, maxDelayMs, multiplier } = options;
93
+ const nextDelayMs = maxDelayMs > 0
94
+ ? Math.min(delayMs * multiplier, maxDelayMs)
95
+ : delayMs * multiplier;
96
+ return Object.assign(Object.assign({}, options), { retries: options.retries - 1, delayMs: nextDelayMs });
97
+ };
26
98
  /**
27
99
  * Retries an operation with a delay between retries
28
100
  * @param operation operation to retry
29
- * @param shouldRetry predicate to evaluate on error; will retry only if this is true
30
- * @param retries number of retries
31
- * @param delay time to wait before retrying
32
- * @returns
101
+ * @param {RetryOptions} options options of retrying the operation
102
+ * @param {function} options.shouldRetry - function to determine if the operation should be retried based on the error
103
+ * @param {number} options.retries - number of retries; must be 0 or a positive integer
104
+ * @param {number} options.delay - time to wait before retrying; must be 0 or a positive integer
105
+ * @param {number} options.multiplier - multiplier to apply to delay after each retry; must be 1.0 or a larger number
106
+ * @param {number} options.maxDelayMs - maximum delay between retries; 0 or negative means no max
107
+ * @param {number} options.jitterFactor - previous delay is multiplied with a random factor in the range [1 - jitterFactor, 1 + jitterFactor], before `multiplier`; must be between 0.0 and 1.0 (inclusive)
108
+ * @param {boolean} options.debug - whether to print debug information
109
+ * @returns result of the operation
33
110
  */
34
- function retryWithSleep(operation, shouldRetry, retries = MAX_RETRIES, delayMs = MAX_RETRY_BACK_OFF_TIME) {
111
+ function retryWithSleep(operation, options) {
35
112
  return __awaiter(this, void 0, void 0, function* () {
113
+ const retryOptions = optionsWithDefaults(options);
114
+ const { shouldRetry, retries, delayMs, debug } = retryOptions;
36
115
  try {
37
116
  return yield operation();
38
117
  }
39
118
  catch (error) {
40
119
  if (shouldRetry(error)) {
120
+ const jitteredMs = addJitter(delayMs, retryOptions.jitterFactor);
41
121
  if (retries > 0) {
42
- yield (0, util_1.sleep)(delayMs);
43
- return yield retryWithSleep(operation, shouldRetry, retries - 1);
122
+ if (debug) {
123
+ (0, stdio_1.print2)(`\nRetry in ${jitteredMs}ms (remaining attempts: ${retries}). Cause: ${error}`);
124
+ }
125
+ yield (0, util_1.sleep)(jitteredMs);
126
+ return yield retryWithSleep(operation, optionsForNextRetry(retryOptions));
44
127
  }
45
128
  }
46
129
  throw error;
@@ -48,4 +131,40 @@ function retryWithSleep(operation, shouldRetry, retries = MAX_RETRIES, delayMs =
48
131
  });
49
132
  }
50
133
  exports.retryWithSleep = retryWithSleep;
134
+ /**
135
+ * Retries generation of values with a delay between retries
136
+ * @param generator generator to run
137
+ * @param {RetryOptions} options options of retrying the operation
138
+ * @param {function} options.shouldRetry - function to determine if the operation should be retried based on the error
139
+ * @param {number} options.retries - number of retries; must be 0 or a positive integer
140
+ * @param {number} options.delay - time to wait before retrying; must be 0 or a positive integer
141
+ * @param {number} options.multiplier - multiplier to apply to delay after each retry; must be 1.0 or a larger number
142
+ * @param {number} options.maxDelayMs - maximum delay between retries; 0 or negative means no max
143
+ * @param {number} options.jitterFactor - previous delay is multiplied with a random factor in the range [1 - jitterFactor, 1 + jitterFactor], before `multiplier`; must be between 0.0 and 1.0 (inclusive)
144
+ * @param {boolean} options.debug - whether to print debug information
145
+ * @yields values from the generator
146
+ */
147
+ function regenerateWithSleep(generator, options) {
148
+ return __asyncGenerator(this, arguments, function* regenerateWithSleep_1() {
149
+ const retryOptions = optionsWithDefaults(options);
150
+ const { shouldRetry, retries, delayMs, debug } = retryOptions;
151
+ try {
152
+ yield __await(yield* __asyncDelegator(__asyncValues(generator())));
153
+ }
154
+ catch (error) {
155
+ if (shouldRetry(error)) {
156
+ if (retries > 0) {
157
+ const jitteredMs = addJitter(delayMs, retryOptions.jitterFactor);
158
+ if (debug) {
159
+ (0, stdio_1.print2)(`\nRetry in ${jitteredMs}ms (remaining attempts: ${retries}). Cause: ${error}`);
160
+ }
161
+ yield __await((0, util_1.sleep)(jitteredMs));
162
+ yield __await(yield* __asyncDelegator(__asyncValues(regenerateWithSleep(generator, optionsForNextRetry(retryOptions)))));
163
+ }
164
+ }
165
+ throw error;
166
+ }
167
+ });
168
+ }
169
+ exports.regenerateWithSleep = regenerateWithSleep;
51
170
  //# sourceMappingURL=retry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../src/common/retry.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,kCAAgC;AAEhC,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAEtC;;;;;;;GAOG;AACH,SAAsB,cAAc,CAClC,SAA2B,EAC3B,WAAwC,EACxC,OAAO,GAAG,WAAW,EACrB,UAAkB,uBAAuB;;QAEzC,IAAI;YACF,OAAO,MAAM,SAAS,EAAE,CAAC;SAC1B;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;gBACtB,IAAI,OAAO,GAAG,CAAC,EAAE;oBACf,MAAM,IAAA,YAAK,EAAC,OAAO,CAAC,CAAC;oBACrB,OAAO,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;iBAClE;aACF;YACD,MAAM,KAAK,CAAC;SACb;IACH,CAAC;CAAA;AAjBD,wCAiBC"}
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../src/common/retry.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,21 @@
1
- /** Copyright © 2024-present P0 Security
2
-
3
- This file is part of @p0security/cli
4
-
5
- @p0security/cli is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.
6
-
7
- @p0security/cli is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8
-
9
- You should have received a copy of the GNU General Public License along with @p0security/cli. If not, see <https://www.gnu.org/licenses/>.
10
- **/
11
1
  import { Authn } from "../types/identity";
12
2
  import yargs from "yargs";
13
3
  export declare const tracesUrl: (tenant: string) => string;
14
4
  export declare const fetchOrgData: <T>(orgId: string) => Promise<T>;
15
- export declare const fetchAccountInfo: <T>(authn: Authn) => Promise<T>;
16
- export declare const fetchPermissionRequestDetails: <T>(authn: Authn, requestId: string) => Promise<T>;
17
- export declare const fetchIntegrationConfig: <T>(authn: Authn, integration: string) => Promise<T>;
5
+ export declare const fetchAccountInfo: <T>(authn: Authn, debug?: boolean) => Promise<T>;
6
+ export declare const fetchIntegrationConfig: <T>(authn: Authn, integration: string, debug?: boolean) => Promise<T>;
18
7
  export declare const fetchStreamingCommand: <T>(authn: Authn, args: yargs.ArgumentsCamelCase, argv: string[], debug?: boolean) => AsyncGenerator<Awaited<NonNullable<T>>, void, unknown>;
19
- export declare const fetchCommand: <T>(authn: Authn, args: yargs.ArgumentsCamelCase, argv: string[]) => Promise<T>;
8
+ export declare const fetchCommand: <T>(authn: Authn, args: yargs.ArgumentsCamelCase<{
9
+ debug?: boolean;
10
+ }>, argv: string[]) => Promise<T>;
20
11
  /** Special admin 'ls' command that can retrieve results for all users. Requires 'owner' permission. */
21
- export declare const fetchAdminLsCommand: <T>(authn: Authn, args: yargs.ArgumentsCamelCase, argv: string[]) => Promise<T>;
12
+ export declare const fetchAdminLsCommand: <T>(authn: Authn, args: yargs.ArgumentsCamelCase<{
13
+ debug?: boolean;
14
+ }>, argv: string[]) => Promise<T>;
22
15
  export declare const submitPublicKey: <T>(authn: Authn, args: {
23
16
  publicKey: string;
24
17
  requestId: string;
25
- }) => Promise<T>;
18
+ }, debug?: boolean) => Promise<T>;
26
19
  export declare const certificateSigningRequest: (authn: Authn, args: {
27
20
  publicKey: string;
28
21
  requestId: string;