hcs-cli 0.1.322__tar.gz → 0.1.323__tar.gz

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 (503) hide show
  1. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/PKG-INFO +2 -2
  2. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/__init__.py +1 -1
  3. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/scm/template.py +5 -5
  4. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/scm/plan-editor.html.template +32 -13
  5. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/scm/plan_editor.py +56 -2
  6. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/pyproject.toml +1 -1
  7. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/.gitignore +0 -0
  8. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/README.md +0 -0
  9. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/__main__.py +0 -0
  10. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/__init__.py +0 -0
  11. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ad/__init__.py +0 -0
  12. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ad/create.py +0 -0
  13. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ad/delete.py +0 -0
  14. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ad/get.py +0 -0
  15. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ad/list.py +0 -0
  16. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/admin/__init__.py +0 -0
  17. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/admin/azure_infra/__init__.py +0 -0
  18. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/admin/azure_infra/main.py +0 -0
  19. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/__init__.py +0 -0
  20. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/advisor_utils.py +0 -0
  21. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/config/__init__.py +0 -0
  22. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/config/advisor_config.py +0 -0
  23. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/html_utils.py +0 -0
  24. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/org.py +0 -0
  25. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/pdf_utils.py +0 -0
  26. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/pool.py +0 -0
  27. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/advisor/recommendation_engine.py +0 -0
  28. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/api.py +0 -0
  29. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/__init__.py +0 -0
  30. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/create.py +0 -0
  31. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/delete.py +0 -0
  32. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/get.py +0 -0
  33. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/list.py +0 -0
  34. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/update.py +0 -0
  35. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/app/use.py +0 -0
  36. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/__init__.py +0 -0
  37. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/admin/__init__.py +0 -0
  38. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/admin/get_org_idp_map.py +0 -0
  39. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/admin/network/__init__.py +0 -0
  40. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/admin/network/add.py +0 -0
  41. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/user/__init__.py +0 -0
  42. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/auth/user/list.py +0 -0
  43. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/clouddriver/__init__.py +0 -0
  44. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/clouddriver/provider.py +0 -0
  45. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/clouddriver/service.py +0 -0
  46. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/clouddriver/task.py +0 -0
  47. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/credential/__init__.py +0 -0
  48. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/credential/get.py +0 -0
  49. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/cs/__init__.py +0 -0
  50. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/cs/base.py +0 -0
  51. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/__init__.py +0 -0
  52. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/infra/__init__.py +0 -0
  53. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/infra/basic.py +0 -0
  54. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/infra/plan.py +0 -0
  55. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/order/__init__.py +0 -0
  56. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/order/create.py +0 -0
  57. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/order/delete.py +0 -0
  58. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/order/list.py +0 -0
  59. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/order/update.py +0 -0
  60. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/tenant/__init__.py +0 -0
  61. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/tenant/consumption.py +0 -0
  62. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/tenant/create.py +0 -0
  63. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/daas/tenant/plan.py +0 -0
  64. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/debug/__init__.py +0 -0
  65. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/debug/prepare.py +0 -0
  66. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/debug/reset.py +0 -0
  67. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/debug/start.py +0 -0
  68. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/__init__.py +0 -0
  69. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/emqx.py +0 -0
  70. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/__init__.py +0 -0
  71. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/auth.py +0 -0
  72. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/clear.py +0 -0
  73. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/__init__.py +0 -0
  74. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/credential_helper.py +0 -0
  75. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/jenkins_util.py +0 -0
  76. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/k8s_util.py +0 -0
  77. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/license_info.py +0 -0
  78. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/required_fields.py +0 -0
  79. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/step_util.py +0 -0
  80. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/helper/util.py +0 -0
  81. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/init.py +0 -0
  82. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/profiler.py +0 -0
  83. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/__init__.py +0 -0
  84. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/akka.plan.yml +0 -0
  85. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/azsim.plan.yml +0 -0
  86. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/azure.plan.yml +0 -0
  87. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/mqtt-secret.yaml +0 -0
  88. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/mqtt-server-external.yaml +0 -0
  89. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/patch-mqtt-hostname.yml +0 -0
  90. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/provided_files/patch-vernemq-ssl-depth.json +0 -0
  91. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/fs/tailor.py +0 -0
  92. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/mqtt.py +0 -0
  93. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/onboard.py +0 -0
  94. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/test.py +0 -0
  95. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/util/__init__.py +0 -0
  96. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/util/github_helper.py +0 -0
  97. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/util/log.py +0 -0
  98. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/dev/util/mqtt_helper.py +0 -0
  99. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/diagnostics/__init__.py +0 -0
  100. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/diagnostics/diagnose.py +0 -0
  101. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/__init__.py +0 -0
  102. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/connection_string.py +0 -0
  103. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/create.py +0 -0
  104. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/delete.py +0 -0
  105. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/get.py +0 -0
  106. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/list.py +0 -0
  107. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/use.py +0 -0
  108. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/edge/wait.py +0 -0
  109. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/entitlement/__init__.py +0 -0
  110. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/entitlement/delete.py +0 -0
  111. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/entitlement/get.py +0 -0
  112. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/entitlement/list.py +0 -0
  113. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/__init__.py +0 -0
  114. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/connect.py +0 -0
  115. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/oncall.py +0 -0
  116. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/org.py +0 -0
  117. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/search.py +0 -0
  118. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/stats.py +0 -0
  119. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/template.py +0 -0
  120. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/util/__init__.py +0 -0
  121. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/util/inv_cache.py +0 -0
  122. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hoc/vm.py +0 -0
  123. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/__init__.py +0 -0
  124. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/clean.py +0 -0
  125. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/cloud/__init__.py +0 -0
  126. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/cloud/health.py +0 -0
  127. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/cloud/perf.py +0 -0
  128. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/cloud/scale.py +0 -0
  129. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/installer.py +0 -0
  130. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/key.py +0 -0
  131. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/outpost.py +0 -0
  132. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/probe.py +0 -0
  133. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/report.py +0 -0
  134. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/hst/test.py +0 -0
  135. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/__init__.py +0 -0
  136. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/delete.py +0 -0
  137. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/get.py +0 -0
  138. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/gold_pattern/__init__.py +0 -0
  139. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/gold_pattern/create.py +0 -0
  140. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/gold_pattern/delete.py +0 -0
  141. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/gold_pattern/get.py +0 -0
  142. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/gold_pattern/list.py +0 -0
  143. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/list.py +0 -0
  144. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/list_copies.py +0 -0
  145. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/version/__init__.py +0 -0
  146. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/version/delete.py +0 -0
  147. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/version/get.py +0 -0
  148. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/ims/version/list.py +0 -0
  149. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inspect.py +0 -0
  150. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/__init__.py +0 -0
  151. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/assign.py +0 -0
  152. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/count.py +0 -0
  153. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/deassign.py +0 -0
  154. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/delete.py +0 -0
  155. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/get.py +0 -0
  156. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/list.py +0 -0
  157. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/logoff.py +0 -0
  158. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/session.py +0 -0
  159. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/inventory/update.py +0 -0
  160. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/iss/__init__.py +0 -0
  161. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/iss/mqtt.py +0 -0
  162. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/__init__.py +0 -0
  163. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/health.py +0 -0
  164. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/provider/__init__.py +0 -0
  165. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/provider/create.py +0 -0
  166. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/provider/delete.py +0 -0
  167. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/provider/get.py +0 -0
  168. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/provider/list.py +0 -0
  169. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/register.py +0 -0
  170. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/__init__.py +0 -0
  171. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/cancel.py +0 -0
  172. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/create.py +0 -0
  173. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/delete.py +0 -0
  174. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/expand.py +0 -0
  175. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/get.py +0 -0
  176. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/health.py +0 -0
  177. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/list.py +0 -0
  178. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/provision.py +0 -0
  179. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/retry.py +0 -0
  180. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/update.py +0 -0
  181. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/use.py +0 -0
  182. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/template/wait.py +0 -0
  183. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/test.py +0 -0
  184. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/__init__.py +0 -0
  185. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/delete.py +0 -0
  186. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/get.py +0 -0
  187. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/pair.py +0 -0
  188. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/pairing_info.py +0 -0
  189. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/power.py +0 -0
  190. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/put.py +0 -0
  191. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/lcm/vm/wait.py +0 -0
  192. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/login.py +0 -0
  193. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/logout.py +0 -0
  194. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/__init__.py +0 -0
  195. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/datacenter/__init__.py +0 -0
  196. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/datacenter/get.py +0 -0
  197. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/datacenter/list.py +0 -0
  198. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/details/__init__.py +0 -0
  199. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/ff.py +0 -0
  200. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/get.py +0 -0
  201. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/list.py +0 -0
  202. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/location.py +0 -0
  203. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/org/use.py +0 -0
  204. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/__init__.py +0 -0
  205. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/ca.py +0 -0
  206. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/cert/__init__.py +0 -0
  207. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/cert/delete.py +0 -0
  208. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/cert/get.py +0 -0
  209. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/sign.py +0 -0
  210. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pki/test.py +0 -0
  211. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/__init__.py +0 -0
  212. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/apply.py +0 -0
  213. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/clear.py +0 -0
  214. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/destroy.py +0 -0
  215. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/graph.py +0 -0
  216. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/input.py +0 -0
  217. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/output.py +0 -0
  218. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/resolve.py +0 -0
  219. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/plan/use.py +0 -0
  220. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pool/__init__.py +0 -0
  221. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pool/delete.py +0 -0
  222. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pool/get.py +0 -0
  223. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pool/list.py +0 -0
  224. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pool/update.py +0 -0
  225. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/pool/use.py +0 -0
  226. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/profile/__init__.py +0 -0
  227. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/profile/init.py +0 -0
  228. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/__init__.py +0 -0
  229. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/create.py +0 -0
  230. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/delete.py +0 -0
  231. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/get.py +0 -0
  232. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/golden_images.py +0 -0
  233. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/list.py +0 -0
  234. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/use.py +0 -0
  235. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/provider/vsphere_dcs.py +0 -0
  236. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/query.py +0 -0
  237. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/scm/__init__.py +0 -0
  238. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/scm/health.py +0 -0
  239. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/scm/operator.py +0 -0
  240. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/scm/plan.py +0 -0
  241. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/__init__.py +0 -0
  242. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/create.py +0 -0
  243. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/delete.py +0 -0
  244. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/get.py +0 -0
  245. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/list.py +0 -0
  246. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/set-edge.py +0 -0
  247. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/site/use.py +0 -0
  248. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/__init__.py +0 -0
  249. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/outpost/__init__.py +0 -0
  250. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/outpost/create.py +0 -0
  251. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/outpost/delete.py +0 -0
  252. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/outpost/get.py +0 -0
  253. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/outpost/list.py +0 -0
  254. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/outpost/update.py +0 -0
  255. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/__init__.py +0 -0
  256. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/create.py +0 -0
  257. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/delete.py +0 -0
  258. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/get.py +0 -0
  259. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/list.py +0 -0
  260. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/run.py +0 -0
  261. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/probe/update.py +0 -0
  262. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/report/__init__.py +0 -0
  263. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/report/delete.py +0 -0
  264. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/report/get.py +0 -0
  265. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/synt/report/list.py +0 -0
  266. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/task.py +0 -0
  267. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/__init__.py +0 -0
  268. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/create.py +0 -0
  269. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/delete.py +0 -0
  270. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/expand.py +0 -0
  271. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/fix.py +0 -0
  272. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/get.py +0 -0
  273. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/list.py +0 -0
  274. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/list_usage.py +0 -0
  275. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/update.py +0 -0
  276. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/usage.py +0 -0
  277. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/use.py +0 -0
  278. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/template/wait.py +0 -0
  279. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/test.py +0 -0
  280. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/uag/__init__.py +0 -0
  281. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/uag/delete.py +0 -0
  282. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/uag/get.py +0 -0
  283. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/uag/list.py +0 -0
  284. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/upgrade.py +0 -0
  285. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/__init__.py +0 -0
  286. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/actions.py +0 -0
  287. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/delete.py +0 -0
  288. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/get.py +0 -0
  289. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/list.py +0 -0
  290. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/pairing_info.py +0 -0
  291. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/put.py +0 -0
  292. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/use.py +0 -0
  293. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vm/wait.py +0 -0
  294. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmhub/__init__.py +0 -0
  295. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmhub/info.py +0 -0
  296. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmhub/otp/__init__.py +0 -0
  297. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmhub/otp/redeem.py +0 -0
  298. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmhub/otp/request.py +0 -0
  299. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/__init__.py +0 -0
  300. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/restart_vms.py +0 -0
  301. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/rootca_edge_migration_stats.py +0 -0
  302. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/rootca_edge_rotate_certs.py +0 -0
  303. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/rootca_migrate.py +0 -0
  304. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/rootca_migrate_edge.py +0 -0
  305. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/vmm/rootca_template_migration_stats.py +0 -0
  306. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/workflows/__init__.py +0 -0
  307. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/cmds/workflows/mqtt-endpoints.py +0 -0
  308. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/config/__init__.py +0 -0
  309. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/config/hcs-deployments.yaml +0 -0
  310. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/main.py +0 -0
  311. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/__init__.py +0 -0
  312. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/akka.blueprint.yml +0 -0
  313. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/app/__init__.py +0 -0
  314. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/app/manual.json +0 -0
  315. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/edge/__init__.py +0 -0
  316. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/edge/akka.json +0 -0
  317. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/edge/vsphere.json +0 -0
  318. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/hoc/lcm-capcalc.json.template +0 -0
  319. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/hoc/no-spare.json.template +0 -0
  320. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/inventory/__init__.py +0 -0
  321. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/inventory/assign.json +0 -0
  322. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/inventory/deassign.json +0 -0
  323. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/iss/__init__.py +0 -0
  324. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/__init__.py +0 -0
  325. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/akka.json +0 -0
  326. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/azure-dummy.json +0 -0
  327. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/azure-real.json +0 -0
  328. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/edge-proxy.json +0 -0
  329. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-dedicated.json +0 -0
  330. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-delay-1m-per-vm.json +0 -0
  331. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-delete-template.json +0 -0
  332. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-destroy-onthread.json +0 -0
  333. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-destroy.json +0 -0
  334. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-prepare-onthread.json +0 -0
  335. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-prepare.json +0 -0
  336. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-vm-onthread.json +0 -0
  337. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-fail-vm.json +0 -0
  338. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-floating.json +0 -0
  339. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-legacy.json +0 -0
  340. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-manual.json +0 -0
  341. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-multisession.json +0 -0
  342. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-nanw.json +0 -0
  343. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-new-5k-delay.json +0 -0
  344. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-new-5k.json +0 -0
  345. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-new-snapshot.json +0 -0
  346. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-reuse-vm-id.json +0 -0
  347. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero-with-max-id-offset.json +0 -0
  348. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/lcm/zero.json +0 -0
  349. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/provider/__init__.py +0 -0
  350. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/provider/ad-stes-vsphere.json +0 -0
  351. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/provider/akka.json +0 -0
  352. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/provider/azure.json +0 -0
  353. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/provider/edgeproxy.json +0 -0
  354. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/provider/vsphere.json +0 -0
  355. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/scm/starter.json +0 -0
  356. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/__init__.py +0 -0
  357. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/__init__.py +0 -0
  358. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p01-dummy-success.json +0 -0
  359. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p02-dummy-fail.json +0 -0
  360. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p03-dummy-exception.json +0 -0
  361. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p04-dummy-success-repeat.json +0 -0
  362. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p05-dummy-fail-repeat.json +0 -0
  363. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p06-dummy-exception-repeat.json +0 -0
  364. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p07-dummy-delay.json +0 -0
  365. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/core/p08-dummy-property.json +0 -0
  366. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/__init__.py +0 -0
  367. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p20-connect-success.json +0 -0
  368. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p21-connect-fail.json +0 -0
  369. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p30-ssl-success.json +0 -0
  370. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p31-ssl-fail.json +0 -0
  371. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p40-http-success.json +0 -0
  372. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p41-http-fail.json +0 -0
  373. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext/p42-http-status-code.json +0 -0
  374. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext1/__init__.py +0 -0
  375. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext1/p10-ping-success.json +0 -0
  376. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext1/p11-ping-fail.json +0 -0
  377. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/synt/ext1/p12-ping-success-repeat.json +0 -0
  378. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/payload/template/__init__.py +0 -0
  379. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/__init__.py +0 -0
  380. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/__init__.py +0 -0
  381. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/_prepare.py +0 -0
  382. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/ad.py +0 -0
  383. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/av_entitlement.py +0 -0
  384. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/av_fs.py +0 -0
  385. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/cert.py +0 -0
  386. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/edge.py +0 -0
  387. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/entitlement.py +0 -0
  388. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/gold_pattern.py +0 -0
  389. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/identity_provider.py +0 -0
  390. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/image.py +0 -0
  391. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/import_av_app.py +0 -0
  392. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/manual_app.py +0 -0
  393. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/pool_group.py +0 -0
  394. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/pool_template.py +0 -0
  395. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/provider.py +0 -0
  396. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/runtime/__init__.py +0 -0
  397. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/runtime/password.py +0 -0
  398. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/runtime/wait_for.py +0 -0
  399. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/site.py +0 -0
  400. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/provider/hcs/uag.py +0 -0
  401. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/__init__.py +0 -0
  402. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/__init__.py +0 -0
  403. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/ad.py +0 -0
  404. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/azure_infra.py +0 -0
  405. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/edge.py +0 -0
  406. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/helper.py +0 -0
  407. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/provider.py +0 -0
  408. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/template.py +0 -0
  409. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/uag.py +0 -0
  410. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/admin/vm.py +0 -0
  411. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/api.py +0 -0
  412. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/app_management/__init__.py +0 -0
  413. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/app_management/manual_app.py +0 -0
  414. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/auth/__init__.py +0 -0
  415. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/auth/admin.py +0 -0
  416. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/av/__init__.py +0 -0
  417. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/av/app.py +0 -0
  418. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/av/avimport.py +0 -0
  419. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/av/entitlements.py +0 -0
  420. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/av/fileshare.py +0 -0
  421. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/clouddriver/__init__.py +0 -0
  422. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/clouddriver/provider.py +0 -0
  423. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/clouddriver/service.py +0 -0
  424. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/credential/__init__.py +0 -0
  425. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/credential/credential.py +0 -0
  426. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/credential/nls.py +0 -0
  427. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/cs/__init__.py +0 -0
  428. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/cs/base.py +0 -0
  429. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/csp.py +0 -0
  430. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/diagnostics/__init__.py +0 -0
  431. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/diagnostics/edge.py +0 -0
  432. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/edge.py +0 -0
  433. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/edgehub/__init__.py +0 -0
  434. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/edgehub/edgecontroller.py +0 -0
  435. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/edgehub/edgetwin.py +0 -0
  436. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/graphql.py +0 -0
  437. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/hoc/__init__.py +0 -0
  438. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/hoc/diagnostic.py +0 -0
  439. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/hoc/es.py +0 -0
  440. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/ims/__init__.py +0 -0
  441. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/ims/gold_pattern.py +0 -0
  442. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/ims/helper.py +0 -0
  443. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/ims/image_copies.py +0 -0
  444. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/ims/images.py +0 -0
  445. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/ims/version.py +0 -0
  446. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/inventory/__init__.py +0 -0
  447. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/inventory/session.py +0 -0
  448. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/inventory/vm.py +0 -0
  449. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/iss/__init__.py +0 -0
  450. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/iss/mqtt.py +0 -0
  451. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/lcm/__init__.py +0 -0
  452. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/lcm/health.py +0 -0
  453. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/lcm/provider.py +0 -0
  454. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/lcm/template.py +0 -0
  455. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/lcm/vm.py +0 -0
  456. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/org_service/__init__.py +0 -0
  457. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/org_service/datacenter.py +0 -0
  458. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/org_service/details.py +0 -0
  459. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/org_service/orglocationmapping.py +0 -0
  460. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/pki/__init__.py +0 -0
  461. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/pki/certificate.py +0 -0
  462. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/pool.py +0 -0
  463. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/portal/__init__.py +0 -0
  464. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/portal/entitlement.py +0 -0
  465. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/portal/pool.py +0 -0
  466. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/portal/site.py +0 -0
  467. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/scm/__init__.py +0 -0
  468. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/scm/base.py +0 -0
  469. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/scm/operator.py +0 -0
  470. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/scm/plan.py +0 -0
  471. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/site.py +0 -0
  472. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/synt/__init__.py +0 -0
  473. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/synt/outpost.py +0 -0
  474. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/synt/probe.py +0 -0
  475. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/synt/report.py +0 -0
  476. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/task.py +0 -0
  477. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/template.py +0 -0
  478. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/tsctl/__init__.py +0 -0
  479. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/tsctl/base.py +0 -0
  480. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/tsctl/task.py +0 -0
  481. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/uag.py +0 -0
  482. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/vm.py +0 -0
  483. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/vmhub/__init__.py +0 -0
  484. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/vmhub/credentials.py +0 -0
  485. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/vmhub/mqtt.py +0 -0
  486. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/vmm/__init__.py +0 -0
  487. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/service/vmm/hoc_event.py +0 -0
  488. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/__init__.py +0 -0
  489. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/constant.py +0 -0
  490. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/debug_util.py +0 -0
  491. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/exec_util.py +0 -0
  492. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/inspect_util.py +0 -0
  493. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/param_util.py +0 -0
  494. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/patch_util.py +0 -0
  495. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/plan_util.py +0 -0
  496. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/predefined_payload.py +0 -0
  497. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/profile.py +0 -0
  498. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/scm/html_util.py +0 -0
  499. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/template_util.py +0 -0
  500. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/test_utils.py +0 -0
  501. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/test_utils2.py +0 -0
  502. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/use_util.py +0 -0
  503. {hcs_cli-0.1.322 → hcs_cli-0.1.323}/hcs_cli/support/vm_table.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hcs-cli
