@p0security/cli 0.17.0 → 0.17.2

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 (387) hide show
  1. package/CONTRIBUTING.md +7 -0
  2. package/README.md +3 -3
  3. package/build/dist/commands/__tests__/grant.test.js.map +1 -0
  4. package/{dist → build/dist}/commands/__tests__/login.test.js +98 -20
  5. package/build/dist/commands/__tests__/login.test.js.map +1 -0
  6. package/build/dist/commands/__tests__/ls.test.js.map +1 -0
  7. package/build/dist/commands/__tests__/request.test.js.map +1 -0
  8. package/build/dist/commands/__tests__/ssh.test.js.map +1 -0
  9. package/build/dist/commands/allow.js.map +1 -0
  10. package/build/dist/commands/aws/__tests__/__input__/saml-response.js.map +1 -0
  11. package/build/dist/commands/aws/__tests__/__input__/sts-response.js.map +1 -0
  12. package/build/dist/commands/aws/__tests__/role.test.js.map +1 -0
  13. package/build/dist/commands/aws/files.js.map +1 -0
  14. package/build/dist/commands/aws/index.js.map +1 -0
  15. package/{dist → build/dist}/commands/aws/permission-set.js +3 -24
  16. package/build/dist/commands/aws/permission-set.js.map +1 -0
  17. package/{dist → build/dist}/commands/aws/role.js +3 -25
  18. package/build/dist/commands/aws/role.js.map +1 -0
  19. package/{dist/plugins/azure → build/dist/commands/aws}/types.js.map +1 -1
  20. package/build/dist/commands/aws/util.d.ts +2 -0
  21. package/build/dist/commands/aws/util.js +42 -0
  22. package/build/dist/commands/aws/util.js.map +1 -0
  23. package/build/dist/commands/grant.js.map +1 -0
  24. package/build/dist/commands/index.js.map +1 -0
  25. package/build/dist/commands/kubeconfig.js.map +1 -0
  26. package/{dist → build/dist}/commands/login.d.ts +3 -1
  27. package/{dist → build/dist}/commands/login.js +67 -18
  28. package/build/dist/commands/login.js.map +1 -0
  29. package/build/dist/commands/ls.js.map +1 -0
  30. package/build/dist/commands/request.js.map +1 -0
  31. package/{dist → build/dist}/commands/scp.js +1 -1
  32. package/build/dist/commands/scp.js.map +1 -0
  33. package/build/dist/commands/shared/index.js.map +1 -0
  34. package/build/dist/commands/shared/request.js.map +1 -0
  35. package/build/dist/commands/shared/ssh.js.map +1 -0
  36. package/build/dist/commands/ssh-keygen.js.map +1 -0
  37. package/{dist → build/dist}/commands/ssh-proxy.js +1 -1
  38. package/build/dist/commands/ssh-proxy.js.map +1 -0
  39. package/{dist → build/dist}/commands/ssh-resolve.js +4 -1
  40. package/build/dist/commands/ssh-resolve.js.map +1 -0
  41. package/{dist → build/dist}/commands/ssh.js +1 -1
  42. package/build/dist/commands/ssh.js.map +1 -0
  43. package/build/dist/common/__mocks__/keys.js.map +1 -0
  44. package/build/dist/common/auth/oidc.js.map +1 -0
  45. package/{dist → build/dist}/common/auth/server.js +31 -3
  46. package/build/dist/common/auth/server.js.map +1 -0
  47. package/build/dist/common/destination.js.map +1 -0
  48. package/build/dist/common/fetch.js.map +1 -0
  49. package/build/dist/common/install.js.map +1 -0
  50. package/build/dist/common/keys.js.map +1 -0
  51. package/build/dist/common/mime.js.map +1 -0
  52. package/build/dist/common/retry.js.map +1 -0
  53. package/build/dist/common/subprocess.js.map +1 -0
  54. package/build/dist/common/xml.js.map +1 -0
  55. package/build/dist/drivers/__mocks__/stdio.js.map +1 -0
  56. package/build/dist/drivers/ansi.js.map +1 -0
  57. package/build/dist/drivers/api.js.map +1 -0
  58. package/build/dist/drivers/auth/__mocks__/index.js.map +1 -0
  59. package/{dist → build/dist}/drivers/auth/index.d.ts +4 -1
  60. package/{dist → build/dist}/drivers/auth/index.js +25 -17
  61. package/build/dist/drivers/auth/index.js.map +1 -0
  62. package/build/dist/drivers/auth/path.js.map +1 -0
  63. package/build/dist/drivers/config.js.map +1 -0
  64. package/build/dist/drivers/env.js.map +1 -0
  65. package/{dist → build/dist}/drivers/firestore.d.ts +8 -12
  66. package/build/dist/drivers/firestore.js +137 -0
  67. package/build/dist/drivers/firestore.js.map +1 -0
  68. package/build/dist/drivers/stdio.js.map +1 -0
  69. package/build/dist/drivers/util.d.ts +11 -0
  70. package/build/dist/drivers/util.js +15 -0
  71. package/build/dist/drivers/util.js.map +1 -0
  72. package/build/dist/index.js.map +1 -0
  73. package/build/dist/middlewares/version.js.map +1 -0
  74. package/build/dist/plugins/__mocks__/login.js.map +1 -0
  75. package/build/dist/plugins/aws/__mocks__/assumeRole.js.map +1 -0
  76. package/build/dist/plugins/aws/__tests__/utils.test.js.map +1 -0
  77. package/build/dist/plugins/aws/api.js.map +1 -0
  78. package/build/dist/plugins/aws/assumeRole.js.map +1 -0
  79. package/build/dist/plugins/aws/config.js.map +1 -0
  80. package/build/dist/plugins/aws/idc/index.js.map +1 -0
  81. package/build/dist/plugins/aws/ssh.js.map +1 -0
  82. package/build/dist/plugins/aws/ssm/install.js.map +1 -0
  83. package/{dist/commands → build/dist/plugins}/aws/types.js.map +1 -1
  84. package/build/dist/plugins/aws/utils.js.map +1 -0
  85. package/build/dist/plugins/azure/auth.js.map +1 -0
  86. package/build/dist/plugins/azure/install.js.map +1 -0
  87. package/build/dist/plugins/azure/keygen.js.map +1 -0
  88. package/build/dist/plugins/azure/ssh.js.map +1 -0
  89. package/build/dist/plugins/azure/tunnel.js.map +1 -0
  90. package/{dist/plugins/google → build/dist/plugins/azure}/types.js.map +1 -1
  91. package/build/dist/plugins/email/login.d.ts +4 -0
  92. package/build/dist/plugins/email/login.js +51 -0
  93. package/build/dist/plugins/email/login.js.map +1 -0
  94. package/build/dist/plugins/google/install.js.map +1 -0
  95. package/{dist → build/dist}/plugins/google/login.js +2 -2
  96. package/build/dist/plugins/google/login.js.map +1 -0
  97. package/build/dist/plugins/google/ssh-key.js.map +1 -0
  98. package/build/dist/plugins/google/ssh.js.map +1 -0
  99. package/build/dist/plugins/google/types.js.map +1 -0
  100. package/build/dist/plugins/kubeconfig/index.js.map +1 -0
  101. package/build/dist/plugins/kubeconfig/install.js.map +1 -0
  102. package/build/dist/plugins/kubeconfig/types.js.map +1 -0
  103. package/{dist → build/dist}/plugins/login.js +9 -7
  104. package/build/dist/plugins/login.js.map +1 -0
  105. package/build/dist/plugins/oidc/login.js.map +1 -0
  106. package/build/dist/plugins/okta/aws.js.map +1 -0
  107. package/{dist → build/dist}/plugins/okta/login.js +27 -4
  108. package/build/dist/plugins/okta/login.js.map +1 -0
  109. package/build/dist/plugins/ping/login.js.map +1 -0
  110. package/{dist → build/dist}/plugins/ssh/index.d.ts +0 -6
  111. package/{dist → build/dist}/plugins/ssh/index.js +18 -8
  112. package/build/dist/plugins/ssh/index.js.map +1 -0
  113. package/{dist/plugins/aws → build/dist/plugins/ssh}/types.js.map +1 -1
  114. package/build/dist/testing/firestore.js.map +1 -0
  115. package/build/dist/testing/yargs.js.map +1 -0
  116. package/{dist → build/dist}/types/allow.js.map +1 -1
  117. package/build/dist/types/aws/oidc.js.map +1 -0
  118. package/{dist → build/dist}/types/identity.js.map +1 -1
  119. package/build/dist/types/index.js.map +1 -0
  120. package/{dist → build/dist}/types/oidc.d.ts +4 -4
  121. package/{dist → build/dist}/types/oidc.js.map +1 -1
  122. package/{dist → build/dist}/types/org.d.ts +2 -1
  123. package/build/dist/types/org.js.map +1 -0
  124. package/build/dist/types/request.js.map +1 -0
  125. package/build/dist/types/ssh.js.map +1 -0
  126. package/build/dist/util.js.map +1 -0
  127. package/build/tsconfig.tsbuildinfo +1 -0
  128. package/p0 +1 -1
  129. package/package.json +10 -8
  130. package/dist/commands/__tests__/grant.test.js.map +0 -1
  131. package/dist/commands/__tests__/login.test.js.map +0 -1
  132. package/dist/commands/__tests__/ls.test.js.map +0 -1
  133. package/dist/commands/__tests__/request.test.js.map +0 -1
  134. package/dist/commands/__tests__/ssh.test.js.map +0 -1
  135. package/dist/commands/allow.js.map +0 -1
  136. package/dist/commands/aws/__tests__/__input__/saml-response.js.map +0 -1
  137. package/dist/commands/aws/__tests__/__input__/sts-response.js.map +0 -1
  138. package/dist/commands/aws/__tests__/role.test.js.map +0 -1
  139. package/dist/commands/aws/files.js.map +0 -1
  140. package/dist/commands/aws/index.js.map +0 -1
  141. package/dist/commands/aws/permission-set.js.map +0 -1
  142. package/dist/commands/aws/role.js.map +0 -1
  143. package/dist/commands/grant.js.map +0 -1
  144. package/dist/commands/index.js.map +0 -1
  145. package/dist/commands/kubeconfig.js.map +0 -1
  146. package/dist/commands/login.js.map +0 -1
  147. package/dist/commands/ls.js.map +0 -1
  148. package/dist/commands/request.js.map +0 -1
  149. package/dist/commands/scp.js.map +0 -1
  150. package/dist/commands/shared/index.js.map +0 -1
  151. package/dist/commands/shared/request.js.map +0 -1
  152. package/dist/commands/shared/ssh.js.map +0 -1
  153. package/dist/commands/ssh-keygen.js.map +0 -1
  154. package/dist/commands/ssh-proxy.js.map +0 -1
  155. package/dist/commands/ssh-resolve.js.map +0 -1
  156. package/dist/commands/ssh.js.map +0 -1
  157. package/dist/common/__mocks__/keys.js.map +0 -1
  158. package/dist/common/auth/oidc.js.map +0 -1
  159. package/dist/common/auth/server.js.map +0 -1
  160. package/dist/common/destination.js.map +0 -1
  161. package/dist/common/fetch.js.map +0 -1
  162. package/dist/common/install.js.map +0 -1
  163. package/dist/common/keys.js.map +0 -1
  164. package/dist/common/mime.js.map +0 -1
  165. package/dist/common/retry.js.map +0 -1
  166. package/dist/common/subprocess.js.map +0 -1
  167. package/dist/common/xml.js.map +0 -1
  168. package/dist/drivers/__mocks__/stdio.js.map +0 -1
  169. package/dist/drivers/ansi.js.map +0 -1
  170. package/dist/drivers/api.js.map +0 -1
  171. package/dist/drivers/auth/__mocks__/index.js.map +0 -1
  172. package/dist/drivers/auth/index.js.map +0 -1
  173. package/dist/drivers/auth/path.js.map +0 -1
  174. package/dist/drivers/config.js.map +0 -1
  175. package/dist/drivers/env.js.map +0 -1
  176. package/dist/drivers/firestore.js +0 -95
  177. package/dist/drivers/firestore.js.map +0 -1
  178. package/dist/drivers/stdio.js.map +0 -1
  179. package/dist/index.js.map +0 -1
  180. package/dist/middlewares/version.js.map +0 -1
  181. package/dist/plugins/__mocks__/login.js.map +0 -1
  182. package/dist/plugins/aws/__mocks__/assumeRole.js.map +0 -1
  183. package/dist/plugins/aws/__tests__/utils.test.js.map +0 -1
  184. package/dist/plugins/aws/api.js.map +0 -1
  185. package/dist/plugins/aws/assumeRole.js.map +0 -1
  186. package/dist/plugins/aws/config.js.map +0 -1
  187. package/dist/plugins/aws/idc/index.js.map +0 -1
  188. package/dist/plugins/aws/ssh.js.map +0 -1
  189. package/dist/plugins/aws/ssm/install.js.map +0 -1
  190. package/dist/plugins/aws/utils.js.map +0 -1
  191. package/dist/plugins/azure/auth.js.map +0 -1
  192. package/dist/plugins/azure/install.js.map +0 -1
  193. package/dist/plugins/azure/keygen.js.map +0 -1
  194. package/dist/plugins/azure/ssh.js.map +0 -1
  195. package/dist/plugins/azure/tunnel.js.map +0 -1
  196. package/dist/plugins/google/install.js.map +0 -1
  197. package/dist/plugins/google/login.js.map +0 -1
  198. package/dist/plugins/google/ssh-key.js.map +0 -1
  199. package/dist/plugins/google/ssh.js.map +0 -1
  200. package/dist/plugins/kubeconfig/index.js.map +0 -1
  201. package/dist/plugins/kubeconfig/install.js.map +0 -1
  202. package/dist/plugins/kubeconfig/types.js.map +0 -1
  203. package/dist/plugins/login.js.map +0 -1
  204. package/dist/plugins/oidc/login.js.map +0 -1
  205. package/dist/plugins/okta/aws.js.map +0 -1
  206. package/dist/plugins/okta/login.js.map +0 -1
  207. package/dist/plugins/ping/login.js.map +0 -1
  208. package/dist/plugins/ssh/index.js.map +0 -1
  209. package/dist/plugins/ssh/types.js.map +0 -1
  210. package/dist/testing/firestore.js.map +0 -1
  211. package/dist/testing/yargs.js.map +0 -1
  212. package/dist/types/aws/oidc.js.map +0 -1
  213. package/dist/types/index.js.map +0 -1
  214. package/dist/types/org.js.map +0 -1
  215. package/dist/types/request.js.map +0 -1
  216. package/dist/types/ssh.js.map +0 -1
  217. package/dist/util.js.map +0 -1
  218. /package/{dist → build/dist}/commands/__tests__/grant.test.d.ts +0 -0
  219. /package/{dist → build/dist}/commands/__tests__/grant.test.js +0 -0
  220. /package/{dist → build/dist}/commands/__tests__/login.test.d.ts +0 -0
  221. /package/{dist → build/dist}/commands/__tests__/ls.test.d.ts +0 -0
  222. /package/{dist → build/dist}/commands/__tests__/ls.test.js +0 -0
  223. /package/{dist → build/dist}/commands/__tests__/request.test.d.ts +0 -0
  224. /package/{dist → build/dist}/commands/__tests__/request.test.js +0 -0
  225. /package/{dist → build/dist}/commands/__tests__/ssh.test.d.ts +0 -0
  226. /package/{dist → build/dist}/commands/__tests__/ssh.test.js +0 -0
  227. /package/{dist → build/dist}/commands/allow.d.ts +0 -0
  228. /package/{dist → build/dist}/commands/allow.js +0 -0
  229. /package/{dist → build/dist}/commands/aws/__tests__/__input__/saml-response.d.ts +0 -0
  230. /package/{dist → build/dist}/commands/aws/__tests__/__input__/saml-response.js +0 -0
  231. /package/{dist → build/dist}/commands/aws/__tests__/__input__/sts-response.d.ts +0 -0
  232. /package/{dist → build/dist}/commands/aws/__tests__/__input__/sts-response.js +0 -0
  233. /package/{dist → build/dist}/commands/aws/__tests__/role.test.d.ts +0 -0
  234. /package/{dist → build/dist}/commands/aws/__tests__/role.test.js +0 -0
  235. /package/{dist → build/dist}/commands/aws/files.d.ts +0 -0
  236. /package/{dist → build/dist}/commands/aws/files.js +0 -0
  237. /package/{dist → build/dist}/commands/aws/index.d.ts +0 -0
  238. /package/{dist → build/dist}/commands/aws/index.js +0 -0
  239. /package/{dist → build/dist}/commands/aws/permission-set.d.ts +0 -0
  240. /package/{dist → build/dist}/commands/aws/role.d.ts +0 -0
  241. /package/{dist → build/dist}/commands/aws/types.d.ts +0 -0
  242. /package/{dist → build/dist}/commands/aws/types.js +0 -0
  243. /package/{dist → build/dist}/commands/grant.d.ts +0 -0
  244. /package/{dist → build/dist}/commands/grant.js +0 -0
  245. /package/{dist → build/dist}/commands/index.d.ts +0 -0
  246. /package/{dist → build/dist}/commands/index.js +0 -0
  247. /package/{dist → build/dist}/commands/kubeconfig.d.ts +0 -0
  248. /package/{dist → build/dist}/commands/kubeconfig.js +0 -0
  249. /package/{dist → build/dist}/commands/ls.d.ts +0 -0
  250. /package/{dist → build/dist}/commands/ls.js +0 -0
  251. /package/{dist → build/dist}/commands/request.d.ts +0 -0
  252. /package/{dist → build/dist}/commands/request.js +0 -0
  253. /package/{dist → build/dist}/commands/scp.d.ts +0 -0
  254. /package/{dist → build/dist}/commands/shared/index.d.ts +0 -0
  255. /package/{dist → build/dist}/commands/shared/index.js +0 -0
  256. /package/{dist → build/dist}/commands/shared/request.d.ts +0 -0
  257. /package/{dist → build/dist}/commands/shared/request.js +0 -0
  258. /package/{dist → build/dist}/commands/shared/ssh.d.ts +0 -0
  259. /package/{dist → build/dist}/commands/shared/ssh.js +0 -0
  260. /package/{dist → build/dist}/commands/ssh-keygen.d.ts +0 -0
  261. /package/{dist → build/dist}/commands/ssh-keygen.js +0 -0
  262. /package/{dist → build/dist}/commands/ssh-proxy.d.ts +0 -0
  263. /package/{dist → build/dist}/commands/ssh-resolve.d.ts +0 -0
  264. /package/{dist → build/dist}/commands/ssh.d.ts +0 -0
  265. /package/{dist → build/dist}/common/__mocks__/keys.d.ts +0 -0
  266. /package/{dist → build/dist}/common/__mocks__/keys.js +0 -0
  267. /package/{dist → build/dist}/common/auth/oidc.d.ts +0 -0
  268. /package/{dist → build/dist}/common/auth/oidc.js +0 -0
  269. /package/{dist → build/dist}/common/auth/server.d.ts +0 -0
  270. /package/{dist → build/dist}/common/destination.d.ts +0 -0
  271. /package/{dist → build/dist}/common/destination.js +0 -0
  272. /package/{dist → build/dist}/common/fetch.d.ts +0 -0
  273. /package/{dist → build/dist}/common/fetch.js +0 -0
  274. /package/{dist → build/dist}/common/install.d.ts +0 -0
  275. /package/{dist → build/dist}/common/install.js +0 -0
  276. /package/{dist → build/dist}/common/keys.d.ts +0 -0
  277. /package/{dist → build/dist}/common/keys.js +0 -0
  278. /package/{dist → build/dist}/common/mime.d.ts +0 -0
  279. /package/{dist → build/dist}/common/mime.js +0 -0
  280. /package/{dist → build/dist}/common/retry.d.ts +0 -0
  281. /package/{dist → build/dist}/common/retry.js +0 -0
  282. /package/{dist → build/dist}/common/subprocess.d.ts +0 -0
  283. /package/{dist → build/dist}/common/subprocess.js +0 -0
  284. /package/{dist → build/dist}/common/xml.d.ts +0 -0
  285. /package/{dist → build/dist}/common/xml.js +0 -0
  286. /package/{dist → build/dist}/drivers/__mocks__/stdio.d.ts +0 -0
  287. /package/{dist → build/dist}/drivers/__mocks__/stdio.js +0 -0
  288. /package/{dist → build/dist}/drivers/ansi.d.ts +0 -0
  289. /package/{dist → build/dist}/drivers/ansi.js +0 -0
  290. /package/{dist → build/dist}/drivers/api.d.ts +0 -0
  291. /package/{dist → build/dist}/drivers/api.js +0 -0
  292. /package/{dist → build/dist}/drivers/auth/__mocks__/index.d.ts +0 -0
  293. /package/{dist → build/dist}/drivers/auth/__mocks__/index.js +0 -0
  294. /package/{dist → build/dist}/drivers/auth/path.d.ts +0 -0
  295. /package/{dist → build/dist}/drivers/auth/path.js +0 -0
  296. /package/{dist → build/dist}/drivers/config.d.ts +0 -0
  297. /package/{dist → build/dist}/drivers/config.js +0 -0
  298. /package/{dist → build/dist}/drivers/env.d.ts +0 -0
  299. /package/{dist → build/dist}/drivers/env.js +0 -0
  300. /package/{dist → build/dist}/drivers/stdio.d.ts +0 -0
  301. /package/{dist → build/dist}/drivers/stdio.js +0 -0
  302. /package/{dist → build/dist}/index.d.ts +0 -0
  303. /package/{dist → build/dist}/index.js +0 -0
  304. /package/{dist → build/dist}/middlewares/version.d.ts +0 -0
  305. /package/{dist → build/dist}/middlewares/version.js +0 -0
  306. /package/{dist → build/dist}/plugins/__mocks__/login.d.ts +0 -0
  307. /package/{dist → build/dist}/plugins/__mocks__/login.js +0 -0
  308. /package/{dist → build/dist}/plugins/aws/__mocks__/assumeRole.d.ts +0 -0
  309. /package/{dist → build/dist}/plugins/aws/__mocks__/assumeRole.js +0 -0
  310. /package/{dist → build/dist}/plugins/aws/__tests__/utils.test.d.ts +0 -0
  311. /package/{dist → build/dist}/plugins/aws/__tests__/utils.test.js +0 -0
  312. /package/{dist → build/dist}/plugins/aws/api.d.ts +0 -0
  313. /package/{dist → build/dist}/plugins/aws/api.js +0 -0
  314. /package/{dist → build/dist}/plugins/aws/assumeRole.d.ts +0 -0
  315. /package/{dist → build/dist}/plugins/aws/assumeRole.js +0 -0
  316. /package/{dist → build/dist}/plugins/aws/config.d.ts +0 -0
  317. /package/{dist → build/dist}/plugins/aws/config.js +0 -0
  318. /package/{dist → build/dist}/plugins/aws/idc/index.d.ts +0 -0
  319. /package/{dist → build/dist}/plugins/aws/idc/index.js +0 -0
  320. /package/{dist → build/dist}/plugins/aws/ssh.d.ts +0 -0
  321. /package/{dist → build/dist}/plugins/aws/ssh.js +0 -0
  322. /package/{dist → build/dist}/plugins/aws/ssm/install.d.ts +0 -0
  323. /package/{dist → build/dist}/plugins/aws/ssm/install.js +0 -0
  324. /package/{dist → build/dist}/plugins/aws/types.d.ts +0 -0
  325. /package/{dist → build/dist}/plugins/aws/types.js +0 -0
  326. /package/{dist → build/dist}/plugins/aws/utils.d.ts +0 -0
  327. /package/{dist → build/dist}/plugins/aws/utils.js +0 -0
  328. /package/{dist → build/dist}/plugins/azure/auth.d.ts +0 -0
  329. /package/{dist → build/dist}/plugins/azure/auth.js +0 -0
  330. /package/{dist → build/dist}/plugins/azure/install.d.ts +0 -0
  331. /package/{dist → build/dist}/plugins/azure/install.js +0 -0
  332. /package/{dist → build/dist}/plugins/azure/keygen.d.ts +0 -0
  333. /package/{dist → build/dist}/plugins/azure/keygen.js +0 -0
  334. /package/{dist → build/dist}/plugins/azure/ssh.d.ts +0 -0
  335. /package/{dist → build/dist}/plugins/azure/ssh.js +0 -0
  336. /package/{dist → build/dist}/plugins/azure/tunnel.d.ts +0 -0
  337. /package/{dist → build/dist}/plugins/azure/tunnel.js +0 -0
  338. /package/{dist → build/dist}/plugins/azure/types.d.ts +0 -0
  339. /package/{dist → build/dist}/plugins/azure/types.js +0 -0
  340. /package/{dist → build/dist}/plugins/google/install.d.ts +0 -0
  341. /package/{dist → build/dist}/plugins/google/install.js +0 -0
  342. /package/{dist → build/dist}/plugins/google/login.d.ts +0 -0
  343. /package/{dist → build/dist}/plugins/google/ssh-key.d.ts +0 -0
  344. /package/{dist → build/dist}/plugins/google/ssh-key.js +0 -0
  345. /package/{dist → build/dist}/plugins/google/ssh.d.ts +0 -0
  346. /package/{dist → build/dist}/plugins/google/ssh.js +0 -0
  347. /package/{dist → build/dist}/plugins/google/types.d.ts +0 -0
  348. /package/{dist → build/dist}/plugins/google/types.js +0 -0
  349. /package/{dist → build/dist}/plugins/kubeconfig/index.d.ts +0 -0
  350. /package/{dist → build/dist}/plugins/kubeconfig/index.js +0 -0
  351. /package/{dist → build/dist}/plugins/kubeconfig/install.d.ts +0 -0
  352. /package/{dist → build/dist}/plugins/kubeconfig/install.js +0 -0
  353. /package/{dist → build/dist}/plugins/kubeconfig/types.d.ts +0 -0
  354. /package/{dist → build/dist}/plugins/kubeconfig/types.js +0 -0
  355. /package/{dist → build/dist}/plugins/login.d.ts +0 -0
  356. /package/{dist → build/dist}/plugins/oidc/login.d.ts +0 -0
  357. /package/{dist → build/dist}/plugins/oidc/login.js +0 -0
  358. /package/{dist → build/dist}/plugins/okta/aws.d.ts +0 -0
  359. /package/{dist → build/dist}/plugins/okta/aws.js +0 -0
  360. /package/{dist → build/dist}/plugins/okta/login.d.ts +0 -0
  361. /package/{dist → build/dist}/plugins/ping/login.d.ts +0 -0
  362. /package/{dist → build/dist}/plugins/ping/login.js +0 -0
  363. /package/{dist → build/dist}/plugins/ssh/types.d.ts +0 -0
  364. /package/{dist → build/dist}/plugins/ssh/types.js +0 -0
  365. /package/{dist → build/dist}/public/favicon.ico +0 -0
  366. /package/{dist → build/dist}/public/p0.jpg +0 -0
  367. /package/{dist → build/dist}/public/redirect-landing.html +0 -0
  368. /package/{dist → build/dist}/testing/firestore.d.ts +0 -0
  369. /package/{dist → build/dist}/testing/firestore.js +0 -0
  370. /package/{dist → build/dist}/testing/yargs.d.ts +0 -0
  371. /package/{dist → build/dist}/testing/yargs.js +0 -0
  372. /package/{dist → build/dist}/types/allow.d.ts +0 -0
  373. /package/{dist → build/dist}/types/allow.js +0 -0
  374. /package/{dist → build/dist}/types/aws/oidc.d.ts +0 -0
  375. /package/{dist → build/dist}/types/aws/oidc.js +0 -0
  376. /package/{dist → build/dist}/types/identity.d.ts +0 -0
  377. /package/{dist → build/dist}/types/identity.js +0 -0
  378. /package/{dist → build/dist}/types/index.d.ts +0 -0
  379. /package/{dist → build/dist}/types/index.js +0 -0
  380. /package/{dist → build/dist}/types/oidc.js +0 -0
  381. /package/{dist → build/dist}/types/org.js +0 -0
  382. /package/{dist → build/dist}/types/request.d.ts +0 -0
  383. /package/{dist → build/dist}/types/request.js +0 -0
  384. /package/{dist → build/dist}/types/ssh.d.ts +0 -0
  385. /package/{dist → build/dist}/types/ssh.js +0 -0
  386. /package/{dist → build/dist}/util.d.ts +0 -0
  387. /package/{dist → build/dist}/util.js +0 -0
