@rockcarver/frodo-cli 0.18.2-9 → 0.19.0

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 (324) hide show
  1. package/CHANGELOG.md +112 -1
  2. package/esm/app.js +4 -1
  3. package/esm/app.js.map +1 -1
  4. package/esm/cli/FrodoCommand.js +133 -0
  5. package/esm/cli/FrodoCommand.js.map +1 -0
  6. package/esm/cli/_template/something-delete.js +9 -15
  7. package/esm/cli/_template/something-delete.js.map +1 -1
  8. package/esm/cli/_template/something-describe.js +9 -15
  9. package/esm/cli/_template/something-describe.js.map +1 -1
  10. package/esm/cli/_template/something-else-delete.js +9 -15
  11. package/esm/cli/_template/something-else-delete.js.map +1 -1
  12. package/esm/cli/_template/something-else-describe.js +9 -15
  13. package/esm/cli/_template/something-else-describe.js.map +1 -1
  14. package/esm/cli/_template/something-else-export.js +9 -15
  15. package/esm/cli/_template/something-else-export.js.map +1 -1
  16. package/esm/cli/_template/something-else-import.js +9 -15
  17. package/esm/cli/_template/something-else-import.js.map +1 -1
  18. package/esm/cli/_template/something-else-list.js +9 -15
  19. package/esm/cli/_template/something-else-list.js.map +1 -1
  20. package/esm/cli/_template/something-else.js +8 -8
  21. package/esm/cli/_template/something-else.js.map +1 -1
  22. package/esm/cli/_template/something-export.js +9 -15
  23. package/esm/cli/_template/something-export.js.map +1 -1
  24. package/esm/cli/_template/something-import.js +9 -15
  25. package/esm/cli/_template/something-import.js.map +1 -1
  26. package/esm/cli/_template/something-list.js +9 -15
  27. package/esm/cli/_template/something-list.js.map +1 -1
  28. package/esm/cli/_template/something-other-delete.js +9 -15
  29. package/esm/cli/_template/something-other-delete.js.map +1 -1
  30. package/esm/cli/_template/something-other-describe.js +9 -15
  31. package/esm/cli/_template/something-other-describe.js.map +1 -1
  32. package/esm/cli/_template/something-other-export.js +9 -15
  33. package/esm/cli/_template/something-other-export.js.map +1 -1
  34. package/esm/cli/_template/something-other-import.js +9 -15
  35. package/esm/cli/_template/something-other-import.js.map +1 -1
  36. package/esm/cli/_template/something-other-list.js +9 -15
  37. package/esm/cli/_template/something-other-list.js.map +1 -1
  38. package/esm/cli/_template/something-other.js +8 -8
  39. package/esm/cli/_template/something-other.js.map +1 -1
  40. package/esm/cli/_template/something.js +9 -10
  41. package/esm/cli/_template/something.js.map +1 -1
  42. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +8 -15
  43. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
  44. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +9 -15
  45. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
  46. package/esm/cli/admin/admin-get-access-token.js +9 -15
  47. package/esm/cli/admin/admin-get-access-token.js.map +1 -1
  48. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +9 -15
  49. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
  50. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +9 -15
  51. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
  52. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +8 -15
  53. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
  54. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +8 -15
  55. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
  56. package/esm/cli/admin/admin-list-static-user-mappings.js +9 -15
  57. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
  58. package/esm/cli/admin/admin-remove-static-user-mapping.js +8 -15
  59. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
  60. package/esm/cli/admin/admin-repair-org-model.js +9 -15
  61. package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
  62. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +9 -15
  63. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
  64. package/esm/cli/admin/admin-show-generic-extension-attributes.js +9 -15
  65. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
  66. package/esm/cli/admin/admin.js +14 -15
  67. package/esm/cli/admin/admin.js.map +1 -1
  68. package/esm/cli/agent/agent-delete.js +8 -15
  69. package/esm/cli/agent/agent-delete.js.map +1 -1
  70. package/esm/cli/agent/agent-describe.js +9 -15
  71. package/esm/cli/agent/agent-describe.js.map +1 -1
  72. package/esm/cli/agent/agent-export.js +8 -15
  73. package/esm/cli/agent/agent-export.js.map +1 -1
  74. package/esm/cli/agent/agent-gateway-delete.js +8 -15
  75. package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
  76. package/esm/cli/agent/agent-gateway-describe.js +9 -15
  77. package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
  78. package/esm/cli/agent/agent-gateway-export.js +8 -15
  79. package/esm/cli/agent/agent-gateway-export.js.map +1 -1
  80. package/esm/cli/agent/agent-gateway-import.js +8 -15
  81. package/esm/cli/agent/agent-gateway-import.js.map +1 -1
  82. package/esm/cli/agent/agent-gateway-list.js +9 -15
  83. package/esm/cli/agent/agent-gateway-list.js.map +1 -1
  84. package/esm/cli/agent/agent-gateway.js +8 -8
  85. package/esm/cli/agent/agent-gateway.js.map +1 -1
  86. package/esm/cli/agent/agent-import.js +8 -15
  87. package/esm/cli/agent/agent-import.js.map +1 -1
  88. package/esm/cli/agent/agent-java-delete.js +8 -15
  89. package/esm/cli/agent/agent-java-delete.js.map +1 -1
  90. package/esm/cli/agent/agent-java-describe.js +9 -15
  91. package/esm/cli/agent/agent-java-describe.js.map +1 -1
  92. package/esm/cli/agent/agent-java-export.js +8 -15
  93. package/esm/cli/agent/agent-java-export.js.map +1 -1
  94. package/esm/cli/agent/agent-java-import.js +8 -15
  95. package/esm/cli/agent/agent-java-import.js.map +1 -1
  96. package/esm/cli/agent/agent-java-list.js +9 -15
  97. package/esm/cli/agent/agent-java-list.js.map +1 -1
  98. package/esm/cli/agent/agent-java.js +8 -8
  99. package/esm/cli/agent/agent-java.js.map +1 -1
  100. package/esm/cli/agent/agent-list.js +9 -15
  101. package/esm/cli/agent/agent-list.js.map +1 -1
  102. package/esm/cli/agent/agent-web-delete.js +8 -15
  103. package/esm/cli/agent/agent-web-delete.js.map +1 -1
  104. package/esm/cli/agent/agent-web-describe.js +9 -15
  105. package/esm/cli/agent/agent-web-describe.js.map +1 -1
  106. package/esm/cli/agent/agent-web-export.js +8 -15
  107. package/esm/cli/agent/agent-web-export.js.map +1 -1
  108. package/esm/cli/agent/agent-web-import.js +8 -15
  109. package/esm/cli/agent/agent-web-import.js.map +1 -1
  110. package/esm/cli/agent/agent-web-list.js +9 -15
  111. package/esm/cli/agent/agent-web-list.js.map +1 -1
  112. package/esm/cli/agent/agent-web.js +8 -8
  113. package/esm/cli/agent/agent-web.js.map +1 -1
  114. package/esm/cli/agent/agent.js +10 -11
  115. package/esm/cli/agent/agent.js.map +1 -1
  116. package/esm/cli/app/app-delete.js +9 -12
  117. package/esm/cli/app/app-delete.js.map +1 -1
  118. package/esm/cli/app/app-describe.js +9 -12
  119. package/esm/cli/app/app-describe.js.map +1 -1
  120. package/esm/cli/app/app-export.js +28 -34
  121. package/esm/cli/app/app-export.js.map +1 -1
  122. package/esm/cli/app/app-import.js +11 -14
  123. package/esm/cli/app/app-import.js.map +1 -1
  124. package/esm/cli/app/app-list.js +11 -14
  125. package/esm/cli/app/app-list.js.map +1 -1
  126. package/esm/cli/app/app.js +8 -10
  127. package/esm/cli/app/app.js.map +1 -1
  128. package/esm/cli/conn/conn-delete.js +5 -5
  129. package/esm/cli/conn/conn-delete.js.map +1 -1
  130. package/esm/cli/conn/conn-describe.js +6 -5
  131. package/esm/cli/conn/conn-describe.js.map +1 -1
  132. package/esm/cli/conn/conn-list.js +6 -8
  133. package/esm/cli/conn/conn-list.js.map +1 -1
  134. package/esm/cli/conn/conn-save.js +72 -0
  135. package/esm/cli/conn/conn-save.js.map +1 -0
  136. package/esm/cli/conn/conn.js +10 -8
  137. package/esm/cli/conn/conn.js.map +1 -1
  138. package/esm/cli/email/email-template-export.js +27 -33
  139. package/esm/cli/email/email-template-export.js.map +1 -1
  140. package/esm/cli/email/email-template-import.js +33 -39
  141. package/esm/cli/email/email-template-import.js.map +1 -1
  142. package/esm/cli/email/email-template-list.js +11 -14
  143. package/esm/cli/email/email-template-list.js.map +1 -1
  144. package/esm/cli/email/email-template.js +6 -6
  145. package/esm/cli/email/email-template.js.map +1 -1
  146. package/esm/cli/email/email.js +2 -2
  147. package/esm/cli/email/email.js.map +1 -1
  148. package/esm/cli/esv/esv-apply.js +9 -12
  149. package/esm/cli/esv/esv-apply.js.map +1 -1
  150. package/esm/cli/esv/esv-secret-create.js +11 -14
  151. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  152. package/esm/cli/esv/esv-secret-delete.js +23 -29
  153. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  154. package/esm/cli/esv/esv-secret-describe.js +11 -14
  155. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  156. package/esm/cli/esv/esv-secret-export.js +9 -12
  157. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  158. package/esm/cli/esv/esv-secret-import.js +9 -12
  159. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  160. package/esm/cli/esv/esv-secret-list.js +11 -14
  161. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  162. package/esm/cli/esv/esv-secret-set.js +11 -14
  163. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  164. package/esm/cli/esv/esv-secret-version-activate.js +18 -24
  165. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  166. package/esm/cli/esv/esv-secret-version-create.js +11 -14
  167. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  168. package/esm/cli/esv/esv-secret-version-deactivate.js +18 -24
  169. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  170. package/esm/cli/esv/esv-secret-version-delete.js +23 -29
  171. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  172. package/esm/cli/esv/esv-secret-version-list.js +11 -14
  173. package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
  174. package/esm/cli/esv/esv-secret-version.js +8 -8
  175. package/esm/cli/esv/esv-secret-version.js.map +1 -1
  176. package/esm/cli/esv/esv-secret.js +11 -11
  177. package/esm/cli/esv/esv-secret.js.map +1 -1
  178. package/esm/cli/esv/esv-variable-create.js +10 -14
  179. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  180. package/esm/cli/esv/esv-variable-delete.js +23 -29
  181. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  182. package/esm/cli/esv/esv-variable-describe.js +11 -14
  183. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  184. package/esm/cli/esv/esv-variable-export.js +9 -12
  185. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  186. package/esm/cli/esv/esv-variable-import.js +9 -12
  187. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  188. package/esm/cli/esv/esv-variable-list.js +11 -14
  189. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  190. package/esm/cli/esv/esv-variable-set.js +19 -26
  191. package/esm/cli/esv/esv-variable-set.js.map +1 -1
  192. package/esm/cli/esv/esv-variable.js +10 -10
  193. package/esm/cli/esv/esv-variable.js.map +1 -1
  194. package/esm/cli/esv/esv.js +5 -6
  195. package/esm/cli/esv/esv.js.map +1 -1
  196. package/esm/cli/idm/idm-count.js +12 -17
  197. package/esm/cli/idm/idm-count.js.map +1 -1
  198. package/esm/cli/idm/idm-export.js +29 -39
  199. package/esm/cli/idm/idm-export.js.map +1 -1
  200. package/esm/cli/idm/idm-import.js +29 -39
  201. package/esm/cli/idm/idm-import.js.map +1 -1
  202. package/esm/cli/idm/idm-list.js +11 -17
  203. package/esm/cli/idm/idm-list.js.map +1 -1
  204. package/esm/cli/idm/idm.js +6 -9
  205. package/esm/cli/idm/idm.js.map +1 -1
  206. package/esm/cli/idp/idp-export.js +11 -15
  207. package/esm/cli/idp/idp-export.js.map +1 -1
  208. package/esm/cli/idp/idp-import.js +32 -38
  209. package/esm/cli/idp/idp-import.js.map +1 -1
  210. package/esm/cli/idp/idp-list.js +9 -13
  211. package/esm/cli/idp/idp-list.js.map +1 -1
  212. package/esm/cli/idp/idp.js +5 -6
  213. package/esm/cli/idp/idp.js.map +1 -1
  214. package/esm/cli/info/info.js +19 -20
  215. package/esm/cli/info/info.js.map +1 -1
  216. package/esm/cli/journey/journey-delete.js +22 -28
  217. package/esm/cli/journey/journey-delete.js.map +1 -1
  218. package/esm/cli/journey/journey-describe.js +12 -19
  219. package/esm/cli/journey/journey-describe.js.map +1 -1
  220. package/esm/cli/journey/journey-disable.js +20 -26
  221. package/esm/cli/journey/journey-disable.js.map +1 -1
  222. package/esm/cli/journey/journey-enable.js +20 -26
  223. package/esm/cli/journey/journey-enable.js.map +1 -1
  224. package/esm/cli/journey/journey-export.js +37 -45
  225. package/esm/cli/journey/journey-export.js.map +1 -1
  226. package/esm/cli/journey/journey-import.js +44 -52
  227. package/esm/cli/journey/journey-import.js.map +1 -1
  228. package/esm/cli/journey/journey-list.js +10 -13
  229. package/esm/cli/journey/journey-list.js.map +1 -1
  230. package/esm/cli/journey/journey-prune.js +9 -13
  231. package/esm/cli/journey/journey-prune.js.map +1 -1
  232. package/esm/cli/journey/journey.js +10 -11
  233. package/esm/cli/journey/journey.js.map +1 -1
  234. package/esm/cli/logging/logs-fetch.js +17 -19
  235. package/esm/cli/logging/logs-fetch.js.map +1 -1
  236. package/esm/cli/logging/logs-list.js +19 -25
  237. package/esm/cli/logging/logs-list.js.map +1 -1
  238. package/esm/cli/logging/logs-tail.js +17 -19
  239. package/esm/cli/logging/logs-tail.js.map +1 -1
  240. package/esm/cli/logging/logs.js +7 -6
  241. package/esm/cli/logging/logs.js.map +1 -1
  242. package/esm/cli/realm/realm-add-custom-domain.js +11 -14
  243. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  244. package/esm/cli/realm/realm-describe.js +10 -14
  245. package/esm/cli/realm/realm-describe.js.map +1 -1
  246. package/esm/cli/realm/realm-list.js +11 -14
  247. package/esm/cli/realm/realm-list.js.map +1 -1
  248. package/esm/cli/realm/realm-remove-custom-domain.js +11 -14
  249. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
  250. package/esm/cli/realm/realm.js +7 -8
  251. package/esm/cli/realm/realm.js.map +1 -1
  252. package/esm/cli/saml/saml-cot-export.js +27 -36
  253. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  254. package/esm/cli/saml/saml-cot-import.js +32 -41
  255. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  256. package/esm/cli/saml/saml-cot-list.js +10 -16
  257. package/esm/cli/saml/saml-cot-list.js.map +1 -1
  258. package/esm/cli/saml/saml-cot.js +6 -6
  259. package/esm/cli/saml/saml-cot.js.map +1 -1
  260. package/esm/cli/saml/saml-delete.js +8 -15
  261. package/esm/cli/saml/saml-delete.js.map +1 -1
  262. package/esm/cli/saml/saml-describe.js +10 -16
  263. package/esm/cli/saml/saml-describe.js.map +1 -1
  264. package/esm/cli/saml/saml-export.js +9 -16
  265. package/esm/cli/saml/saml-export.js.map +1 -1
  266. package/esm/cli/saml/saml-import.js +45 -54
  267. package/esm/cli/saml/saml-import.js.map +1 -1
  268. package/esm/cli/saml/saml-list.js +11 -17
  269. package/esm/cli/saml/saml-list.js.map +1 -1
  270. package/esm/cli/saml/saml-metadata-export.js +21 -30
  271. package/esm/cli/saml/saml-metadata-export.js.map +1 -1
  272. package/esm/cli/saml/saml-metadata.js +4 -4
  273. package/esm/cli/saml/saml-metadata.js.map +1 -1
  274. package/esm/cli/saml/saml.js +9 -10
  275. package/esm/cli/saml/saml.js.map +1 -1
  276. package/esm/cli/script/script-delete.js +9 -12
  277. package/esm/cli/script/script-delete.js.map +1 -1
  278. package/esm/cli/script/script-describe.js +9 -12
  279. package/esm/cli/script/script-describe.js.map +1 -1
  280. package/esm/cli/script/script-export.js +28 -34
  281. package/esm/cli/script/script-export.js.map +1 -1
  282. package/esm/cli/script/script-import.js +10 -13
  283. package/esm/cli/script/script-import.js.map +1 -1
  284. package/esm/cli/script/script-list.js +10 -13
  285. package/esm/cli/script/script-list.js.map +1 -1
  286. package/esm/cli/script/script.js +7 -8
  287. package/esm/cli/script/script.js.map +1 -1
  288. package/esm/cli/service/service-delete.js +10 -16
  289. package/esm/cli/service/service-delete.js.map +1 -1
  290. package/esm/cli/service/service-export.js +12 -17
  291. package/esm/cli/service/service-export.js.map +1 -1
  292. package/esm/cli/service/service-import.js +12 -18
  293. package/esm/cli/service/service-import.js.map +1 -1
  294. package/esm/cli/service/service-list.js +9 -15
  295. package/esm/cli/service/service-list.js.map +1 -1
  296. package/esm/cli/service/service.js +6 -7
  297. package/esm/cli/service/service.js.map +1 -1
  298. package/esm/cli/theme/theme-delete.js +12 -19
  299. package/esm/cli/theme/theme-delete.js.map +1 -1
  300. package/esm/cli/theme/theme-export.js +12 -19
  301. package/esm/cli/theme/theme-export.js.map +1 -1
  302. package/esm/cli/theme/theme-import.js +14 -21
  303. package/esm/cli/theme/theme-import.js.map +1 -1
  304. package/esm/cli/theme/theme-list.js +10 -16
  305. package/esm/cli/theme/theme-list.js.map +1 -1
  306. package/esm/cli/theme/theme.js +6 -7
  307. package/esm/cli/theme/theme.js.map +1 -1
  308. package/esm/ops/ConnectionProfileOps.js +30 -0
  309. package/esm/ops/ConnectionProfileOps.js.map +1 -0
  310. package/esm/ops/IdmOps.js +317 -0
  311. package/esm/ops/IdmOps.js.map +1 -0
  312. package/esm/ops/JourneyOps.js +2 -1
  313. package/esm/ops/JourneyOps.js.map +1 -1
  314. package/esm/ops/ServiceOps.js +20 -20
  315. package/esm/ops/ServiceOps.js.map +1 -1
  316. package/esm/utils/Console.js +15 -25
  317. package/esm/utils/Console.js.map +1 -1
  318. package/package.json +6 -6
  319. package/esm/cli/cmd_common.js +0 -79
  320. package/esm/cli/cmd_common.js.map +0 -1
  321. package/esm/cli/conn/conn-add.js +0 -37
  322. package/esm/cli/conn/conn-add.js.map +0 -1
  323. package/esm/cli/journey/journey-delete.e2e.test_.js.map +0 -1
  324. package/esm/cli/journey/journey-list.e2e.test_.js.map +0 -1