3
- Version: 0.1.322
3
+ Version: 0.1.323
4
4
  Summary: Horizon Cloud Service CLI.
5
5
  Project-URL: Homepage, https://github.com/euc-eng/hcs-cli
6
6
  Project-URL: Bug Tracker, https://github.com/euc-eng/hcs-cli/issues
@@ -14,7 +14,7 @@ Classifier: License :: OSI Approved :: MIT License
14
14
  Classifier: Operating System :: OS Independent
15
15
  Classifier: Programming Language :: Python :: 3
16
16
  Requires-Python: >=3.9
17
- Requires-Dist: hcs-core>=0.1.322
17
+ Requires-Dist: hcs-core>=0.1.323
18
18
  Requires-Dist: inquirerpy>=0.3.4
19
19
  Requires-Dist: matplotlib>=3.8.0
20
20
  Requires-Dist: paho-mqtt>=2.1.0
@@ -1,3 +1,3 @@
1
- __version__ = "0.1.322"
1
+ __version__ = "0.1.323"
2
2
 
3
3
  from . import service as service # noqa: F401
@@ -28,16 +28,16 @@ def template(id: str, org: str, **kwargs):
28
28
  """Calendar plan for template."""
29
29
 
30
30
  org_id = cli.get_org_id(org)
31
- id = recent.require("template", id)
31
+ template_id = recent.require("template", id)
32
32
 