package/CONTRIBUTING.md CHANGED
@@ -21,3 +21,10 @@ follow certain guidelines, in order to ensure usability of the CLI:
21
21
  via `console.log`
22
22
  - Client-usage errors (that is, errors that provide feedback to the user of expected CLI misuse)
23
23
  should be emmitted using `throw <message>`; this prevents a stack trace from being shown
24
+
25
+ ## Single-Artifact Binary
26
+
27
+ To build the CLI as a single-artifact binary, use the `yarn build:sea` script and then
28
+ run `build.sh`. You must have NodeJS version 22 or newer currently installed on your system
29
+ when building the standalone CLI. The resulting binary will be output to `/build/sea`, and can
30
+ be run even if NodeJS is uninstalled on your system. Currently only MacOS is supported.
package/README.md CHANGED
@@ -35,7 +35,7 @@ To learn more about P0, see our [docs](https://docs.p0.dev/).
35
35
 
36
36
  ### Installation
37
37
 
38
- To install the P0 CLI, ensure your `node` version is 20 or higher, then run:
38
+ To install the P0 CLI, ensure your `node` version is 22 or higher, then run:
39
39
 
40
40
  ```
41
41
  npm install -g @p0security/cli
@@ -46,8 +46,8 @@ You can now invoke the CLI by running `p0`.
46
46
  If your node version is incompatible, use `nvm`. E.g.:
47
47
 
48
48
  ```
49
- nvm install 20.14.0
50
- nvm use 20.14.0
49
+ nvm install 22
50
+ nvm use 22
51
51
  ```
52
52
 
53
53
  ### Configuration
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grant.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/grant.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,2CAAiD;AACjD,+CAAqD;AACrD,oCAAwC;AACxC,kDAA0B;AAE1B,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAC/B,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAChC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AAEjC,MAAM,gBAAgB,GAAG,kBAAyB,CAAC;AACnD,MAAM,UAAU,GAAG,cAAmB,CAAC;AACvC,MAAM,UAAU,GAAG,cAAmB,CAAC;AAEvC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAEvC,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,MAAM,OAAO,GACX,sEAAsE,CAAC;QAEzE,SAAS,SAAS;YAChB,gBAAgB,CAAC,iBAAiB,CAAC;gBACjC,EAAE,EAAE,IAAI;gBACR,OAAO,EAAE,WAAW;gBACpB,EAAE,EAAE,QAAQ;gBACZ,aAAa,EAAE,KAAK;gBACpB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;QACL,CAAC;QAED,EAAE,CAAC,+BAA+B,EAAE,GAAS,EAAE;YAC7C,SAAS,EAAE,CAAC;YACZ,MAAM,IAAA,oBAAY,EAAC,IAAA,eAAK,GAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,CAAC;YAChD,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC5C,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,4 +1,27 @@
1
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
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -19,7 +42,10 @@ This file is part of @p0security/cli
19
42
 
20
43
  You should have received a copy of the GNU General Public License along with @p0security/cli. If not, see <https://www.gnu.org/licenses/>.
21
44
  **/
45
+ const auth = __importStar(require("../../drivers/auth"));
46
+ const config = __importStar(require("../../drivers/config"));
22
47
  const env_1 = require("../../drivers/env");
48
+ const stdio_1 = require("../../drivers/stdio");
23
49
  const login_1 = require("../../plugins/login");
24
50
  const firestore_1 = require("../../testing/firestore");
25
51
  const login_2 = require("../login");
@@ -30,18 +56,36 @@ jest.mock("fs/promises");
30
56
  jest.mock("../../drivers/auth/path", () => ({
31
57
  getIdentityFilePath: jest.fn(() => "/dummy/identity/file/path"),
32
58
  }));
33
- jest.mock("../../drivers/config", () => (Object.assign(Object.assign({}, jest.requireActual("../../drivers/config")), { saveConfig: jest.fn(), loadConfig: jest.fn(() => env_1.bootstrapConfig) })));
34
59
  jest.mock("../../drivers/stdio");
35
60
  jest.mock("../../plugins/login");
61
+ const mockIdentity = {
62
+ credential: {
63
+ expires_at: Date.now() * 1e-3 + 60 * 1000,
64
+ },
65
+ org: {
66
+ tenantId: "test-tenant",
67
+ slug: "test-org",
68
+ ssoProvider: "google",
69
+ },
70
+ };
36
71
  const mockSignInWithCredential = auth_1.signInWithCredential;
37
72
  const mockReadFile = promises_1.readFile;
38
73
  const mockWriteFile = promises_1.writeFile;
39
74
  describe("login", () => {
75
+ beforeEach(() => {
76
+ jest.spyOn(config, "loadConfig").mockResolvedValueOnce(env_1.bootstrapConfig);
77
+ jest.spyOn(config, "saveConfig").mockImplementation(jest.fn());
78
+ // do NOT spyOn getContactMessage — you want the real one
79
+ });
80
+ it("prints a friendly error if the org is not provided", () => __awaiter(void 0, void 0, void 0, function* () {
81
+ (0, firestore_1.mockGetDoc)(undefined);
82
+ yield expect((0, login_2.login)({})).rejects.toMatchInlineSnapshot(`"The P0 organization ID is required. Please provide it as an argument or set the P0_ORG environment variable."`);
83
+ }));
40
84
  it("prints a friendly error if the org is not found", () => __awaiter(void 0, void 0, void 0, function* () {
41
85
  (0, firestore_1.mockGetDoc)(undefined);
42
86
  yield expect((0, login_2.login)({ org: "test-org" })).rejects.toMatchInlineSnapshot(`"Could not find organization"`);
43
87
  }));
44
- it("should print a friendly error if unsupported login", () => __awaiter(void 0, void 0, void 0, function* () {
88
+ it("prints a friendly error if unsupported login", () => __awaiter(void 0, void 0, void 0, function* () {
45
89
  (0, firestore_1.mockGetDoc)({
46
90
  slug: "test-org",
47
91
  tenantId: "test-tenant",
@@ -49,6 +93,25 @@ describe("login", () => {
49
93
  });
50
94
  yield expect((0, login_2.login)({ org: "test-org" })).rejects.toMatchInlineSnapshot(`"Unsupported login for your organization"`);
51
95
  }));
96
+ describe("identity file does not exist", () => {
97
+ beforeEach(() => {
98
+ jest.clearAllMocks();
99
+ // Mock `readFile` to throw an "ENOENT" error
100
+ mockReadFile.mockImplementation(() => {
101
+ const error = new Error("File not found");
102
+ error.code = "ENOENT";
103
+ return Promise.reject(error);
104
+ });
105
+ (0, firestore_1.mockGetDoc)({
106
+ slug: "test-org",
107
+ tenantId: "test-tenant",
108
+ ssoProvider: "google",
109
+ });
110
+ });
111
+ it("it should ask user to log in", () => __awaiter(void 0, void 0, void 0, function* () {
112
+ yield expect((0, login_2.login)({ org: "test-org" })).rejects.toMatchInlineSnapshot(`"Please run \`p0 login <organization>\` to use the P0 CLI."`);
113
+ }));
114
+ });
52
115
  describe("organization exists", () => {
53
116
  let credentialData = "";
54
117
  beforeEach(() => {
@@ -83,7 +146,7 @@ describe("login", () => {
83
146
  yield (0, login_2.login)({ org: "test-org" });
84
147
  expect(auth_1.signInWithCredential.mock.calls).toMatchSnapshot();
85
148
  }));
86
- it("returns an error message if firebase cannot determine the user's email", () => __awaiter(void 0, void 0, void 0, function* () {
149
+ it("returns an error message if firebase cannot determine the user email", () => __awaiter(void 0, void 0, void 0, function* () {
87
150
  mockSignInWithCredential.mockResolvedValueOnce({
88
151
  user: {},
89
152
  });
@@ -92,25 +155,40 @@ describe("login", () => {
92
155
  Please contact support@p0.dev for assistance."
93
156
  `);