@@ -1,7 +1,7 @@
1
- import { Command, Option } from 'commander';
2
- import { Authenticate, Script, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common';
4
- import { printMessage } from '../../utils/Console';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate, Script } from '@rockcarver/frodo-lib';
4
+ import { printMessage, verboseMessage } from '../../utils/Console';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
@@ -14,8 +14,8 @@ const {
14
14
  const {
15
15
  exportScriptsToFiles
16
16
  } = Script;
17
- const program = new Command('frodo script export');
18
- program.description('Export scripts.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('-n, --script-name <name>', 'Name of the script. If specified, -a and -A are ignored.'))
17
+ const program = new FrodoCommand('frodo script export');
18
+ program.description('Export scripts.').addOption(new Option('-n, --script-name <name>', 'Name of the script. If specified, -a and -A are ignored.'))
19
19
  // .addOption(
20
20
  // new Option(
21
21
  // '-i, --script-id <uuid>',
@@ -26,34 +26,28 @@ program.description('Export scripts.').helpOption('-h, --help', 'Help').showHelp
26
26
  // deprecated option
27
27
  .addOption(new Option('-s, --script <script>', 'DEPRECATED! Use -n/--script-name instead. Name of the script.')).action(
28
28
  // implement command logic inside action handler
29
- async (host, realm, user, password, options) => {
30
- state.default.session.setTenant(host);
31
- state.default.session.setRealm(realm);
32
- state.default.session.setUsername(user);
33
- state.default.session.setPassword(password);
34
- state.default.session.setDeploymentType(options.type);
35
- state.default.session.setAllowInsecureConnection(options.insecure);
36
- if (await getTokens()) {
37
- // export by name
38
- if (options.scriptName || options.script) {
39
- printMessage('Exporting script...');
40
- exportScriptByName(options.scriptName || options.script, options.file);
41
- }
42
- // -a / --all
43
- else if (options.all) {
44
- printMessage('Exporting all scripts to a single file...');
45
- exportScriptsToFile(options.file);
46
- }
47
- // -A / --all-separate
48
- else if (options.allSeparate) {
49
- printMessage('Exporting all scripts to separate files...');
50
- exportScriptsToFiles();
51
- }
52
- // unrecognized combination of options or no options
53
- else {
54
- printMessage('Unrecognized combination of options or no options...', 'error');
55
- program.help();
56
- }
29
+ async (host, realm, user, password, options, command) => {
30
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
31
+ // export by name
32
+ if ((options.scriptName || options.script) && (await getTokens())) {
33
+ verboseMessage('Exporting script...');
34
+ exportScriptByName(options.scriptName || options.script, options.file);
35
+ }
36
+ // -a / --all
37
+ else if (options.all && (await getTokens())) {
38
+ verboseMessage('Exporting all scripts to a single file...');
39
+ exportScriptsToFile(options.file);
40
+ }
41
+ // -A / --all-separate
42
+ else if (options.allSeparate && (await getTokens())) {
43
+ verboseMessage('Exporting all scripts to separate files...');
44
+ exportScriptsToFiles();
45
+ }
46
+ // unrecognized combination of options or no options
47
+ else {
48
+ printMessage('Unrecognized combination of options or no options...', 'error');
49
+ program.help();
50
+ process.exitCode = 1;
57
51
  }
58
52
  }
59
53
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"script-export.js","names":["Command","Option","Authenticate","Script","state","common","printMessage","getTokens","exportScriptByName","exportScriptsToFile","exportScriptsToFiles","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","scriptName","script","file","all","allSeparate","help","parse"],"sources":["cli/script/script-export.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Script, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { exportScriptByName } = Script;\nconst { exportScriptsToFile } = Script;\nconst { exportScriptsToFiles } = Script;\n\nconst program = new Command('frodo script export');\n\nprogram\n .description('Export scripts.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(\n new Option(\n '-n, --script-name <name>',\n 'Name of the script. If specified, -a and -A are ignored.'\n )\n )\n // .addOption(\n // new Option(\n // '-i, --script-id <uuid>',\n // 'Uuid of the script. If specified, -a and -A are ignored.'\n // )\n // )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all scripts to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all scripts to separate files (*.script.json) in the current directory. Ignored with -i or -a.'\n )\n )\n // deprecated option\n .addOption(\n new Option(\n '-s, --script <script>',\n 'DEPRECATED! Use -n/--script-name instead. Name of the script.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n if (await getTokens()) {\n // export by name\n if (options.scriptName || options.script) {\n printMessage('Exporting script...');\n exportScriptByName(\n options.scriptName || options.script,\n options.file\n );\n }\n // -a / --all\n else if (options.all) {\n printMessage('Exporting all scripts to a single file...');\n exportScriptsToFile(options.file);\n }\n // -A / --all-separate\n else if (options.allSeparate) {\n printMessage('Exporting all scripts to separate files...');\n exportScriptsToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n }\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"script-export.js","names":["FrodoCommand","Option","Authenticate","Script","printMessage","verboseMessage","getTokens","exportScriptByName","exportScriptsToFile","exportScriptsToFiles","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","scriptName","script","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/script/script-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Script } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { exportScriptByName } = Script;\nconst { exportScriptsToFile } = Script;\nconst { exportScriptsToFiles } = Script;\n\nconst program = new FrodoCommand('frodo script export');\n\nprogram\n .description('Export scripts.')\n .addOption(\n new Option(\n '-n, --script-name <name>',\n 'Name of the script. If specified, -a and -A are ignored.'\n )\n )\n // .addOption(\n // new Option(\n // '-i, --script-id <uuid>',\n // 'Uuid of the script. If specified, -a and -A are ignored.'\n // )\n // )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all scripts to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all scripts to separate files (*.script.json) in the current directory. Ignored with -i or -a.'\n )\n )\n // deprecated option\n .addOption(\n new Option(\n '-s, --script <script>',\n 'DEPRECATED! Use -n/--script-name instead. Name of the script.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // export by name\n if ((options.scriptName || options.script) && (await getTokens())) {\n verboseMessage('Exporting script...');\n exportScriptByName(options.scriptName || options.script, options.file);\n }\n // -a / --all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all scripts to a single file...');\n exportScriptsToFile(options.file);\n }\n // -A / --all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all scripts to separate files...');\n exportScriptsToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,EAAEC,MAAM,QAAQ,uBAAuB;AAC5D,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAClC,MAAM;EAAEK;AAAmB,CAAC,GAAGJ,MAAM;AACrC,MAAM;EAAEK;AAAoB,CAAC,GAAGL,MAAM;AACtC,MAAM;EAAEM;AAAqB,CAAC,GAAGN,MAAM;AAEvC,MAAMO,OAAO,GAAG,IAAIV,YAAY,CAAC,qBAAqB,CAAC;AAEvDU,OAAO,CACJC,WAAW,CAAC,iBAAiB,CAAC,CAC9BC,SAAS,CACR,IAAIX,MAAM,CACR,0BAA0B,EAC1B,0DAA0D,CAC3D;AAEH;AACA;AACA;AACA;AACA;AACA;AAAA,CACCW,SAAS,CAAC,IAAIX,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,uDAAuD,CACxD,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,uGAAuG,CACxG;AAEH;AAAA,CACCW,SAAS,CACR,IAAIX,MAAM,CACR,uBAAuB,EACvB,+DAA+D,CAChE,CACF,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD;EACA,IAAI,CAACD,OAAO,CAACG,UAAU,IAAIH,OAAO,CAACI,MAAM,MAAM,MAAMhB,SAAS,EAAE,CAAC,EAAE;IACjED,cAAc,CAAC,qBAAqB,CAAC;IACrCE,kBAAkB,CAACW,OAAO,CAACG,UAAU,IAAIH,OAAO,CAACI,MAAM,EAAEJ,OAAO,CAACK,IAAI,CAAC;EACxE;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,KAAK,MAAMlB,SAAS,EAAE,CAAC,EAAE;IAC3CD,cAAc,CAAC,2CAA2C,CAAC;IAC3DG,mBAAmB,CAACU,OAAO,CAACK,IAAI,CAAC;EACnC;EACA;EAAA,KACK,IAAIL,OAAO,CAACO,WAAW,KAAK,MAAMnB,SAAS,EAAE,CAAC,EAAE;IACnDD,cAAc,CAAC,4CAA4C,CAAC;IAC5DI,oBAAoB,EAAE;EACxB;EACA;EAAA,KACK;IACHL,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDM,OAAO,CAACgB,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHlB,OAAO,CAACmB,KAAK,EAAE"}
@@ -1,28 +1,25 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
2
3
  import { Authenticate, Script, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common';
4
- import { printMessage } from '../../utils/Console';
4
+ import { verboseMessage } from '../../utils/Console';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
8
8
  const {
9
9
  importScriptsFromFile
10
10
  } = Script;
11
- const program = new Command('frodo script import');
12
- program.description('Import scripts.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-n, --script-name <name>', 'Name of the script. If specified, -a and -A are ignored.')).addOption(new Option('--re-uuid', 'Re-UUID. Create a new UUID for the script upon import. Use this to duplicate a script or create a new version of the same script. Note that you must also choose a new name using -n/--script-name to avoid import errors.').default(false, 'false'))
11
+ const program = new FrodoCommand('frodo script import');
12
+ program.description('Import scripts.').addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-n, --script-name <name>', 'Name of the script. If specified, -a and -A are ignored.')).addOption(new Option('--re-uuid', 'Re-UUID. Create a new UUID for the script upon import. Use this to duplicate a script or create a new version of the same script. Note that you must also choose a new name using -n/--script-name to avoid import errors.').default(false, 'false'))
13
13
  // deprecated option
14
14
  .addOption(new Option('-s, --script <script>', 'DEPRECATED! Use -n/--script-name instead. Name of the script.')).action(
15
15
  // implement command logic inside action handler
16
- async (host, realm, user, password, options) => {
17
- state.default.session.setTenant(host);
18
- state.default.session.setRealm(realm);
19
- state.default.session.setUsername(user);
20
- state.default.session.setPassword(password);
21
- state.default.session.setDeploymentType(options.type);
22
- state.default.session.setAllowInsecureConnection(options.insecure);
16
+ async (host, realm, user, password, options, command) => {
17
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
23
18
  if (await getTokens()) {
24
- printMessage(`Importing script(s) into realm "${state.default.session.getRealm()}"...`);
19
+ verboseMessage(`Importing script(s) into realm "${state.getRealm()}"...`);
25
20
  importScriptsFromFile(options.scriptName || options.script, options.file, options.reUuid);
21
+ } else {
22
+ process.exitCode = 1;
26
23
  }
27
24
  }
28
25
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"script-import.js","names":["Command","Option","Authenticate","Script","state","common","printMessage","getTokens","importScriptsFromFile","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","getRealm","scriptName","script","file","reUuid","parse"],"sources":["cli/script/script-import.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Script, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst { importScriptsFromFile } = Script;\n\nconst program = new Command('frodo script import');\n\nprogram\n .description('Import scripts.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .addOption(\n new Option(\n '-n, --script-name <name>',\n 'Name of the script. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '--re-uuid',\n 'Re-UUID. Create a new UUID for the script upon import. Use this to duplicate a script or create a new version of the same script. Note that you must also choose a new name using -n/--script-name to avoid import errors.'\n ).default(false, 'false')\n )\n // deprecated option\n .addOption(\n new Option(\n '-s, --script <script>',\n 'DEPRECATED! Use -n/--script-name instead. Name of the script.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n if (await getTokens()) {\n printMessage(\n `Importing script(s) into realm \"${state.default.session.getRealm()}\"...`\n );\n importScriptsFromFile(\n options.scriptName || options.script,\n options.file,\n options.reUuid\n );\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SAASC,YAAY,EAAEC,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACnE,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,YAAY,QAAQ,qBAAqB;AAElD,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAElC,MAAM;EAAEM;AAAsB,CAAC,GAAGL,MAAM;AAExC,MAAMM,OAAO,GAAG,IAAIT,OAAO,CAAC,qBAAqB,CAAC;AAElDS,OAAO,CACJC,WAAW,CAAC,iBAAiB,CAAC,CAC9BC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACR,MAAM,CAACS,aAAa,CAAC,CACjCD,WAAW,CAACR,MAAM,CAACU,aAAa,CAAC,CACjCF,WAAW,CAACR,MAAM,CAACW,YAAY,CAAC,CAChCH,WAAW,CAACR,MAAM,CAACY,gBAAgB,CAAC,CACpCC,SAAS,CAACb,MAAM,CAACc,gBAAgB,CAAC,CAClCD,SAAS,CAACb,MAAM,CAACe,cAAc,CAAC,CAChCF,SAAS,CAAC,IAAIjB,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC,CAAC,CACzEiB,SAAS,CACR,IAAIjB,MAAM,CACR,0BAA0B,EAC1B,0DAA0D,CAC3D,CACF,CACAiB,SAAS,CACR,IAAIjB,MAAM,CACR,WAAW,EACX,4NAA4N,CAC7N,CAACoB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;AAE3B;AAAA,CACCH,SAAS,CACR,IAAIjB,MAAM,CACR,uBAAuB,EACvB,+DAA+D,CAChE,CACF,CACAqB,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,KAAK;EAC9CvB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACC,SAAS,CAACN,IAAI,CAAC;EACrCnB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACE,QAAQ,CAACN,KAAK,CAAC;EACrCpB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACG,WAAW,CAACN,IAAI,CAAC;EACvCrB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACI,WAAW,CAACN,QAAQ,CAAC;EAC3CtB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACK,iBAAiB,CAACN,OAAO,CAACO,IAAI,CAAC;EACrD9B,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACO,0BAA0B,CAACR,OAAO,CAACS,QAAQ,CAAC;EAClE,IAAI,MAAM7B,SAAS,EAAE,EAAE;IACrBD,YAAY,CACT,mCAAkCF,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACS,QAAQ,EAAG,MAAK,CAC1E;IACD7B,qBAAqB,CACnBmB,OAAO,CAACW,UAAU,IAAIX,OAAO,CAACY,MAAM,EACpCZ,OAAO,CAACa,IAAI,EACZb,OAAO,CAACc,MAAM,CACf;EACH;AACF;AACA;AAAA,CACD;;AAEHhC,OAAO,CAACiC,KAAK,EAAE"}
1
+ {"version":3,"file":"script-import.js","names":["FrodoCommand","Option","Authenticate","Script","state","verboseMessage","getTokens","importScriptsFromFile","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","scriptName","script","file","reUuid","process","exitCode","parse"],"sources":["cli/script/script-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Script, state } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst { importScriptsFromFile } = Script;\n\nconst program = new FrodoCommand('frodo script import');\n\nprogram\n .description('Import scripts.')\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .addOption(\n new Option(\n '-n, --script-name <name>',\n 'Name of the script. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '--re-uuid',\n 'Re-UUID. Create a new UUID for the script upon import. Use this to duplicate a script or create a new version of the same script. Note that you must also choose a new name using -n/--script-name to avoid import errors.'\n ).default(false, 'false')\n )\n // deprecated option\n .addOption(\n new Option(\n '-s, --script <script>',\n 'DEPRECATED! Use -n/--script-name instead. Name of the script.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(\n `Importing script(s) into realm \"${state.getRealm()}\"...`\n );\n importScriptsFromFile(\n options.scriptName || options.script,\n options.file,\n options.reUuid\n );\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,EAAEC,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACnE,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAElC,MAAM;EAAEK;AAAsB,CAAC,GAAGJ,MAAM;AAExC,MAAMK,OAAO,GAAG,IAAIR,YAAY,CAAC,qBAAqB,CAAC;AAEvDQ,OAAO,CACJC,WAAW,CAAC,iBAAiB,CAAC,CAC9BC,SAAS,CAAC,IAAIT,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC,CAAC,CACzES,SAAS,CACR,IAAIT,MAAM,CACR,0BAA0B,EAC1B,0DAA0D,CAC3D,CACF,CACAS,SAAS,CACR,IAAIT,MAAM,CACR,WAAW,EACX,4NAA4N,CAC7N,CAACU,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;AAE3B;AAAA,CACCD,SAAS,CACR,IAAIT,MAAM,CACR,uBAAuB,EACvB,+DAA+D,CAChE,CACF,CACAW,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD,IAAI,MAAMZ,SAAS,EAAE,EAAE;IACrBD,cAAc,CACX,mCAAkCD,KAAK,CAACgB,QAAQ,EAAG,MAAK,CAC1D;IACDb,qBAAqB,CACnBU,OAAO,CAACI,UAAU,IAAIJ,OAAO,CAACK,MAAM,EACpCL,OAAO,CAACM,IAAI,EACZN,OAAO,CAACO,MAAM,CACf;EACH,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHlB,OAAO,CAACmB,KAAK,EAAE"}
@@ -1,26 +1,23 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
2
3
  import { Authenticate, Script, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common';
4
- import { printMessage } from '../../utils/Console';
4
+ import { verboseMessage } from '../../utils/Console';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
8
8
  const {
9
9
  listScripts
10
10
  } = Script;
11
- const program = new Command('frodo script list');
12
- program.description('List scripts.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
11
+ const program = new FrodoCommand('frodo script list');
12
+ program.description('List scripts.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
13
13
  // implement command logic inside action handler
14
- async (host, realm, user, password, options) => {
15
- state.default.session.setTenant(host);
16
- state.default.session.setRealm(realm);
17
- state.default.session.setUsername(user);
18
- state.default.session.setPassword(password);
19
- state.default.session.setDeploymentType(options.type);
20
- state.default.session.setAllowInsecureConnection(options.insecure);
14
+ async (host, realm, user, password, options, command) => {
15
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
21
16
  if (await getTokens()) {
22
- printMessage(`Listing scripts in realm "${state.default.session.getRealm()}"...`);
17
+ verboseMessage(`Listing scripts in realm "${state.getRealm()}"...`);
23
18
  await listScripts(options.long);
19
+ } else {
20
+ process.exitCode = 1;
24
21
  }
25
22
  }
26
23
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"script-list.js","names":["Command","Option","Authenticate","Script","state","common","printMessage","getTokens","listScripts","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","getRealm","long","parse"],"sources":["cli/script/script-list.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Script, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { listScripts } = Script;\n\nconst program = new Command('frodo script list');\n\nprogram\n .description('List scripts.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n if (await getTokens()) {\n printMessage(\n `Listing scripts in realm \"${state.default.session.getRealm()}\"...`\n );\n await listScripts(options.long);\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SAASC,YAAY,EAAEC,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACnE,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,YAAY,QAAQ,qBAAqB;AAElD,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAClC,MAAM;EAAEM;AAAY,CAAC,GAAGL,MAAM;AAE9B,MAAMM,OAAO,GAAG,IAAIT,OAAO,CAAC,mBAAmB,CAAC;AAEhDS,OAAO,CACJC,WAAW,CAAC,eAAe,CAAC,CAC5BC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACR,MAAM,CAACS,aAAa,CAAC,CACjCD,WAAW,CAACR,MAAM,CAACU,aAAa,CAAC,CACjCF,WAAW,CAACR,MAAM,CAACW,YAAY,CAAC,CAChCH,WAAW,CAACR,MAAM,CAACY,gBAAgB,CAAC,CACpCC,SAAS,CAACb,MAAM,CAACc,gBAAgB,CAAC,CAClCD,SAAS,CAACb,MAAM,CAACe,cAAc,CAAC,CAChCF,SAAS,CACR,IAAIjB,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACoB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,KAAK;EAC9CvB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACC,SAAS,CAACN,IAAI,CAAC;EACrCnB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACE,QAAQ,CAACN,KAAK,CAAC;EACrCpB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACG,WAAW,CAACN,IAAI,CAAC;EACvCrB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACI,WAAW,CAACN,QAAQ,CAAC;EAC3CtB,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACK,iBAAiB,CAACN,OAAO,CAACO,IAAI,CAAC;EACrD9B,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACO,0BAA0B,CAACR,OAAO,CAACS,QAAQ,CAAC;EAClE,IAAI,MAAM7B,SAAS,EAAE,EAAE;IACrBD,YAAY,CACT,6BAA4BF,KAAK,CAACiB,OAAO,CAACO,OAAO,CAACS,QAAQ,EAAG,MAAK,CACpE;IACD,MAAM7B,WAAW,CAACmB,OAAO,CAACW,IAAI,CAAC;EACjC;AACF;AACA;AAAA,CACD;;AAEH7B,OAAO,CAAC8B,KAAK,EAAE"}
1
+ {"version":3,"file":"script-list.js","names":["FrodoCommand","Option","Authenticate","Script","state","verboseMessage","getTokens","listScripts","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","long","process","exitCode","parse"],"sources":["cli/script/script-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Script, state } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { listScripts } = Script;\n\nconst program = new FrodoCommand('frodo script list');\n\nprogram\n .description('List scripts.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(`Listing scripts in realm \"${state.getRealm()}\"...`);\n await listScripts(options.long);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,EAAEC,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACnE,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAClC,MAAM;EAAEK;AAAY,CAAC,GAAGJ,MAAM;AAE9B,MAAMK,OAAO,GAAG,IAAIR,YAAY,CAAC,mBAAmB,CAAC;AAErDQ,OAAO,CACJC,WAAW,CAAC,eAAe,CAAC,CAC5BC,SAAS,CACR,IAAIT,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACU,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD,IAAI,MAAMZ,SAAS,EAAE,EAAE;IACrBD,cAAc,CAAE,6BAA4BD,KAAK,CAACgB,QAAQ,EAAG,MAAK,CAAC;IACnE,MAAMb,WAAW,CAACU,OAAO,CAACI,IAAI,CAAC;EACjC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHf,OAAO,CAACgB,KAAK,EAAE"}
@@ -1,19 +1,18 @@
1
- import { Command } from 'commander';
1
+ import { FrodoStubCommand } from '../FrodoCommand';
2
2
  import path from 'path';
3
3
  import { fileURLToPath } from 'url';
4
4
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
5
  export default function setup() {
6
- const program = new Command('script').helpOption('-h, --help', 'Help').description('Manage scripts.').executableDir(__dirname);
7
- program.command('list', 'List scripts.').showHelpAfterError();
6
+ const program = new FrodoStubCommand('script').description('Manage scripts.').executableDir(__dirname);
7
+ program.command('list', 'List scripts.');
8
8
 
9
- // program.command('describe', 'Describe scripts.').showHelpAfterError();
9
+ // program.command('describe', 'Describe scripts.');
10
10
 
11
- program.command('export', 'Export scripts.').showHelpAfterError();
12
- program.command('import', 'Import scripts.').showHelpAfterError();
11
+ program.command('export', 'Export scripts.');
12
+ program.command('import', 'Import scripts.');
13
13
 
14
- // program.command('delete', 'Delete scripts.').showHelpAfterError();
14
+ // program.command('delete', 'Delete scripts.');
15
15
 
16
- program.showHelpAfterError();
17
16
  return program;
18
17
  }
19
18
  //# sourceMappingURL=script.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"script.js","names":["Command","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","helpOption","description","executableDir","command","showHelpAfterError"],"sources":["cli/script/script.ts"],"sourcesContent":["import { Command } from 'commander';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new Command('script')\n .helpOption('-h, --help', 'Help')\n .description('Manage scripts.')\n .executableDir(__dirname);\n\n program.command('list', 'List scripts.').showHelpAfterError();\n\n // program.command('describe', 'Describe scripts.').showHelpAfterError();\n\n program.command('export', 'Export scripts.').showHelpAfterError();\n\n program.command('import', 'Import scripts.').showHelpAfterError();\n\n // program.command('delete', 'Delete scripts.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,OAAO,CAAC,QAAQ,CAAC,CAClCU,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,WAAW,CAAC,iBAAiB,CAAC,CAC9BC,aAAa,CAACT,SAAS,CAAC;EAE3BM,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,CAACC,kBAAkB,EAAE;;EAE7D;;EAEAL,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAACC,kBAAkB,EAAE;EAEjEL,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAACC,kBAAkB,EAAE;;EAEjE;;EAEAL,OAAO,CAACK,kBAAkB,EAAE;EAC5B,OAAOL,OAAO;AAChB"}
1
+ {"version":3,"file":"script.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command"],"sources":["cli/script/script.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('script')\n .description('Manage scripts.')\n .executableDir(__dirname);\n\n program.command('list', 'List scripts.');\n\n // program.command('describe', 'Describe scripts.');\n\n program.command('export', 'Export scripts.');\n\n program.command('import', 'Import scripts.');\n\n // program.command('delete', 'Delete scripts.');\n\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,QAAQ,CAAC,CAC3CU,WAAW,CAAC,iBAAiB,CAAC,CAC9BC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC;;EAExC;;EAEAH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC;EAE5CH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC;;EAE5C;;EAEA,OAAOH,OAAO;AAChB"}
@@ -1,27 +1,21 @@
1
- import { Authenticate, state } from '@rockcarver/frodo-lib';
2
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate } from '@rockcarver/frodo-lib';
3
4
  import { deleteService, deleteServices } from '../../ops/ServiceOps.js';
4
- import * as common from '../cmd_common.js';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
8
- const program = new Command('frodo service delete');
9
- program.description('Delete AM services.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-i, --id <id>', 'Id of Service to be deleted.')).addOption(new Option('-a, --all', 'Delete all services. Ignored with -i.')).action(async (host, realm, user, password, options) => {
10
- state.default.session.setTenant(host);
11
- state.default.session.setRealm(realm);
12
- state.default.session.setUsername(user);
13
- state.default.session.setPassword(password);
14
- state.default.session.setDeploymentType(options.type);
15
- state.default.session.setAllowInsecureConnection(options.insecure);
16
- state.default.session.setVerbose(options.verbose);
17
- state.default.session.setDebug(options.debug);
18
- state.default.session.setCurlirize(options.curlirize);
8
+ const program = new FrodoCommand('frodo service delete');
9
+ program.description('Delete AM services.').addOption(new Option('-i, --id <id>', 'Id of Service to be deleted.')).addOption(new Option('-a, --all', 'Delete all services. Ignored with -i.')).addOption(new Option('-g, --global', 'Delete global services.')).action(async (host, realm, user, password, options, command) => {
10
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
11
+ const globalConfig = options.global ?? false;
19
12
  if (options.id && (await getTokens())) {
20
- await deleteService(options.id);
13
+ await deleteService(options.id, globalConfig);
21
14
  } else if (options.all && (await getTokens())) {
22
- await deleteServices();
15
+ await deleteServices(globalConfig);
23
16
  } else {
24
17
  program.help();
18
+ process.exitCode = 1;
25
19
  }
26
20
  });
27
21
  program.parse();
@@ -1 +1 @@
1
- {"version":3,"file":"service-delete.js","names":["Authenticate","state","Command","Option","deleteService","deleteServices","common","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","id","all","help","parse"],"sources":["cli/service/service-delete.ts"],"sourcesContent":["import { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { Command, Option } from 'commander';\nimport { deleteService, deleteServices } from '../../ops/ServiceOps.js';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo service delete');\n\ninterface ServiceDeleteOptions {\n id?: string;\n type?: string;\n insecure?: boolean;\n verbose?: boolean;\n debug?: boolean;\n curlirize?: boolean;\n all?: boolean;\n}\n\nprogram\n .description('Delete AM services.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(new Option('-i, --id <id>', 'Id of Service to be deleted.'))\n .addOption(new Option('-a, --all', 'Delete all services. Ignored with -i.'))\n .action(\n async (\n host: string,\n realm: string,\n user: string,\n password: string,\n options: ServiceDeleteOptions\n ) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n if (options.id && (await getTokens())) {\n await deleteService(options.id);\n } else if (options.all && (await getTokens())) {\n await deleteServices();\n } else {\n program.help();\n }\n }\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,SAASC,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SAASC,aAAa,EAAEC,cAAc,QAAQ,yBAAyB;AACvE,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAE1C,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIN,OAAO,CAAC,sBAAsB,CAAC;AAYnDM,OAAO,CACJC,WAAW,CAAC,qBAAqB,CAAC,CAClCC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACN,MAAM,CAACO,aAAa,CAAC,CACjCD,WAAW,CAACN,MAAM,CAACQ,aAAa,CAAC,CACjCF,WAAW,CAACN,MAAM,CAACS,YAAY,CAAC,CAChCH,WAAW,CAACN,MAAM,CAACU,gBAAgB,CAAC,CACpCC,SAAS,CAACX,MAAM,CAACY,gBAAgB,CAAC,CAClCD,SAAS,CAACX,MAAM,CAACa,cAAc,CAAC,CAChCF,SAAS,CAACX,MAAM,CAACc,aAAa,CAAC,CAC/BH,SAAS,CAACX,MAAM,CAACe,WAAW,CAAC,CAC7BJ,SAAS,CAACX,MAAM,CAACgB,eAAe,CAAC,CACjCL,SAAS,CAAC,IAAId,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC,CAAC,CACtEc,SAAS,CAAC,IAAId,MAAM,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAC3EoB,MAAM,CACL,OACEC,IAAY,EACZC,KAAa,EACbC,IAAY,EACZC,QAAgB,EAChBC,OAA6B,KAC1B;EACH3B,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACC,SAAS,CAACP,IAAI,CAAC;EACrCvB,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACE,QAAQ,CAACP,KAAK,CAAC;EACrCxB,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACG,WAAW,CAACP,IAAI,CAAC;EACvCzB,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACI,WAAW,CAACP,QAAQ,CAAC;EAC3C1B,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACK,iBAAiB,CAACP,OAAO,CAACQ,IAAI,CAAC;EACrDnC,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACO,0BAA0B,CAACT,OAAO,CAACU,QAAQ,CAAC;EAClErC,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACS,UAAU,CAACX,OAAO,CAACY,OAAO,CAAC;EACjDvC,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACW,QAAQ,CAACb,OAAO,CAACc,KAAK,CAAC;EAC7CzC,KAAK,CAAC4B,OAAO,CAACC,OAAO,CAACa,YAAY,CAACf,OAAO,CAACgB,SAAS,CAAC;EACrD,IAAIhB,OAAO,CAACiB,EAAE,KAAK,MAAMtC,SAAS,EAAE,CAAC,EAAE;IACrC,MAAMH,aAAa,CAACwB,OAAO,CAACiB,EAAE,CAAC;EACjC,CAAC,MAAM,IAAIjB,OAAO,CAACkB,GAAG,KAAK,MAAMvC,SAAS,EAAE,CAAC,EAAE;IAC7C,MAAMF,cAAc,EAAE;EACxB,CAAC,MAAM;IACLG,OAAO,CAACuC,IAAI,EAAE;EAChB;AACF,CAAC,CACF;AAEHvC,OAAO,CAACwC,KAAK,EAAE"}
1
+ {"version":3,"file":"service-delete.js","names":["FrodoCommand","Option","Authenticate","deleteService","deleteServices","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","globalConfig","global","id","all","help","process","exitCode","parse"],"sources":["cli/service/service-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { deleteService, deleteServices } from '../../ops/ServiceOps.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo service delete');\n\ninterface ServiceDeleteOptions {\n id?: string;\n type?: string;\n insecure?: boolean;\n verbose?: boolean;\n debug?: boolean;\n curlirize?: boolean;\n all?: boolean;\n global?: boolean;\n}\n\nprogram\n .description('Delete AM services.')\n .addOption(new Option('-i, --id <id>', 'Id of Service to be deleted.'))\n .addOption(new Option('-a, --all', 'Delete all services. Ignored with -i.'))\n .addOption(new Option('-g, --global', 'Delete global services.'))\n .action(\n async (\n host: string,\n realm: string,\n user: string,\n password: string,\n options: ServiceDeleteOptions,\n command\n ) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n\n const globalConfig = options.global ?? false;\n\n if (options.id && (await getTokens())) {\n await deleteService(options.id, globalConfig);\n } else if (options.all && (await getTokens())) {\n await deleteServices(globalConfig);\n } else {\n program.help();\n process.exitCode = 1;\n }\n }\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,aAAa,EAAEC,cAAc,QAAQ,yBAAyB;AAEvE,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIN,YAAY,CAAC,sBAAsB,CAAC;AAaxDM,OAAO,CACJC,WAAW,CAAC,qBAAqB,CAAC,CAClCC,SAAS,CAAC,IAAIP,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC,CAAC,CACtEO,SAAS,CAAC,IAAIP,MAAM,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAC3EO,SAAS,CAAC,IAAIP,MAAM,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC,CAChEQ,MAAM,CACL,OACEC,IAAY,EACZC,KAAa,EACbC,IAAY,EACZC,QAAgB,EAChBC,OAA6B,EAC7BC,OAAO,KACJ;EACHA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EAED,MAAME,YAAY,GAAGH,OAAO,CAACI,MAAM,IAAI,KAAK;EAE5C,IAAIJ,OAAO,CAACK,EAAE,KAAK,MAAMd,SAAS,EAAE,CAAC,EAAE;IACrC,MAAMF,aAAa,CAACW,OAAO,CAACK,EAAE,EAAEF,YAAY,CAAC;EAC/C,CAAC,MAAM,IAAIH,OAAO,CAACM,GAAG,KAAK,MAAMf,SAAS,EAAE,CAAC,EAAE;IAC7C,MAAMD,cAAc,CAACa,YAAY,CAAC;EACpC,CAAC,MAAM;IACLX,OAAO,CAACe,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF,CAAC,CACF;AAEHjB,OAAO,CAACkB,KAAK,EAAE"}
@@ -1,41 +1,36 @@
1
- import { Authenticate, state } from '@rockcarver/frodo-lib';
2
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate } from '@rockcarver/frodo-lib';
3
4
  import { exportServicesToFile, exportServicesToFiles, exportServiceToFile } from '../../ops/ServiceOps.js';
4
5
  import { printMessage, verboseMessage } from '../../utils/Console.js';
5
- import * as common from '../cmd_common.js';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo service export');
10
- program.description('Export AM services.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-i, --service-id <service-id>', 'Service id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the export file.')).addOption(new Option('-a, --all', 'Export all services to a single file.')).addOption(new Option('-A, --all-separate', 'Export all services to separate files (*.service.json) in the current directory. Ignored with -a.')).action(async (host, realm, user, password, options) => {
11
- state.default.session.setTenant(host);
12
- state.default.session.setRealm(realm);
13
- state.default.session.setUsername(user);
14
- state.default.session.setPassword(password);
15
- state.default.session.setDeploymentType(options.type);
16
- state.default.session.setAllowInsecureConnection(options.insecure);
17
- state.default.session.setVerbose(options.verbose);
18
- state.default.session.setDebug(options.debug);
19
- state.default.session.setCurlirize(options.curlirize);
9
+ const program = new FrodoCommand('frodo service export');
10
+ program.description('Export AM services.').addOption(new Option('-i, --service-id <service-id>', 'Service id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the export file.')).addOption(new Option('-a, --all', 'Export all services to a single file.')).addOption(new Option('-A, --all-separate', 'Export all services to separate files (*.service.json) in the current directory. Ignored with -a.')).addOption(new Option('-g, --global', 'Export global services.')).action(async (host, realm, user, password, options, command) => {
11
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
12
+ const globalConfig = options.global ?? false;
13
+
20
14
  // export by name
21
15
  if (options.serviceId && (await getTokens())) {
22
16
  verboseMessage('Exporting service...');
23
- await exportServiceToFile(options.serviceId, options.file);
17
+ await exportServiceToFile(options.serviceId, options.file, globalConfig);
24
18
  }
25
19
  // -a / --all
26
20
  else if (options.all && (await getTokens())) {
27
21
  verboseMessage('Exporting all services to a single file...');
28
- await exportServicesToFile(options.file);
22
+ await exportServicesToFile(options.file, globalConfig);
29
23
  }
30
24
  // -A / --all-separate
31
25
  else if (options.allSeparate && (await getTokens())) {
32
26
  verboseMessage('Exporting all services to separate files...');
33
- await exportServicesToFiles();
27
+ await exportServicesToFiles(globalConfig);
34
28
  }
35
29
  // unrecognized combination of options or no options
36
30
  else {
37
31
  printMessage('Unrecognized combination of options or no options...', 'error');
38
32
  program.help();
33
+ process.exitCode = 1;
39
34
  }
40
35
  }
41
36
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"service-export.js","names":["Authenticate","state","Command","Option","exportServicesToFile","exportServicesToFiles","exportServiceToFile","printMessage","verboseMessage","common","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","serviceId","file","all","allSeparate","help","parse"],"sources":["cli/service/service-export.ts"],"sourcesContent":["import { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { Command, Option } from 'commander';\nimport {\n exportServicesToFile,\n exportServicesToFiles,\n exportServiceToFile,\n} from '../../ops/ServiceOps.js';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo service export');\n\ninterface ServiceExportOptions {\n file?: string;\n all?: boolean;\n serviceId?: string;\n allSeparate?: boolean;\n type?: string;\n insecure?: boolean;\n verbose?: boolean;\n debug?: boolean;\n curlirize?: boolean;\n}\n\nprogram\n .description('Export AM services.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(\n new Option(\n '-i, --service-id <service-id>',\n 'Service id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(new Option('-a, --all', 'Export all services to a single file.'))\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all services to separate files (*.service.json) in the current directory. Ignored with -a.'\n )\n )\n .action(\n async (\n host: string,\n realm: string,\n user: string,\n password: string,\n options: ServiceExportOptions\n ) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n // export by name\n if (options.serviceId && (await getTokens())) {\n verboseMessage('Exporting service...');\n await exportServiceToFile(options.serviceId, options.file);\n }\n // -a / --all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all services to a single file...');\n await exportServicesToFile(options.file);\n }\n // -A / --all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all services to separate files...');\n await exportServicesToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"service-export.js","names":["FrodoCommand","Option","Authenticate","exportServicesToFile","exportServicesToFiles","exportServiceToFile","printMessage","verboseMessage","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","globalConfig","global","serviceId","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/service/service-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport {\n exportServicesToFile,\n exportServicesToFiles,\n exportServiceToFile,\n} from '../../ops/ServiceOps.js';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo service export');\n\ninterface ServiceExportOptions {\n file?: string;\n all?: boolean;\n serviceId?: string;\n allSeparate?: boolean;\n type?: string;\n insecure?: boolean;\n verbose?: boolean;\n debug?: boolean;\n curlirize?: boolean;\n global?: boolean;\n}\n\nprogram\n .description('Export AM services.')\n .addOption(\n new Option(\n '-i, --service-id <service-id>',\n 'Service id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(new Option('-a, --all', 'Export all services to a single file.'))\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all services to separate files (*.service.json) in the current directory. Ignored with -a.'\n )\n )\n .addOption(new Option('-g, --global', 'Export global services.'))\n .action(\n async (\n host: string,\n realm: string,\n user: string,\n password: string,\n options: ServiceExportOptions,\n command\n ) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n\n const globalConfig = options.global ?? false;\n\n // export by name\n if (options.serviceId && (await getTokens())) {\n verboseMessage('Exporting service...');\n await exportServiceToFile(\n options.serviceId,\n options.file,\n globalConfig\n );\n }\n // -a / --all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all services to a single file...');\n await exportServicesToFile(options.file, globalConfig);\n }\n // -A / --all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all services to separate files...');\n await exportServicesToFiles(globalConfig);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SACEC,oBAAoB,EACpBC,qBAAqB,EACrBC,mBAAmB,QACd,yBAAyB;AAChC,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AAErE,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAElC,MAAMO,OAAO,GAAG,IAAIT,YAAY,CAAC,sBAAsB,CAAC;AAexDS,OAAO,CACJC,WAAW,CAAC,qBAAqB,CAAC,CAClCC,SAAS,CACR,IAAIV,MAAM,CACR,+BAA+B,EAC/B,kDAAkD,CACnD,CACF,CACAU,SAAS,CAAC,IAAIV,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEU,SAAS,CAAC,IAAIV,MAAM,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAC3EU,SAAS,CACR,IAAIV,MAAM,CACR,oBAAoB,EACpB,mGAAmG,CACpG,CACF,CACAU,SAAS,CAAC,IAAIV,MAAM,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC,CAChEW,MAAM,CACL,OACEC,IAAY,EACZC,KAAa,EACbC,IAAY,EACZC,QAAgB,EAChBC,OAA6B,EAC7BC,OAAO,KACJ;EACHA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EAED,MAAME,YAAY,GAAGH,OAAO,CAACI,MAAM,IAAI,KAAK;;EAE5C;EACA,IAAIJ,OAAO,CAACK,SAAS,KAAK,MAAMd,SAAS,EAAE,CAAC,EAAE;IAC5CD,cAAc,CAAC,sBAAsB,CAAC;IACtC,MAAMF,mBAAmB,CACvBY,OAAO,CAACK,SAAS,EACjBL,OAAO,CAACM,IAAI,EACZH,YAAY,CACb;EACH;EACA;EAAA,KACK,IAAIH,OAAO,CAACO,GAAG,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IAC3CD,cAAc,CAAC,4CAA4C,CAAC;IAC5D,MAAMJ,oBAAoB,CAACc,OAAO,CAACM,IAAI,EAAEH,YAAY,CAAC;EACxD;EACA;EAAA,KACK,IAAIH,OAAO,CAACQ,WAAW,KAAK,MAAMjB,SAAS,EAAE,CAAC,EAAE;IACnDD,cAAc,CAAC,6CAA6C,CAAC;IAC7D,MAAMH,qBAAqB,CAACgB,YAAY,CAAC;EAC3C;EACA;EAAA,KACK;IACHd,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDG,OAAO,CAACiB,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHnB,OAAO,CAACoB,KAAK,EAAE"}
@@ -1,49 +1,43 @@
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
1
3
  import { Authenticate, state } from '@rockcarver/frodo-lib';
2
- import { Command, Option } from 'commander';
3
4
  import { importFirstServiceFromFile, importServiceFromFile, importServicesFromFile, importServicesFromFiles } from '../../ops/ServiceOps.js';
4
5
  import { printMessage, verboseMessage } from '../../utils/Console.js';
5
- import * as common from '../cmd_common.js';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo service import');
10
- program.description('Import AM services.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-i, --service-id <service-id>', 'Service id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import SAML Entity(s) from. Ignored with -A.')).addOption(new Option('-a, --all', 'Import all services from a single file.')).addOption(new Option('-C, --clean', 'Remove existing service(s) before importing.')).addOption(new Option('-A, --all-separate', 'Import all services from separate files <id>.service.json.')).addOption(new Option('-D, --directory <directory>', 'Working directory.')).action(async (host, realm, user, password, options) => {
11
- state.default.session.setTenant(host);
12
- state.default.session.setRealm(realm);
13
- state.default.session.setUsername(user);
14
- state.default.session.setPassword(password);
15
- state.default.session.setDeploymentType(options.type);
16
- state.default.session.setAllowInsecureConnection(options.insecure);
17
- state.default.session.setVerbose(options.verbose);
18
- state.default.session.setDebug(options.debug);
19
- state.default.session.setCurlirize(options.curlirize);
20
- state.default.session.setDirectory(options.directory || '.');
9
+ const program = new FrodoCommand('frodo service import');
10
+ program.description('Import AM services.').addOption(new Option('-i, --service-id <service-id>', 'Service id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import SAML Entity(s) from. Ignored with -A.')).addOption(new Option('-a, --all', 'Import all services from a single file.')).addOption(new Option('-C, --clean', 'Remove existing service(s) before importing.')).addOption(new Option('-A, --all-separate', 'Import all services from separate files <id>.service.json.')).addOption(new Option('-D, --directory <directory>', 'Working directory.')).addOption(new Option('-g, --global', 'Import global services.')).action(async (host, realm, user, password, options, command) => {
11
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
12
+ state.setDirectory(options.directory || '.');
21
13
  const clean = options.clean ?? false;
14
+ const globalConfig = options.global ?? false;
22
15
 
23
16
  // import by id
24
17
  if (options.serviceId && options.file && (await getTokens())) {
25
18
  verboseMessage('Importing service...');
26
- await importServiceFromFile(options.serviceId, options.file, clean);
19
+ await importServiceFromFile(options.serviceId, options.file, clean, globalConfig);
27
20
  }
28
21
  // -a / --all
29
22
  else if (options.all && options.file && (await getTokens())) {
30
23
  verboseMessage('Importing all services from a single file...');
31
- await importServicesFromFile(options.file, clean);
24
+ await importServicesFromFile(options.file, clean, globalConfig);
32
25
  }
33
26
  // -A / --all-separate
34
27
  else if (options.allSeparate && (await getTokens())) {
35
28
  verboseMessage('Importing all services from separate files...');
36
- await importServicesFromFiles(clean);
29
+ await importServicesFromFiles(clean, globalConfig);
37
30
  }
38
31
  // import file
39
32
  else if (options.file && (await getTokens())) {
40
33
  verboseMessage('Importing service...');
41
- await importFirstServiceFromFile(options.file, clean);
34
+ await importFirstServiceFromFile(options.file, clean, globalConfig);
42
35
  }
43
36
  // unrecognized combination of options or no options
44
37
  else {
45
38
  printMessage('Unrecognized combination of options or no options...', 'error');
46
39
  program.help();
40
+ process.exitCode = 1;
47
41
  }
48
42
  }
49
43
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"service-import.js","names":["Authenticate","state","Command","Option","importFirstServiceFromFile","importServiceFromFile","importServicesFromFile","importServicesFromFiles","printMessage","verboseMessage","common","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","setDirectory","directory","clean","serviceId","file","all","allSeparate","help","parse"],"sources":["cli/service/service-import.ts"],"sourcesContent":["import { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { Command, Option } from 'commander';\nimport {\n importFirstServiceFromFile,\n importServiceFromFile,\n importServicesFromFile,\n importServicesFromFiles,\n} from '../../ops/ServiceOps.js';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo service import');\n\ninterface ServiceImportOptions {\n file?: string;\n all?: boolean;\n serviceId?: string;\n allSeparate?: boolean;\n type?: string;\n insecure?: boolean;\n clean?: boolean;\n directory?: string;\n verbose?: boolean;\n debug?: boolean;\n curlirize?: boolean;\n}\n\nprogram\n .description('Import AM services.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(\n new Option(\n '-i, --service-id <service-id>',\n 'Service id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import SAML Entity(s) from. Ignored with -A.'\n )\n )\n .addOption(new Option('-a, --all', 'Import all services from a single file.'))\n .addOption(\n new Option('-C, --clean', 'Remove existing service(s) before importing.')\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all services from separate files <id>.service.json.'\n )\n )\n .addOption(new Option('-D, --directory <directory>', 'Working directory.'))\n .action(\n async (\n host: string,\n realm: string,\n user: string,\n password: string,\n options: ServiceImportOptions\n ) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n state.default.session.setDirectory(options.directory || '.');\n\n const clean = options.clean ?? false;\n\n // import by id\n if (options.serviceId && options.file && (await getTokens())) {\n verboseMessage('Importing service...');\n await importServiceFromFile(options.serviceId, options.file, clean);\n }\n // -a / --all\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage('Importing all services from a single file...');\n await importServicesFromFile(options.file, clean);\n }\n // -A / --all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Importing all services from separate files...');\n await importServicesFromFiles(clean);\n }\n // import file\n else if (options.file && (await getTokens())) {\n verboseMessage('Importing service...');\n await importFirstServiceFromFile(options.file, clean);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"service-import.js","names":["FrodoCommand","Option","Authenticate","state","importFirstServiceFromFile","importServiceFromFile","importServicesFromFile","importServicesFromFiles","printMessage","verboseMessage","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","setDirectory","directory","clean","globalConfig","global","serviceId","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/service/service-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport {\n importFirstServiceFromFile,\n importServiceFromFile,\n importServicesFromFile,\n importServicesFromFiles,\n} from '../../ops/ServiceOps.js';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo service import');\n\ninterface ServiceImportOptions {\n file?: string;\n all?: boolean;\n serviceId?: string;\n allSeparate?: boolean;\n type?: string;\n insecure?: boolean;\n clean?: boolean;\n directory?: string;\n verbose?: boolean;\n debug?: boolean;\n curlirize?: boolean;\n global?: boolean;\n}\n\nprogram\n .description('Import AM services.')\n .addOption(\n new Option(\n '-i, --service-id <service-id>',\n 'Service id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import SAML Entity(s) from. Ignored with -A.'\n )\n )\n .addOption(new Option('-a, --all', 'Import all services from a single file.'))\n .addOption(\n new Option('-C, --clean', 'Remove existing service(s) before importing.')\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all services from separate files <id>.service.json.'\n )\n )\n .addOption(new Option('-D, --directory <directory>', 'Working directory.'))\n .addOption(new Option('-g, --global', 'Import global services.'))\n .action(\n async (\n host: string,\n realm: string,\n user: string,\n password: string,\n options: ServiceImportOptions,\n command\n ) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n state.setDirectory(options.directory || '.');\n\n const clean = options.clean ?? false;\n const globalConfig = options.global ?? false;\n\n // import by id\n if (options.serviceId && options.file && (await getTokens())) {\n verboseMessage('Importing service...');\n await importServiceFromFile(\n options.serviceId,\n options.file,\n clean,\n globalConfig\n );\n }\n // -a / --all\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage('Importing all services from a single file...');\n await importServicesFromFile(options.file, clean, globalConfig);\n }\n // -A / --all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Importing all services from separate files...');\n await importServicesFromFiles(clean, globalConfig);\n }\n // import file\n else if (options.file && (await getTokens())) {\n verboseMessage('Importing service...');\n await importFirstServiceFromFile(options.file, clean, globalConfig);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1,25 +1,19 @@
1
- import { Authenticate, state } from '@rockcarver/frodo-lib';
2
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate } from '@rockcarver/frodo-lib';
3
4
  import { listServices } from '../../ops/ServiceOps.js';
4
5
  import { verboseMessage } from '../../utils/Console.js';
5
- import * as common from '../cmd_common.js';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo service list');
10
- program.description('List AM services.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(async (host, realm, user, password, options) => {
11
- state.default.session.setTenant(host);
12
- state.default.session.setRealm(realm);
13
- state.default.session.setUsername(user);
14
- state.default.session.setPassword(password);
15
- state.default.session.setDeploymentType(options.type);
16
- state.default.session.setAllowInsecureConnection(options.insecure);
17
- state.default.session.setVerbose(options.verbose);
18
- state.default.session.setDebug(options.debug);
19
- state.default.session.setCurlirize(options.curlirize);
9
+ const program = new FrodoCommand('frodo service list');
10
+ program.description('List AM services.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).addOption(new Option('-g, --global', 'List global services.')).action(async (host, realm, user, password, options, command) => {
11
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
20
12
  if (await getTokens()) {
21
13
  verboseMessage(`Listing all AM services for realm: ${realm}`);
22
- await listServices(options.long);
14
+ await listServices(options.long, options.global);
15
+ } else {
16
+ process.exitCode = 1;
23
17
  }
24
18
  });
25
19
  program.parse();