33
33
  # get plan for the template
34
34
 
35
- plan_id = f"CapacityOptimization-{id}"
35
+ plan_id = f"CapacityOptimization-{template_id}"
36
36
  plan = hcs.scm.plan.get(id=plan_id, org_id=org_id)
37
37
  if not plan:
38
38
  return None, 1
39
39
 
40
- template_data = hcs.template.get(org_id=org_id, id=id)
40
+ template_data = hcs.template.get(org_id=org_id, id=template_id)
41
41
 
42
42
  plan["meta"]["maxCapacity"] = template_data["sparePolicy"]["limit"]
43
43
  calendar = plan["calendar"]
@@ -46,6 +46,6 @@ def template(id: str, org: str, **kwargs):
46
46
  calendar[key]["idealCapacity"] = calendar[key]["forecastCapacity"]
47
47
 
48
48
  # fetch usage data for the usage chart
49
- usage = hcs.scm.template_usage(org_id, id)
49
+ usage = hcs.scm.template_usage(org_id, template_id)
50
50
 
51
- edit_plan(plan, template_data["name"], usage)
51
+ edit_plan(plan, template_data["name"], usage, template_id, org_id)
@@ -303,13 +303,13 @@
303
303
  <button class="tab-button active" data-tab="usage">Usage</button>