94
157
  }));
95
- });
96
- describe("identity file does not exist", () => {
97
- beforeEach(() => {
98
- jest.clearAllMocks();
99
- // Mock `readFile` to throw an "ENOENT" error
100
- mockReadFile.mockImplementation(() => {
101
- const error = new Error("File not found");
102
- error.code = "ENOENT";
103
- return Promise.reject(error);
104
- });
105
- (0, firestore_1.mockGetDoc)({
106
- slug: "test-org",
107
- tenantId: "test-tenant",
108
- ssoProvider: "google",
158
+ describe("already logged in", () => {
159
+ beforeEach(() => {
160
+ jest.clearAllMocks();
161
+ jest.spyOn(auth, "loadCredentials").mockResolvedValue(mockIdentity);
162
+ (0, firestore_1.mockGetDoc)({
163
+ slug: "test-org",
164
+ tenantId: "test-tenant",
165
+ ssoProvider: "google",
166
+ });
109
167
  });
168
+ it("no org provided, prints current logged-in status", () => __awaiter(void 0, void 0, void 0, function* () {
169
+ yield (0, login_2.login)({});
170
+ expect(stdio_1.print2).toHaveBeenCalledWith("You are currently logged in to the test-org organization.");
171
+ expect(stdio_1.print2).toHaveBeenCalledWith(expect.stringContaining("The current session expires in "));
172
+ }));
173
+ it("org provided, prints already logged-in status", () => __awaiter(void 0, void 0, void 0, function* () {
174
+ yield (0, login_2.login)({ org: "test-org" });
175
+ expect(stdio_1.print2).toHaveBeenCalledWith("You are already logged in to the test-org organization.");
176
+ expect(stdio_1.print2).toHaveBeenCalledWith(expect.stringContaining("The current session expires in "));
177
+ }));
178
+ it("--refresh provided, need to re-login", () => __awaiter(void 0, void 0, void 0, function* () {
179
+ yield (0, login_2.login)({ org: "test-org", refresh: true });
180
+ expect(stdio_1.print2).toHaveBeenCalledWith("You are now logged in to the test-org organization, and can use the p0 CLI.");
181
+ }));
182
+ it("different org provided, need to re-login", () => __awaiter(void 0, void 0, void 0, function* () {
183
+ (0, firestore_1.mockGetDoc)({
184
+ slug: "other-org",
185
+ tenantId: "other-tenant",
186
+ ssoProvider: "google",
187
+ });
188
+ yield (0, login_2.login)({ org: "other-org" });
189
+ expect(stdio_1.print2).toHaveBeenCalledWith("You are now logged in to the other-org organization, and can use the p0 CLI.");
190
+ }));
110
191
  });
111
- it("it should ask user to log in", () => __awaiter(void 0, void 0, void 0, function* () {
112
- yield expect((0, login_2.login)({ org: "test-org" })).rejects.toMatchInlineSnapshot(`"Please run \`p0 login <organization>\` to use the P0 CLI."`);
113
- }));
114
192
  });
115
193
  });
116
194
  //# sourceMappingURL=login.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/login.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ls.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/ls.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,2CAAiD;AACjD,+CAAqD;AACrD,+CAA8C;AAC9C,8BAAkC;AAClC,kDAA0B;AAE1B,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAC/B,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAChC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AACjC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAE5B,MAAM,gBAAgB,GAAG,kBAAyB,CAAC;AACnD,MAAM,UAAU,GAAG,cAAmB,CAAC;AACvC,MAAM,UAAU,GAAG,cAAmB,CAAC;AAEvC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;IAClB,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAEvC,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,MAAM,OAAO,GAAG,oBAAoB,CAAC;QAErC,MAAM,SAAS,GAAG,CAAC,KAAe,EAAE,EAAE,CACpC,gBAAgB,CAAC,iBAAiB,CAAC;YACjC,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,aAAa;YAClB,KAAK;SACN,CAAC,CAAC;QAEL,EAAE,CAAC,4BAA4B,EAAE,GAAS,EAAE;YAC1C,SAAS,CAAC;gBACR,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE;gBAC1D,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;aAC3C,CAAC,CAAC;YACH,MAAM,IAAA,cAAS,EAAC,IAAA,eAAK,GAAE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YACxD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC1D,CAAC,CAAA,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;YACzD,SAAS,CAAC,EAAE,CAAC,CAAC;YACd,MAAM,IAAA,cAAS,EAAC,IAAA,eAAK,GAAE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YACxD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC1D,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,MAAM,OAAO,GAAG,QAAQ,CAAC;QAEzB,SAAS,CAAC,GAAG,EAAE;YACb,gBAAgB,CAAC,iBAAiB,CAAC;gBACjC,KAAK,EAAE;;;;;;;;;;sBAUO;aACf,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,GAAS,EAAE;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAA,eAAO,EACzB,IAAA,cAAS,EAAC,IAAA,eAAK,GAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EACrC,OAAO,CACR,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,CAAC;QAClC,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/request.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssh.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/ssh.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allow.js","sourceRoot":"","sources":["../../../src/commands/allow.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,wCAA8C;AAC9C,0CAA+C;AAC/C,oDAAuD;AACvD,4CAA0C;AAK1C,MAAM,SAAS,GAAG,CAAI,KAAoB,EAAE,EAAE,CAC5C,KAAK;KACF,mBAAmB,CAAC,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC;KACxD,IAAI,CAAC,KAAK,CAAC,CAAC,4HAA4H;KACxI,MAAM,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,sCAAsC;CACjD,CAAC;KACD,MAAM,CAAC,WAAW,EAAE;IACnB,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,EAAc;CACxB,CAAC,CAAC;AAEA,MAAM,YAAY,GAAG,CAAC,KAAiB,EAAE,EAAE,CAChD,KAAK,CAAC,OAAO,CACX,qBAAqB,EACrB,uCAAuC,EACvC,SAAS,EACT,IAAA,2BAAe,EAAC,aAAK,CAAC,CACvB,CAAC;AANS,QAAA,YAAY,gBAMrB;AAEG,MAAM,KAAK,GAAG,CACnB,IAGE,EACF,KAAa,EACuB,EAAE;IACtC,MAAM,aAAa,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,MAAM,IAAA,mBAAY,GAAE,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,IAAA,kBAAY,EAAgB,aAAa,EAAE,IAAI,EAAE;QAClE,OAAO;QACP,GAAG,IAAI,CAAC,SAAS;KAClB,CAAC,CAAC;IAEH,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE;QACxD,IAAA,cAAM,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;KACb;SAAM;QACL,MAAM,IAAI,CAAC;KACZ;AACH,CAAC,CAAA,CAAC;AAnBW,QAAA,KAAK,SAmBhB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saml-response.js","sourceRoot":"","sources":["../../../../../../src/commands/aws/__tests__/__input__/saml-response.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;GASG;AACU,QAAA,YAAY,GAAG;;;;QAIpB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sts-response.js","sourceRoot":"","sources":["../../../../../../src/commands/aws/__tests__/__input__/sts-response.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;GASG;AACU,QAAA,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;8BAuBG,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.test.js","sourceRoot":"","sources":["../../../../../src/commands/aws/__tests__/role.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../src/commands/aws/files.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,yCAA2B;AAC3B,qDAAuC;AACvC,4CAA8B;AAC9B,0DAA6B;AAC7B,8DAA8B;AAE9B,MAAM,eAAe,GAAG,mBAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;AAC3C,QAAA,eAAe,GAAG,mBAAI,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AACvD,QAAA,oBAAoB,GAAG,mBAAI,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAE9E,4FAA4F;AAE5F;;;;;;;GAOG;AACI,MAAM,WAAW,GAAG,CACzB,IAAY,EACqB,EAAE;IACnC,IAAI;QACF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YACzB,OAAO,EAAE,CAAC;SACX;QAED,MAAM,GAAG,CAAC;KACX;AACH,CAAC,CAAA,CAAC;AAbW,QAAA,WAAW,eAatB;AAEF;;;;;;;;;;;;GAYG;AACI,MAAM,kBAAkB,GAAG,CAChC,IAAY,EACZ,GAAQ,EACR,gBAAoC,EACrB,EAAE;IACjB,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAElD,gDAAgD;IAChD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,qBAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE5E,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC,CAAA,CAAC;AAZW,QAAA,kBAAkB,sBAY7B;AAEK,MAAM,uBAAuB,GAAG,CACrC,WAAmB,EACnB,cAA8B,EAC9B,EAAE;IACF,MAAM,WAAW,GAAG,MAAM,IAAA,mBAAW,EAAC,4BAAoB,CAAC,CAAC;IAE5D,WAAW,CAAC,WAAW,CAAC,GAAG;QACzB,iBAAiB,EAAE,cAAc,CAAC,iBAAiB;QACnD,qBAAqB,EAAE,cAAc,CAAC,qBAAqB;QAC3D,iBAAiB,EAAE,cAAc,CAAC,iBAAiB;KACpD,CAAC;IAEF,6EAA6E;IAC7E,MAAM,IAAA,0BAAkB,EAAC,4BAAoB,EAAE,WAAW,EAAE;QAC1D,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAhBW,QAAA,uBAAuB,2BAgBlC;AAEK,MAAM,qBAAqB,GAAG,CACnC,WAAmB,EACnB,aAAkB,EAClB,EAAE;IACF,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAW,EAAC,uBAAe,CAAC,CAAC;IAElD,MAAM,CAAC,WAAW,WAAW,EAAE,CAAC,GAAG,aAAa,CAAC;IAEjD,MAAM,IAAA,0BAAkB,EAAC,uBAAe,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAA,CAAC;AATW,QAAA,qBAAqB,yBAShC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/aws/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,6CAAkD;AAClD,uDAA2D;AAC3D,+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;aACf,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,oDAAoD;QACpD,wCAAwC;QACxC,IAAA,4BAAgB,GAAE,CAAC;QAEnB,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"}
@@ -21,12 +21,11 @@ This file is part of @p0security/cli
21
21
  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
22
  **/
23
23
  const firestore_1 = require("../../drivers/firestore");
24
- const stdio_1 = require("../../drivers/stdio");
25
24
  const config_1 = require("../../plugins/aws/config");
26
25
  const idc_1 = require("../../plugins/aws/idc");
27
26
  const request_1 = require("../shared/request");
27
+ const util_1 = require("./util");
28
28
  const lodash_1 = require("lodash");
29
- const typescript_1 = require("typescript");
30
29
  const permissionSet = (yargs, authn) => yargs.command("permission-set", "Interact with AWS permission sets", (yargs) => yargs.command("assume <permission-set>", "Assume an AWS permission set", (y) => y.positional("permission-set", {
31
30
  type: "string",
32
31
  demandOption: true,
@@ -48,7 +47,8 @@ const oktaAwsAssumePermissionSet = (argv, authn) => __awaiter(void 0, void 0, vo
48
47
  permissionSet,
49
48
  idc: { id: login.identityStoreId, region: login.idcRegion },
50
49
  });
51
- printAwsCredentials(argv, awsCredential);
50
+ const command = `p0 aws${argv.account ? ` --account ${argv.account}` : ""} permission-set assume ${argv.permissionSet}`;
51
+ (0, util_1.printAwsCredentials)(awsCredential, command);
52
52
  });
53
53
  const buildPermissionSetRequestCommand = (argv) => {
54
54
  return Object.assign(Object.assign({}, (0, lodash_1.pick)(argv, "$0", "_")), { arguments: [
@@ -59,25 +59,4 @@ const buildPermissionSetRequestCommand = (argv) => {
59
59
  ...(argv.account ? ["--account", argv.account] : []),
60
60
  ], wait: true });
61
61
  };
62
- /**
63
- * Prints the AWS credentials to the console.
64
- *
65
- * @param awsCredential The AWS credentials to print.
66
- * @param argv The command line arguments.
67
- */
68
- const printAwsCredentials = (argv, awsCredential) => {
69
- var _a;
70
- const isTty = (_a = typescript_1.sys.writeOutputIsTTY) === null || _a === void 0 ? void 0 : _a.call(typescript_1.sys);
71
- if (isTty)
72
- (0, stdio_1.print2)("Execute the following commands:\n");
73
- const indent = isTty ? " " : "";
74
- (0, stdio_1.print1)(Object.entries(awsCredential)
75
- .map(([key, value]) => `${indent}export ${key}=${value}`)
76
- .join("\n"));
77
- if (isTty)
78
- (0, stdio_1.print2)(`
79
- Or, populate these environment variables using BASH command substitution:
80
-
81
- $(p0 aws${argv.account ? ` --account ${argv.account}` : ""} permission-set assume ${argv.permissionSet}) `);
82
- };
83
62
  //# sourceMappingURL=permission-set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-set.js","sourceRoot":"","sources":["../../../../src/commands/aws/permission-set.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,uDAA0D;AAC1D,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,IAAA,2BAAe,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CACnE,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"}
@@ -21,11 +21,10 @@ This file is part of @p0security/cli
21
21
  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
22
  **/
23
23
  const firestore_1 = require("../../drivers/firestore");
24
- const stdio_1 = require("../../drivers/stdio");
25
24
  const aws_1 = require("../../plugins/okta/aws");
26
25
  const request_1 = require("../shared/request");
26
+ const util_1 = require("./util");
27
27
  const lodash_1 = require("lodash");
28
- const typescript_1 = require("typescript");
29
28
  const role = (yargs, authn) => yargs.command("role", "Interact with AWS roles", (yargs) => yargs.command("assume <role>", "Assume an AWS role", (y) => y.positional("role", {
30
29
  type: "string",
31
30
  demandOption: true,
@@ -52,7 +51,8 @@ const oktaAwsAssumeRole = (argv, authn) => __awaiter(void 0, void 0, void 0, fun
52
51
  accountId: argv.account,
53
52
  role: argv.role,
54
53
  });
55
- printAwsCredentials(argv, awsCredential);
54
+ const command = `p0 aws${argv.account ? ` --account ${argv.account}` : ""} role assume ${argv.role}`;
55
+ (0, util_1.printAwsCredentials)(awsCredential, command);
56
56
  });
57
57
  const buildRoleRequestCommand = (argv) => {
58
58
  return Object.assign(Object.assign({}, (0, lodash_1.pick)(argv, "$0", "_")), { arguments: [
@@ -63,26 +63,4 @@ const buildRoleRequestCommand = (argv) => {
63
63
  ...(argv.account ? ["--account", argv.account] : []),
64
64
  ], wait: true });
65
65
  };
66
- /**
67
- * Prints the AWS credentials to the console.
68
- *
69
- * @param argv The command line arguments.
70
- * @param awsCredential The AWS credentials to print.
71
- */
72
- const printAwsCredentials = (argv, awsCredential) => {
73
- var _a;
74
- const isTty = (_a = typescript_1.sys.writeOutputIsTTY) === null || _a === void 0 ? void 0 : _a.call(typescript_1.sys);
75
- if (isTty)
76
- (0, stdio_1.print2)("Execute the following commands:\n");
77
- const indent = isTty ? " " : "";
78
- (0, stdio_1.print1)(Object.entries(awsCredential)
79
- .map(([key, value]) => `${indent}export ${key}=${value}`)
80
- .join("\n"));
81
- if (isTty)
82
- (0, stdio_1.print2)(`
83
- Or, populate these environment variables using BASH command substitution:
84
-
85
- $(p0 aws${argv.account ? ` --account ${argv.account}` : ""} role assume ${argv.role})
86
- `);
87
- };
88
66
  //# sourceMappingURL=role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/commands/aws/role.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,uDAA0D;AAC1D,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,CAAC,OAAO,CACX,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,IAAA,2BAAe,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAC1D,CACF,CAAC;AAjBS,QAAA,IAAI,QAiBb;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 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/plugins/azure/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/commands/aws/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { AwsCredentials } from "../../plugins/aws/types";
2
+ export declare const printAwsCredentials: (awsCredentials: AwsCredentials, command: string) => void;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.printAwsCredentials = void 0;
4
+ /** Copyright © 2024-present P0 Security
5
+
6
+ This file is part of @p0security/cli
7
+
8
+ @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.
9
+
10
+ @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.
11
+
12
+ You should have received a copy of the GNU General Public License along with @p0security/cli. If not, see <https://www.gnu.org/licenses/>.
13
+ **/
14
+ const stdio_1 = require("../../drivers/stdio");
15
+ const typescript_1 = require("typescript");
16
+ const CREDENTIAL_FIELDS = [
17
+ "AWS_ACCESS_KEY_ID",
18
+ "AWS_SECRET_ACCESS_KEY",
19
+ "AWS_SESSION_TOKEN",
20
+ "AWS_SECURITY_TOKEN",
21
+ ];
22
+ const printAwsCredentials = (awsCredentials, command) => {
23
+ var _a;
24
+ const isTty = (_a = typescript_1.sys.writeOutputIsTTY) === null || _a === void 0 ? void 0 : _a.call(typescript_1.sys);
25
+ const indent = isTty ? " " : "";
26
+ if (isTty)
27
+ (0, stdio_1.print2)("Execute the following commands:\n");
28
+ for (const key of CREDENTIAL_FIELDS) {
29
+ const value = awsCredentials[key];
30
+ if (value) {
31
+ (0, stdio_1.print1)(`${indent}export ${key}=${value}`);
32
+ }
33
+ }
34
+ if (isTty) {
35
+ (0, stdio_1.print2)(`
36
+ Or, populate these environment variables using BASH command substitution:
37
+
38
+ $(${command}) `);
39
+ }
40
+ };
41
+ exports.printAwsCredentials = printAwsCredentials;
42
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/commands/aws/util.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;GASG;AACH,+CAAqD;AAErD,2CAAiC;AAEjC,MAAM,iBAAiB,GAA6B;IAClD,mBAAmB;IACnB,uBAAuB;IACvB,mBAAmB;IACnB,oBAAoB;CACrB,CAAC;AAEK,MAAM,mBAAmB,GAAG,CACjC,cAA8B,EAC9B,OAAe,EACf,EAAE;;IACF,MAAM,KAAK,GAAG,MAAA,gBAAG,CAAC,gBAAgB,gEAAI,CAAC;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjC,IAAI,KAAK;QAAE,IAAA,cAAM,EAAC,mCAAmC,CAAC,CAAC;IAEvD,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE;QACnC,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,KAAK,EAAE;YACT,IAAA,cAAM,EAAC,GAAG,MAAM,UAAU,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;SAC3C;KACF;IAED,IAAI,KAAK,EAAE;QACT,IAAA,cAAM,EAAC;;;MAGL,OAAO,IAAI,CAAC,CAAC;KAChB;AACH,CAAC,CAAC;AAtBW,QAAA,mBAAmB,uBAsB9B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grant.js","sourceRoot":"","sources":["../../../src/commands/grant.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;GASG;AACH,oDAAuD;AACvD,8CAAwD;AAGjD,MAAM,YAAY,GAAG,CAAC,KAAiB,EAAE,EAAE,CAChD,KAAK,CAAC,OAAO,CACX,qBAAqB,EACrB,kCAAkC,EAClC,qBAAW,EACX,IAAA,2BAAe,EAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC,CAClC,CAAC;AANS,QAAA,YAAY,gBAMrB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;GASG;AACH,8CAAmD;AACnD,4CAAkD;AAClD,oDAAsD;AACtD,mCAAuC;AACvC,+BAAmC;AACnC,mCAAuC;AACvC,6CAAiD;AACjD,mCAAuC;AACvC,6BAAiC;AACjC,uCAA2C;AAC3C,+BAAmC;AACnC,+BAAmC;AACnC,6CAAgD;AAChD,2CAA8C;AAC9C,+CAAkD;AAClD,2CAAiC;AACjC,kDAA0B;AAC1B,2CAAwC;AAExC,MAAM,QAAQ,GAAG;IACf,gBAAU;IACV,oBAAY;IACZ,oBAAY;IACZ,cAAS;IACT,wBAAc;IACd,oBAAY;IACZ,gBAAU;IACV,2BAAe;IACf,+BAAiB;IACjB,gBAAU;IACV,6BAAgB;IAChB,8BAAiB;CAClB,CAAC;AAEF,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,IAAI,GAAG,IAAA,eAAK,EAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAE1C,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,CAAC;AAEW,QAAA,GAAG,GAAG,QAAQ;KACxB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;KACnC,UAAU,CAAC,sBAAY,CAAC;KACxB,MAAM,EAAE;KACR,aAAa,CAAC,CAAC,CAAC;KAChB,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;IAC9B,IAAI,KAAK,EAAE;QACT,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;KACf;SAAM;QACL,IAAA,cAAM,EAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACrB,IAAA,cAAM,EAAC,KAAK,OAAO,EAAE,CAAC,CAAC;QACvB,IAAA,cAAM,EAAC,KAAK,IAAA,uBAAc,GAAE,EAAE,CAAC,CAAC;KACjC;IACD,gBAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACd,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kubeconfig.js","sourceRoot":"","sources":["../../../src/commands/kubeconfig.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,2CAAiD;AACjD,0CAA0C;AAC1C,0CAA+C;AAC/C,oDAAuD;AACvD,4CAAqD;AACrD,gDAAgD;AAChD,sDAK+B;AAC/B,2DAAiE;AACjE,kCAAyC;AACzC,uCAA6E;AAWtE,MAAM,iBAAiB,GAAG,CAAC,KAAiB,EAAE,EAAE,CACrD,KAAK,CAAC,OAAO,CACX,YAAY,EACZ,sIAAsI,EACtI,CAAC,KAAK,EAAE,EAAE,CACR,KAAK;KACF,MAAM,CAAC,SAAS,EAAE;IACjB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,qDAAqD;CAChE,CAAC;KACD,MAAM,CAAC,UAAU,EAAE;IAClB,IAAI,EAAE,QAAQ;IACd,QAAQ,EACN,kEAAkE;CACrE,CAAC;KACD,MAAM,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EACN,8DAA8D;CACjE,CAAC;KACD,MAAM,CAAC,QAAQ,EAAE;IAChB,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,yBAAyB;CACpC,CAAC;KACD,MAAM,CAAC,oBAAoB,EAAE;IAC5B,IAAI,EAAE,QAAQ;IACd,6BAA6B;IAC7B,QAAQ,EACN,4FAA4F;CAC/F,CAAC,EACN,IAAA,2BAAe,EAAC,gBAAgB,CAAC,CAClC,CAAC;AAjCS,QAAA,iBAAiB,qBAiC1B;AAEJ,MAAM,gBAAgB,GAAG,CACvB,IAAqD,EACrD,EAAE;IACF,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI,IAAI,CAAC,QAAQ,EAAE;QACjB,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACpC;IAED,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAY,GAAE,CAAC;IAEnC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,IAAA,yCAA4B,EACxE,KAAK,EACL,IAAI,CAAC,OAAO,CACb,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,aAAa,CAAC;IAEjE,IAAI,CAAC,CAAC,MAAM,IAAA,0BAAgB,GAAE,CAAC,EAAE;QAC/B,MAAM,0HAA0H,CAAC;KAClI;IAED,yEAAyE;IACzE,MAAM,OAAO,GAAG,MAAM,IAAA,mCAAsB,EAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAE3E,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAY,EAChC,KAAK,EACL,YAAY,EACZ,OAAO,EACP,YAAY,CACb,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,wBAAW,EAAC,SAAS,CAAC,CAAC;IAEvC,mFAAmF;IACnF,qFAAqF;IACrF,MAAM,WAAW,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC;IAEnD,MAAM,IAAA,+BAAuB,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,IAAA,6BAAqB,EAAC,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAEhE,MAAM,oBAAoB,GAAG;QAC3B,KAAK;QACL,mBAAmB;QACnB,QAAQ;QACR,WAAW;QACX,UAAU;QACV,aAAa;QACb,WAAW;QACX,OAAO;KACR,CAAC;IAEF,IAAI;QACF,yEAAyE;QACzE,4DAA4D;QAC5D,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,EAC/B,6EAA6E,EAC7E,IAAA,sBAAc,EACZ,GAAS,EAAE,kDAAC,OAAA,MAAM,IAAA,WAAI,EAAC,KAAK,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA,GAAA,EACpE,GAAG,EAAE,CAAC,IAAI,EACV,CAAC,EACD,IAAI,CACL,CACF,CAAC;QACF,IAAA,cAAM,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;KAC1B;IAAC,OAAO,KAAU,EAAE;QACnB,IAAA,cAAM,EAAC,8CAA8C,CAAC,CAAC;QACvD,MAAM,KAAK,CAAC;KACb;IAED,mGAAmG;IACnG,iGAAiG;IACjG,8BAA8B;IAC9B,IAAI;QACF,MAAM,aAAa,GAAG,MAAM,IAAA,WAAI,EAC9B,SAAS,EACT,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,EACxC,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CAAC;QACF,IAAA,cAAM,EAAC,aAAa,CAAC,MAAM,CAAC,CAAC;KAC9B;IAAC,OAAO,KAAU,EAAE;QACnB,IAAA,cAAM,EAAC,+CAA+C,CAAC,CAAC;QACxD,MAAM,KAAK,CAAC;KACb;IAED,IAAA,cAAM,EACJ,kHAAkH,CACnH,CAAC;IAEF,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;QACjC,IAAA,cAAM,EACJ,GAAG,cAAO,CAAC,MAAM,8FAA8F;YAC7G,2DAA2D,cAAO,CAAC,KAAK,EAAE,CAC7E,CAAC;KACH;AACH,CAAC,CAAA,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAU,EAAE;IAChD,MAAM,SAAS,GAAG,GAAG,CAAC;IACtB,MAAM,WAAW,GACf,8DAA8D;QAC9D,4BAA4B;QAC5B,4BAA4B;QAC5B,+BAA+B,CAAC;IAElC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAE/D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACxC,MAAM,sCAAsC,WAAW,EAAE,CAAC;KAC3D;IAED,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACb,MAAM,iCAAiC,WAAW,EAAE,CAAC;KACtD;IAED,IAAI,IAAA,eAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE;QACrC,OAAO,eAAe,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C;SAAM,IAAI,IAAA,eAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE;QAC5C,OAAO,eAAe,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C;SAAM,IAAI,IAAA,eAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE;QACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,MAAM,sCAAsC,WAAW,EAAE,CAAC;SAC3D;QACD,OAAO,QAAQ,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE;IAED,MAAM,qBAAqB,KAAK,CAAC,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC;AACzD,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,mBAAmB,GAAG,CAAC,QAAgB,EAAQ,EAAE;IACrD,MAAM,SAAS,GAAG,KAAK,CAAC;IAExB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAExC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACxC,MAAM,CACJ,yCAAyC;YACzC,oFAAoF;YACpF,mCAAmC;YACnC,mBAAmB,CACpB,CAAC;KACH;AACH,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,UAAkB,EAAE,EAAE;IACzD,MAAM,eAAe,GAAG,4BAA4B,UAAU,EAAE,CAAC;IACjE,yFAAyF;IACzF,MAAM,GAAG,GAAG,IAAA,gBAAQ,EAAC,UAAU,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC7D,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3D,IAAI,YAAY,KAAK,SAAS,IAAI,CAAC,WAAW,IAAI,CAAC,aAAa,EAAE;QAChE,MAAM,eAAe,CAAC;KACvB;IAED,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;AACxC,CAAC,CAAC"}
@@ -7,8 +7,10 @@ import yargs from "yargs";
7
7
  * Otherwise, the identity file is written to the ~/.p0 directory.
8
8
  */
9
9
  export declare const login: (args: {
10
- org: string;
10
+ org?: string;
11
+ refresh?: boolean;
11
12
  }, options?: {
13
+ debug?: boolean;
12
14
  skipAuthenticate?: boolean;
13
15
  }) => Promise<void>;
14
16
  export declare const loginCommand: (yargs: yargs.Argv<{}>) => yargs.Argv<{
@@ -27,6 +27,23 @@ const firestore_2 = require("../drivers/firestore");
27
27
  const stdio_1 = require("../drivers/stdio");
28
28
  const login_1 = require("../plugins/login");
29
29
  const firestore_3 = require("firebase/firestore");
30
+ const MIN_REMAINING_TOKEN_TIME_SECONDS = 5 * 60;
31
+ const doActualLogin = (orgWithSlug) => __awaiter(void 0, void 0, void 0, function* () {
32
+ var _a;
33
+ const plugin = (_a = orgWithSlug === null || orgWithSlug === void 0 ? void 0 : orgWithSlug.ssoProvider) !== null && _a !== void 0 ? _a : (orgWithSlug.usePassword ? "password" : undefined);
34
+ const loginFn = plugin && login_1.pluginLoginMap[plugin];
35
+ if (!loginFn)
36
+ throw "Unsupported login for your organization";
37
+ const tokenResponse = yield loginFn(orgWithSlug);
38
+ yield (0, auth_1.writeIdentity)(orgWithSlug, tokenResponse);
39
+ });
40
+ const formatTimeLeft = (seconds) => {
41
+ const totalSeconds = Math.max(0, Math.floor(seconds)); // Ensure non-negative and integer
42
+ const h = Math.floor(totalSeconds / 3600);
43
+ const m = Math.floor((totalSeconds % 3600) / 60);
44
+ const s = totalSeconds % 60;
45
+ return `${h}h${m}m${s}s`;
46
+ };
30
47
  /** Logs in the user.
31
48
  *
32
49
  * If the P0_ORG environment variable is set, it is used as the organization name,
@@ -35,29 +52,58 @@ const firestore_3 = require("firebase/firestore");
35
52
  * Otherwise, the identity file is written to the ~/.p0 directory.
36
53
  */
37
54
  const login = (args, options) => __awaiter(void 0, void 0, void 0, function* () {
38
- const org = args.org || process.env.P0_ORG;
55
+ let identity;
56
+ try {
57
+ identity = yield (0, auth_1.loadCredentials)();
58
+ }
59
+ catch (_b) {
60
+ // Ignore error, as no credentials may yet be present
61
+ }
62
+ const tokenTimeRemaining = identity ? (0, auth_1.remainingTokenTime)(identity) : 0;
63
+ let loggedIn = tokenTimeRemaining > MIN_REMAINING_TOKEN_TIME_SECONDS;
64
+ let org = args.org || process.env.P0_ORG;
39
65
  if (!org) {
40
- throw new Error("The P0 organization ID is required. Please provide it as an argument or set the P0_ORG environment variable.");
66
+ if (identity && loggedIn) {
67
+ // If no org is provided, and the user is logged in, use the one from the identity
68
+ org = identity.org.slug;
69
+ (0, stdio_1.print2)(`You are currently logged in to the ${org} organization.`);
70
+ (0, stdio_1.print2)(`The current session expires in ${formatTimeLeft(tokenTimeRemaining)}.`);
71
+ }
72
+ else {
73
+ throw "The P0 organization ID is required. Please provide it as an argument or set the P0_ORG environment variable.";
74
+ }
75
+ }
76
+ else {
77
+ if (identity && loggedIn) {
78
+ if (org !== identity.org.slug || args.refresh) {
79
+ // Force login if user is switching organizations or if --refresh argument is provided
80
+ loggedIn = false;
81
+ }
82
+ else {
83
+ (0, stdio_1.print2)(`You are already logged in to the ${org} organization.`);
84
+ (0, stdio_1.print2)(`The current session expires in ${formatTimeLeft(tokenTimeRemaining)}.`);
85
+ }
86
+ }
87
+ }
88
+ if (!loggedIn) {
89
+ yield (0, config_1.saveConfig)(org);
41
90
  }
42
- yield (0, config_1.saveConfig)(org);
43
91
  yield (0, firestore_1.initializeFirebase)();
44
92
  const orgDoc = yield (0, firestore_3.getDoc)((0, firestore_2.doc)(`orgs/${org}`));
45
93
  const orgData = orgDoc.data();
46
94
  if (!orgData)
47
95
  throw "Could not find organization";
48
96
  const orgWithSlug = Object.assign(Object.assign({}, orgData), { slug: org });
49
- const plugin = orgWithSlug === null || orgWithSlug === void 0 ? void 0 : orgWithSlug.ssoProvider;
50
- const loginFn = login_1.pluginLoginMap[plugin];
51
- if (!loginFn)
52
- throw "Unsupported login for your organization";
53
- const tokenResponse = yield loginFn(orgWithSlug);
54
- yield (0, auth_1.writeIdentity)(orgWithSlug, tokenResponse);
55
- // validate auth
97
+ if (!loggedIn) {
98
+ yield doActualLogin(orgWithSlug);
99
+ }
56
100
  if (!(options === null || options === void 0 ? void 0 : options.skipAuthenticate)) {
57
- yield (0, auth_1.authenticate)();
101
+ yield (0, auth_1.authenticate)({ debug: options === null || options === void 0 ? void 0 : options.debug });
58
102
  yield validateTenantAccess(orgData);
59
103
  }
60
- (0, stdio_1.print2)(`You are now logged in, and can use the p0 CLI.`);
104
+ if (!loggedIn) {
105
+ (0, stdio_1.print2)(`You are now logged in to the ${org} organization, and can use the p0 CLI.`);
106
+ }
61
107
  });
62
108
  exports.login = login;
63
109
  const loginCommand = (yargs) => yargs.command("login [org]", "Log in to p0 using a web browser", (yargs) => yargs
@@ -65,12 +111,15 @@ const loginCommand = (yargs) => yargs.command("login [org]", "Log in to p0 using
65
111
  type: "string",
66
112
  describe: "Your P0 organization ID",
67
113
  })
68
- .check((argv) => {
69
- if (!argv.org && !process.env.P0_ORG) {
70
- throw "The 'org' argument is required if the P0_ORG environment variable is not set.";
71
- }
72
- return true;
73
- }), (0, firestore_1.fsShutdownGuard)(exports.login));
114
+ .option("refresh", {
115
+ type: "boolean",
116
+ describe: "Force re-authentication",
117
+ default: false,
118
+ })
119
+ .option("debug", {
120
+ type: "boolean",
121
+ describe: "Print debug information.",
122
+ }), (0, firestore_1.fsShutdownGuard)((args) => (0, exports.login)(args, args)));
74
123
  exports.loginCommand = loginCommand;
75
124
  const validateTenantAccess = (org) => __awaiter(void 0, void 0, void 0, function* () {
76
125
  try {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/login.ts"],"names":[],"mappings":"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"}