304
304
  <button class="tab-button" data-tab="capacity">Capacity</button>
305
305
  <button class="tab-button" data-tab="configuration">Configuration</button>
306
- <button class="tab-button" data-tab="data">Data</button>
307
306
  </div>
308
307
 
309
308
  <div class="tab-content active" id="usage-tab">
310
309
  <div style="margin-bottom: 10px; display: flex; justify-content: flex-end; align-items: center; gap: 10px;">
311
310
  <button id="reset-chart-zoom" style="padding: 6px 12px; background-color: #f0f0f0; border: 1px solid #ccc; border-radius: 4px; cursor: pointer; font-size: 12px; display: none;">Reset Time Range</button>
312
311
  <span id="selection-info" style="font-size: 12px; color: #666; font-weight: 500;">All timepoints</span>
312
+ <button class="copy-button" id="copy-data">Copy Data</button>
313
313
  </div>
314
314
  <div style="width: 100%; height: 400px; position: relative;">
315
315
  <div id="usage-chart" style="width: 100%; height: 100%; cursor: crosshair;"></div>
@@ -328,11 +328,6 @@
328
328
  <button class="copy-button" id="copy-config">Copy to Clipboard</button>
329
329
  <div class="code-container" id="config-json"></div>
330
330
  </div>
331
-
332
- <div class="tab-content" id="data-tab">
333
- <button class="copy-button" id="copy-data">Copy to Clipboard</button>
334
- <div class="code-container" id="chart-data-json"></div>
335
- </div>
336
331
  </div>
337
332
  </div>
338
333
 
@@ -845,6 +840,7 @@
845
840
  spare_capacity: usageChartData.spare_capacity,
846
841
  no_spare_error: usageChartData.no_spare_error,
847
842
  powered_on_vms: usageChartData.powered_on_vms,
843
+ powered_on_vms_predicated: usageChartData.powered_on_vms_predicated,
848
844
  consumed_capacity_predicated: usageChartData.consumed_capacity_predicated,
849
845
  spare_capacity_predicated: usageChartData.spare_capacity_predicated,
850
846
  no_spare_error_predicated: usageChartData.no_spare_error_predicated,
@@ -861,6 +857,7 @@
861
857
  chartData.spare_capacity = chartData.spare_capacity.slice(startIdx, endIdx + 1);
862
858
  chartData.no_spare_error = chartData.no_spare_error.slice(startIdx, endIdx + 1);
863
859
  chartData.powered_on_vms = chartData.powered_on_vms.slice(startIdx, endIdx + 1);
860
+ chartData.powered_on_vms_predicated = chartData.powered_on_vms_predicated.slice(startIdx, endIdx + 1);
864
861
  chartData.consumed_capacity_predicated = chartData.consumed_capacity_predicated.slice(startIdx, endIdx + 1);
865
862
  chartData.spare_capacity_predicated = chartData.spare_capacity_predicated.slice(startIdx, endIdx + 1);
866
863
  chartData.no_spare_error_predicated = chartData.no_spare_error_predicated.slice(startIdx, endIdx + 1);
@@ -892,7 +889,7 @@
892
889
  const option = {
893
890
  animation: false,
894
891
  title: {
895
- text: "Template Usage"
892
+ text: "Capacity Details: {{TEMPLATE_NAME}} ({{TEMPLATE_ID_PATH}})"
896
893
  },
897
894
  tooltip: {
898
895
  trigger: 'axis',
@@ -925,6 +922,20 @@
925
922
  splitIndex = usageChartData.x_axis.length;
926
923
  }
927
924
 
925
+ // Adjust splitIndex if we're viewing a filtered time range
926
+ if (currentFilteredStartIdx !== null && currentFilteredEndIdx !== null) {
927
+ const startIdx = Math.min(currentFilteredStartIdx, currentFilteredEndIdx);
928
+ const endIdx = Math.max(currentFilteredStartIdx, currentFilteredEndIdx);
929
+
930
+ // Adjust the split point relative to the filtered data
931
+ splitIndex = Math.max(0, splitIndex - startIdx);
932
+
933
+ // If the split point is beyond the filtered range, all data is predicated
934
+ if (splitIndex > (endIdx - startIdx + 1)) {
935
+ splitIndex = endIdx - startIdx + 1;
936
+ }
937
+ }
938
+
928
939
  const isInPredicatedArea = dataIndex >= splitIndex;
929
940
 
930
941
  // Filter series based on which area we're in
@@ -962,6 +973,7 @@
962
973
  'Spare Capacity',
963
974
  'Consumed Capacity',
964
975
  "No-spare Error",
976
+ 'Powered On VMs - Predicated',
965
977
  'Spare Capacity - Predicated',
966
978
  'Consumed Capacity - Predicated',
967
979
  "No-spare Error - Predicated",
@@ -973,6 +985,7 @@
973
985
  'Spare Capacity': true,
974
986
  'No-spare Error': true,
975
987
  'Optimized Capacity': true,
988
+ 'Powered On VMs - Predicated': true,
976
989
  'Spare Capacity - Predicated': false,
977
990
  'Consumed Capacity - Predicated': false,
978
991
  'No-spare Error - Predicated': true
@@ -1086,6 +1099,18 @@
1086
1099
  color: '#d66',
1087
1100
  data: chartData.no_spare_error_predicated,
1088
1101
  },
1102
+ {
1103
+ name: 'Powered On VMs - Predicated',
1104
+ type: 'line',
1105
+ lineStyle: { width: 1 },
1106
+ symbolSize: 0,
1107
+ stack: false,
1108
+ emphasis: {
1109
+ focus: 'none'
1110
+ },
1111
+ color: '#ff2222',
1112
+ data: chartData.powered_on_vms_predicated
1113
+ },
1089
1114
  {
1090
1115
  name: 'Optimized Capacity',
1091
1116
  type: 'line',
@@ -1124,15 +1149,9 @@
1124
1149
  const timezone = document.getElementById('timezone-select').value;
1125
1150
  renderUsageChart(currentFilteredStartIdx, currentFilteredEndIdx, timezone);
1126
1151
  }
1127
-
1128
- // Display chart data when switching to data tab
1129
- if (button.dataset.tab === 'data') {
1130
- displayChartData();
1131
- }
1132
1152
  });
1133
1153
  });
1134
1154
 
1135
- // Initialize timezone selector
1136
1155
  document.addEventListener('DOMContentLoaded', () => {
1137
1156
  // Detect and display browser timezone
1138
1157
  const browserTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
@@ -8,7 +8,7 @@ from hcs_cli.support.scm.html_util import show_html
8
8
 
9
9
 
10
10
  def _timestamp_to_date(timestamp: int):
11
- return datetime.fromtimestamp(timestamp / 1000).strftime("%Y-%m-%dT%H:%M")
11
+ return datetime.utcfromtimestamp(timestamp / 1000).strftime("%Y-%m-%dT%H:%M")
12
12
 
13
13
 
14
14
  def _process_usage_data(usage_api: dict, template_name: str):
@@ -65,12 +65,57 @@ def _process_usage_data(usage_api: dict, template_name: str):
65
65
  optimized_capacity = [0] * n + [0] + optimized_capacity
66
66
  no_spare_error_predicated = [0] * n + [no_spare_error[-1]] + no_spare_error_predicated
67
67
 
68
+ # Calculate predicated powered on vms based on historical data
69
+ # Structure: [zeros for historical period] + [predictions for 7 days (336 slots)]
70
+ # Each week is 336 time slots (48 slots/day * 7 days)
71
+ # Formula: slot[N] = 0.85 * slot[N-336] + 0.15 * (slot[N-336*2] + slot[N-336*3] + slot[N-336*4]) / 3
72
+ powered_on_vms_predicated = []
73
+ total_historical_slots = len(powered_on_vms)
74
+
75
+ # First part: zeros for the historical period
76
+ powered_on_vms_predicated.extend([0] * total_historical_slots)
77
+
78
+ # Second part: 7 days of predictions (336 slots)
79
+ for day_offset in range(7): # 7 days
80
+ for slot_in_day in range(48): # 48 slots per day
81
+ slot_index = day_offset * 48 + slot_in_day
82
+
83
+ # Calculate which slot in the future we're predicting
84
+ # This is relative to the end of historical data
85
+ predict_slot = total_historical_slots + slot_index
86
+
87
+ # Look back to find corresponding slots from previous weeks
88
+ weeks_ago_1 = predict_slot - 336
89
+
90
+ # Get the value from 1 week ago if available
91
+ value_1_week = 0
92
+ if weeks_ago_1 >= 0 and weeks_ago_1 < total_historical_slots:
93
+ value_1_week = powered_on_vms[weeks_ago_1]
94
+
95
+ # Collect values from 2, 3, 4 weeks ago for averaging
96
+ secondary_values = []
97
+ for weeks in [2, 3, 4]:
98
+ weeks_ago = predict_slot - 336 * weeks
99
+ if weeks_ago >= 0 and weeks_ago < total_historical_slots:
100
+ secondary_values.append(powered_on_vms[weeks_ago])
101
+
102
+ # Calculate the average of secondary values
103
+ if secondary_values:
104
+ avg_secondary = sum(secondary_values) / len(secondary_values)
105
+ else:
106
+ avg_secondary = value_1_week
107
+
108
+ # Apply formula: 0.85 * week_1_ago + 0.15 * avg(weeks_2_3_4_ago)
109
+ value = 0.85 * value_1_week + 0.15 * avg_secondary
110
+ powered_on_vms_predicated.append(value)
111
+
68
112
  return {
69
113
  "x_axis": x_axis,
70
114
  "consumed_capacity": consumed_capacity,
71
115
  "spare_capacity": spare_capacity,
72
116
  "no_spare_error": no_spare_error,
73
117
  "powered_on_vms": powered_on_vms,
118
+ "powered_on_vms_predicated": powered_on_vms_predicated,
74
119
  "consumed_capacity_predicated": consumed_capacity_predicated,
75
120
  "spare_capacity_predicated": spare_capacity_predicated,
76
121
  "no_spare_error_predicated": no_spare_error_predicated,
@@ -79,7 +124,7 @@ def _process_usage_data(usage_api: dict, template_name: str):
79
124
  }
80
125
 
81
126
 
82
- def edit_plan(plan: dict, template_name: str, usage_api: dict = None):
127
+ def edit_plan(plan: dict, template_name: str, usage_api: dict = None, template_id: str = None, org_id: str = None):
83
128
  # Start a local server to host plan-editor3.
84
129
  file_path = path.join(path.dirname(__file__), "plan-editor.html.template")
85
130
  with open(file_path, "r") as f:
@@ -132,10 +177,19 @@ def edit_plan(plan: dict, template_name: str, usage_api: dict = None):
132
177
  # Process usage API data for the usage chart
133
178
  usage_chart_data = _process_usage_data(usage_api, template_name)
134
179
 
180
+ # Format the template ID path
181
+ template_id_path = ""
182
+ if org_id and template_id:
183
+ template_id_path = f"org/{org_id}/pool/{template_id}"
184
+ elif template_id:
185
+ template_id_path = template_id
186
+
135
187
  html_template = template.replace(
136
188
  html_template,
137
189
  {
138
190
  "PLAN_DATA": json.dumps(plan),
191
+ "TEMPLATE_NAME": template_name,
192
+ "TEMPLATE_ID_PATH": template_id_path,
139
193
  "x_axis": x_axis,
140
194
  "template_name": template_name,
141
195
  "spare_capacity": spare_capacity,
@@ -21,7 +21,7 @@ keywords = [
21
21
  ]
22
22
  dynamic = ["version"]
23
23
  dependencies = [
24
- "hcs-core>=0.1.322",
24
+ "hcs-core>=0.1.323",
25
25
  "reportlab>=4.0.0",
26
26
  "matplotlib>=3.8.0",
27
27
  "InquirerPy>=0.3.4",
File without changes
File without changes
File without changes
File without changes