hcs-cli 0.1.347__tar.gz → 0.1.349__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.
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/PKG-INFO +2 -3
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/__init__.py +1 -1
- hcs_cli-0.1.349/hcs_cli/cmds/activity/__init__.py +5 -0
- hcs_cli-0.1.349/hcs_cli/cmds/activity/get.py +22 -0
- hcs_cli-0.1.349/hcs_cli/cmds/activity/list.py +126 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/license_info.py +4 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/subscription_util.py +27 -2
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/init.py +15 -3
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/list.py +4 -1
- hcs_cli-0.1.349/hcs_cli/cmds/log.py +82 -0
- hcs_cli-0.1.349/hcs_cli/cmds/mcp.py +14 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/profile/init.py +15 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/task.py +5 -13
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/actions.py +21 -6
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/config/hcs-deployments.yaml +18 -16
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/main.py +18 -1
- hcs_cli-0.1.349/hcs_cli/mcp/__init__.py +7 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/__init__.py +17 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/ad.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/edge.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/entitlement.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/pool.py +32 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/provider.py +37 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/site.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/template.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/uag.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/resources/vm.py +21 -0
- hcs_cli-0.1.349/hcs_cli/mcp/server.py +48 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-dedicated.json +5 -5
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-delay-1m-per-vm.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-delete-template.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-destroy-onthread.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-destroy.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-prepare-onthread.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-prepare.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-vm-onthread.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-fail-vm.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-floating.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-legacy.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-manual.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-multisession.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-nanw.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-new-5k-delay.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-new-5k.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-new-snapshot.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-reuse-vm-id.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero-with-max-id-offset.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/zero.json +1 -1
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/__init__.py +27 -25
- hcs_cli-0.1.349/hcs_cli/service/activity.py +22 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/inventory/vm.py +2 -1
- hcs_cli-0.1.349/hcs_cli/service/task.py +356 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/log/env.py +43 -5
- hcs_cli-0.1.349/hcs_cli/support/log/search.py +78 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/profile.py +0 -16
- hcs_cli-0.1.349/hcs_cli/support/readonly.py +8 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/pyproject.toml +6 -3
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/__init__.py +0 -8
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/advisor_utils.py +0 -389
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/config/__init__.py +0 -3
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/config/advisor_config.py +0 -108
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/html_utils.py +0 -719
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/org.py +0 -114
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/pdf_utils.py +0 -626
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/pool.py +0 -83
- hcs_cli-0.1.347/hcs_cli/cmds/advisor/recommendation_engine.py +0 -1772
- hcs_cli-0.1.347/hcs_cli/cmds/log.py +0 -136
- hcs_cli-0.1.347/hcs_cli/service/task.py +0 -523
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/.gitignore +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/README.md +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/__main__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ad/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ad/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ad/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ad/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ad/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/admin/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/admin/azure_infra/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/admin/azure_infra/main.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/api.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/app/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/admin/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/admin/get_org_idp_map.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/admin/network/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/admin/network/add.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/user/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/auth/user/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/clouddriver/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/clouddriver/provider.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/clouddriver/service.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/clouddriver/task.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/credential/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/credential/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/cs/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/cs/base.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/infra/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/infra/basic.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/infra/plan.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/order/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/order/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/order/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/order/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/order/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/tenant/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/tenant/consumption.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/tenant/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/daas/tenant/plan.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/debug/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/debug/prepare.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/debug/reset.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/debug/start.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/emqx.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/auth.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/clear.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/config.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/credential_helper.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/init_steps.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/jenkins_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/k8s_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/mqtt_certs.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/required_fields.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/step_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/helper/util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/profiler.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/akka.plan.yml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/azsim.plan.yml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/azure.plan.yml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/mqtt-secret.yaml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/mqtt-server-external.yaml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/patch-mqtt-hostname.yml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/provided_files/patch-vernemq-ssl-depth.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/fs/tailor.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/mqtt.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/onboard.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/test.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/util/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/util/github_helper.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/util/log.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/dev/util/mqtt_helper.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/diagnostics/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/diagnostics/diagnose.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/connection_string.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/log.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/edge/wait.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/entitlement/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/entitlement/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/entitlement/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/entitlement/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hoc/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hoc/search.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hoc/stats.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hoc/util/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hoc/util/inv_cache.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/clean.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/cloud/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/cloud/health.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/cloud/perf.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/cloud/scale.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/installer.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/key.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/outpost.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/probe.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/report.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/hst/test.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/gold_pattern/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/gold_pattern/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/gold_pattern/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/gold_pattern/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/gold_pattern/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/list_copies.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/version/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/version/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/version/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/ims/version/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inspect.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/assign.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/count.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/deassign.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/logoff.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/session.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/inventory/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/iss/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/iss/mqtt.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/health.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/provider/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/provider/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/provider/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/provider/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/provider/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/register.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/cancel.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/expand.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/health.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/provision.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/retry.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/template/wait.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/test.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/pair.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/pairing_info.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/power.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/put.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/lcm/vm/wait.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/login.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/logout.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/datacenter/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/datacenter/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/datacenter/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/details/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/ff.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/location.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/org/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/ca.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/cert/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/cert/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/cert/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/sign.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pki/test.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/apply.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/clear.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/destroy.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/graph.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/input.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/output.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/resolve.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/plan/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pool/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pool/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pool/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pool/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pool/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/pool/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/profile/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/golden_images.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/provider/vsphere_dcs.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/query.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/scm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/scm/health.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/scm/operator.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/scm/plan.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/scm/recommend.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/scm/template.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/set-edge.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/site/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/outpost/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/outpost/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/outpost/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/outpost/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/outpost/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/outpost/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/run.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/probe/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/report/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/report/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/report/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/synt/report/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/create.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/expand.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/fix.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/list_usage.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/update.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/usage.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/template/wait.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/test.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/uag/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/uag/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/uag/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/uag/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/upgrade.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/delete.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/get.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/list.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/log.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/pairing_info.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/put.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/use.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vm/wait.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmhub/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmhub/info.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmhub/otp/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmhub/otp/redeem.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmhub/otp/request.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/restart_vms.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/rootca_edge_migration_stats.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/rootca_edge_rotate_certs.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/rootca_migrate.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/rootca_migrate_edge.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/vmm/rootca_template_migration_stats.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/workflows/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/cmds/workflows/mqtt-endpoints.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/config/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/akka.blueprint.yml +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/app/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/app/manual.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/edge/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/edge/akka.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/edge/vsphere.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/hoc/lcm-capcalc.json.template +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/hoc/logs.jsont +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/hoc/no-spare.json.template +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/inventory/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/inventory/assign.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/inventory/deassign.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/iss/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/akka.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/azure-dummy.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/azure-real.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/lcm/edge-proxy.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/provider/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/provider/ad-stes-vsphere.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/provider/akka.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/provider/azure.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/provider/edgeproxy.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/provider/vsphere.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/scm/starter.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p01-dummy-success.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p02-dummy-fail.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p03-dummy-exception.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p04-dummy-success-repeat.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p05-dummy-fail-repeat.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p06-dummy-exception-repeat.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p07-dummy-delay.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/core/p08-dummy-property.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p20-connect-success.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p21-connect-fail.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p30-ssl-success.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p31-ssl-fail.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p40-http-success.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p41-http-fail.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext/p42-http-status-code.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext1/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext1/p10-ping-success.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext1/p11-ping-fail.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/synt/ext1/p12-ping-success-repeat.json +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/payload/template/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/_prepare.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/ad.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/av_entitlement.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/av_fs.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/cert.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/edge.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/entitlement.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/gold_pattern.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/identity_provider.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/image.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/import_av_app.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/manual_app.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/pool_group.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/pool_template.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/provider.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/runtime/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/runtime/password.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/runtime/wait_for.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/site.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/provider/hcs/uag.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/ad.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/azure_infra.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/edge.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/helper.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/provider.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/template.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/uag.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/admin/vm.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/api.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/app_management/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/app_management/manual_app.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/auth/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/auth/admin.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/av/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/av/app.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/av/avimport.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/av/entitlements.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/av/fileshare.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/clouddriver/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/clouddriver/provider.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/clouddriver/service.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/credential/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/credential/credential.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/credential/nls.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/cs/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/cs/base.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/csp.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/diagnostics/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/diagnostics/edge.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/edge.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/edgehub/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/edgehub/edgecontroller.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/edgehub/edgetwin.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/graphql.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/hoc/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/hoc/diagnostic.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/hoc/es.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/ims/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/ims/gold_pattern.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/ims/helper.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/ims/image_copies.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/ims/images.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/ims/version.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/inventory/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/inventory/session.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/iss/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/iss/mqtt.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/lcm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/lcm/health.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/lcm/provider.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/lcm/template.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/lcm/vm.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/org_service/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/org_service/datacenter.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/org_service/details.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/org_service/orglocationmapping.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/pki/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/pki/certificate.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/pool.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/portal/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/portal/entitlement.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/portal/pool.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/portal/site.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/scm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/scm/base.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/scm/operator.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/scm/plan.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/site.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/synt/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/synt/outpost.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/synt/probe.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/synt/report.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/template.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/tsctl/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/tsctl/base.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/tsctl/task.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/uag.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vm.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vmhub/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vmhub/credentials.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vmhub/mqtt.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vmm/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vmm/dct.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/service/vmm/hoc_event.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/__init__.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/constant.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/debug_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/exec_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/inspect_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/log/message_parser.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/log/query_builder.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/param_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/patch_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/plan_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/predefined_payload.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/scm/html_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/scm/plan-editor.html.template +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/scm/plan_editor.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/template_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/test_utils.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/test_utils2.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/hcs_cli/support/use_util.py +0 -0
- {hcs_cli-0.1.347 → hcs_cli-0.1.349}/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.
|
|
3
|
+
Version: 0.1.349
|
|
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,9 +14,8 @@ 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.
|
|
17
|
+
Requires-Dist: hcs-core>=0.1.350
|
|
18
18
|
Requires-Dist: inquirerpy>=0.3.4
|
|
19
|
-
Requires-Dist: matplotlib>=3.8.0
|
|
20
19
|
Requires-Dist: paho-mqtt>=2.1.0
|
|
21
20
|
Requires-Dist: reportlab>=4.0.0
|
|
22
21
|
Provides-Extra: dev
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright © 2025-2026 Omnissa, LLC.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
import click
|
|
6
|
+
import hcs_core.sglib.cli_options as cli
|
|
7
|
+
from hcs_core.ctxp import recent
|
|
8
|
+
|
|
9
|
+
from hcs_cli.service import activity
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@click.command()
|
|
13
|
+
@click.argument("id", type=str, required=False)
|
|
14
|
+
@cli.org_id
|
|
15
|
+
def get(id: str, org: str):
|
|
16
|
+
"""Get activity by ID."""
|
|
17
|
+
cli.get_org_id(org)
|
|
18
|
+
id = recent.require("activity", id)
|
|
19
|
+
ret = activity.get(id)
|
|
20
|
+
if ret:
|
|
21
|
+
return ret
|
|
22
|
+
return ret, 1
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright © 2025-2026 Omnissa, LLC.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
from datetime import timezone
|
|
6
|
+
|
|
7
|
+
import click
|
|
8
|
+
import hcs_core.sglib.cli_options as cli
|
|
9
|
+
import yumako
|
|
10
|
+
from hcs_core.ctxp import recent
|
|
11
|
+
|
|
12
|
+
from hcs_cli.service import activity
|
|
13
|
+
|
|
14
|
+
_SEARCH_OPTS = (
|
|
15
|
+
("edge", "edgeId"),
|
|
16
|
+
("edge_name", "edgeName"),
|
|
17
|
+
("site", "siteId"),
|
|
18
|
+
("site_name", "siteName"),
|
|
19
|
+
("type", "type"),
|
|
20
|
+
("operation", "operation"),
|
|
21
|
+
("resource", "resourceId"),
|
|
22
|
+
("trace", "traceId"),
|
|
23
|
+
("parent", "parentId"),
|
|
24
|
+
("status", "status"),
|
|
25
|
+
("severity", "severity"),
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def _format_time(time: str) -> str:
|
|
30
|
+
dt = yumako.time.of(time, tz=timezone.utc)
|
|
31
|
+
return dt.strftime("%Y-%m-%dT%H:%M:%S.") + f"{dt.microsecond // 1000:03d}Z"
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def _build_search(**filters):
|
|
35
|
+
parts = []
|
|
36
|
+
for arg, field in _SEARCH_OPTS:
|
|
37
|
+
val = filters.get(arg)
|
|
38
|
+
if val:
|
|
39
|
+
parts.append(f"{field} $eq {val}")
|
|
40
|
+
return " AND ".join(parts) if parts else None
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
@click.command()
|
|
44
|
+
@click.option(
|
|
45
|
+
"--from",
|
|
46
|
+
"from_param",
|
|
47
|
+
type=str,
|
|
48
|
+
required=False,
|
|
49
|
+
default="-24h",
|
|
50
|
+
help="From date. E.g. '-1d', '-1h35m', '-1w', or '2023-12-04T00:19:22.854Z'.",
|
|
51
|
+
)
|
|
52
|
+
@click.option(
|
|
53
|
+
"--to",
|
|
54
|
+
type=str,
|
|
55
|
+
required=False,
|
|
56
|
+
default="now",
|
|
57
|
+
help="To date. E.g. 'now', '-1d', '-1h35m', '-1w', or '2023-12-04T00:19:22.854Z'.",
|
|
58
|
+
)
|
|
59
|
+
@click.option("--edge", type=str, required=False, help="Filter by edgeId.")
|
|
60
|
+
@click.option("--edge-name", type=str, required=False, help="Filter by edgeName.")
|
|
61
|
+
@click.option("--site", type=str, required=False, help="Filter by siteId.")
|
|
62
|
+
@click.option("--site-name", type=str, required=False, help="Filter by siteName.")
|
|
63
|
+
@click.option("--type", "type", type=str, required=False, help="Filter by type (AUDIT, SYSTEM).")
|
|
64
|
+
@click.option("--operation", type=str, required=False, help="Filter by operation.")
|
|
65
|
+
@click.option("--resource", type=str, required=False, help="Filter by resourceId.")
|
|
66
|
+
@click.option("--trace", type=str, required=False, help="Filter by traceId.")
|
|
67
|
+
@click.option("--parent", type=str, required=False, help="Filter by parentId.")
|
|
68
|
+
@click.option("--status", type=str, required=False, help="Filter by status.")
|
|
69
|
+
@click.option("--severity", type=str, required=False, help="Filter by severity.")
|
|
70
|
+
@cli.limit(default=20)
|
|
71
|
+
@cli.org_id
|
|
72
|
+
@cli.formatter(
|
|
73
|
+
columns={
|
|
74
|
+
"id": "Id",
|
|
75
|
+
"utcTimestamp": "Time",
|
|
76
|
+
"type": "Type",
|
|
77
|
+
"operation": "Operation",
|
|
78
|
+
"status": "Status",
|
|
79
|
+
"severity": "Severity",
|
|
80
|
+
"resourceName": "Resource",
|
|
81
|
+
"edgeName": "Edge",
|
|
82
|
+
"siteName": "Site",
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
def list(
|
|
86
|
+
org: str,
|
|
87
|
+
from_param: str,
|
|
88
|
+
to: str,
|
|
89
|
+
edge: str,
|
|
90
|
+
edge_name: str,
|
|
91
|
+
site: str,
|
|
92
|
+
site_name: str,
|
|
93
|
+
type: str,
|
|
94
|
+
operation: str,
|
|
95
|
+
resource: str,
|
|
96
|
+
trace: str,
|
|
97
|
+
parent: str,
|
|
98
|
+
status: str,
|
|
99
|
+
severity: str,
|
|
100
|
+
limit: int,
|
|
101
|
+
):
|
|
102
|
+
"""List activities."""
|
|
103
|
+
org_id = cli.get_org_id(org)
|
|
104
|
+
search = _build_search(
|
|
105
|
+
edge=edge,
|
|
106
|
+
edge_name=edge_name,
|
|
107
|
+
site=site,
|
|
108
|
+
site_name=site_name,
|
|
109
|
+
type=type,
|
|
110
|
+
operation=operation,
|
|
111
|
+
resource=resource,
|
|
112
|
+
trace=trace,
|
|
113
|
+
parent=parent,
|
|
114
|
+
status=status,
|
|
115
|
+
severity=severity,
|
|
116
|
+
)
|
|
117
|
+
kwargs = {
|
|
118
|
+
"start_date": _format_time(from_param),
|
|
119
|
+
"end_date": _format_time(to),
|
|
120
|
+
"limit": limit,
|
|
121
|
+
}
|
|
122
|
+
if search:
|
|
123
|
+
kwargs["search"] = search
|
|
124
|
+
ret = activity.list(org_id, **kwargs)
|
|
125
|
+
recent.helper.default_list(ret, "activity")
|
|
126
|
+
return ret
|
|
@@ -22,7 +22,10 @@ Hence we cannot add subscription to the feature stack, work around is to directl
|
|
|
22
22
|
|
|
23
23
|
def createLicenseFeatures():
|
|
24
24
|
current_profile = profile.current()
|
|
25
|
-
|
|
25
|
+
# Prefer the (freshly synced) profile over a raw ORG_ID env var, which can
|
|
26
|
+
# otherwise silently win with a stale value left over from a previous
|
|
27
|
+
# org's onboarding in the same shell.
|
|
28
|
+
org_id = current_profile.csp.orgId or os.getenv("ORG_ID")
|
|
26
29
|
data = {
|
|
27
30
|
"licenses": [
|
|
28
31
|
{
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import hashlib
|
|
1
2
|
import os
|
|
2
3
|
import uuid
|
|
3
4
|
|
|
@@ -46,6 +47,29 @@ def _get_client():
|
|
|
46
47
|
return client, current_profile
|
|
47
48
|
|
|
48
49
|
|
|
50
|
+
def _resolve_org_id(current_profile) -> str:
|
|
51
|
+
"""Resolve the org id, preferring the (freshly synced) profile over a raw
|
|
52
|
+
ORG_ID env var. A shell-exported ORG_ID left over from a previous org's
|
|
53
|
+
onboarding would otherwise silently win here and target the wrong org.
|
|
54
|
+
"""
|
|
55
|
+
org_id = current_profile.csp.orgId or os.getenv("ORG_ID")
|
|
56
|
+
log.trivial(f"Using org id: {org_id}")
|
|
57
|
+
return org_id
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def _derive_sid(org_id: str) -> str:
|
|
61
|
+
"""Derive a stable, subscription-service-unique sid from the org id.
|
|
62
|
+
|
|
63
|
+
The subscription service enforces a unique index on `sid`, so a fixed
|
|
64
|
+
literal here would collide as soon as a second org is onboarded onto the
|
|
65
|
+
same feature stack. Deriving it from org_id keeps reruns for the same org
|
|
66
|
+
idempotent while giving each distinct org its own subscription.
|
|
67
|
+
"""
|
|
68
|
+
digest = hashlib.sha256(org_id.encode()).hexdigest()
|
|
69
|
+
numeric = str(int(digest[:12], 16))[-9:].rjust(9, "0")
|
|
70
|
+
return f"M{numeric}"
|
|
71
|
+
|
|
72
|
+
|
|
49
73
|
def create_subscription():
|
|
50
74
|
"""
|
|
51
75
|
Step 8.1 – Create a subscription.
|
|
@@ -54,11 +78,12 @@ def create_subscription():
|
|
|
54
78
|
"""
|
|
55
79
|
client, current_profile = _get_client()
|
|
56
80
|
namespace = profile.name()
|
|
81
|
+
org_id = _resolve_org_id(current_profile)
|
|
57
82
|
|
|
58
83
|
data = {
|
|
59
84
|
"customerName": f"{namespace}-dev",
|
|
60
85
|
"customerType": "INTERNAL",
|
|
61
|
-
"sid":
|
|
86
|
+
"sid": _derive_sid(org_id),
|
|
62
87
|
"eaId": "123456789",
|
|
63
88
|
"status": "ACTIVE",
|
|
64
89
|
"region": "NA",
|
|
@@ -110,7 +135,7 @@ def create_org_mapping(hcs_subscription_id: str):
|
|
|
110
135
|
POST /subscription/v1/subscriptions/{{hcsSubscriptionId}}?action=createOrgMapping
|
|
111
136
|
"""
|
|
112
137
|
client, current_profile = _get_client()
|
|
113
|
-
org_id =
|
|
138
|
+
org_id = _resolve_org_id(current_profile)
|
|
114
139
|
ws1_org_id = str(uuid.uuid4())
|
|
115
140
|
|
|
116
141
|
data = {
|
|
@@ -64,15 +64,27 @@ ALL_DEPLOY_STEPS = list(DEPLOY_TARGET_STEPS.values())
|
|
|
64
64
|
def init(org: str, env_source: str, env_file: str, deploy: str, step: str, fs_name: str, delete_temp_files: bool, **kwargs):
|
|
65
65
|
"""Initialize feature stack with common settings and infrastructure."""
|
|
66
66
|
|
|
67
|
-
if org:
|
|
68
|
-
os.environ["ORG_ID"] = org
|
|
69
|
-
|
|
70
67
|
if not fs_name:
|
|
71
68
|
fs_name = profile.name()
|
|
72
69
|
|
|
73
70
|
if fs_name == "default":
|
|
74
71
|
fail("Usage: hcs dev fs init <YOUR_FEATURE_STACK_ID>")
|
|
75
72
|
|
|
73
|
+
if org:
|
|
74
|
+
os.environ["ORG_ID"] = org
|
|
75
|
+
# Keep the profile itself in sync with an explicit --org, so every step
|
|
76
|
+
# (including single-step reruns via --step, which skip prepare_profile)
|
|
77
|
+
# reads the intended org from the profile rather than risking a stale
|
|
78
|
+
# ORG_ID left over in the shell from a previous org onboarding.
|
|
79
|
+
if profile.exists(fs_name):
|
|
80
|
+
if profile.name() != fs_name:
|
|
81
|
+
profile.use(fs_name)
|
|
82
|
+
current = profile.current()
|
|
83
|
+
if current.csp.orgId != org:
|
|
84
|
+
log.warn(f"Updating profile '{fs_name}' orgId to {org} (from --org).")
|
|
85
|
+
current.csp.orgId = org
|
|
86
|
+
profile.save()
|
|
87
|
+
|
|
76
88
|
steps.set_delete_temp_files(delete_temp_files)
|
|
77
89
|
|
|
78
90
|
if step is None:
|
|
@@ -61,14 +61,17 @@ from hcs_cli.support.vm_table import format_vm_table
|
|
|
61
61
|
required=False,
|
|
62
62
|
help="Filter by UEM enrollment status.",
|
|
63
63
|
)
|
|
64
|
+
@click.option("--include-sessions", "includeSessions", is_flag=True, required=False, help="Include sessions in the response.")
|
|
64
65
|
@click.argument("template_id", type=str, required=False)
|
|
65
66
|
@cli.formatter(format_vm_table)
|
|
66
|
-
def list(org: str, template_id: str, **kwargs):
|
|
67
|
+
def list(org: str, template_id: str, includeSessions: bool, **kwargs):
|
|
67
68
|
"""List template VMs"""
|
|
68
69
|
template_id = recent.require("template", template_id)
|
|
69
70
|
fields = _trick_capture_field_option()
|
|
70
71
|
if fields:
|
|
71
72
|
kwargs["fields"] = fields
|
|
73
|
+
if includeSessions:
|
|
74
|
+
kwargs["includeSessions"] = True
|
|
72
75
|
ret = inventory.list(template_id, cli.get_org_id(org), **kwargs)
|
|
73
76
|
recent.helper.default_list(ret, "vm")
|
|
74
77
|
if not ret:
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright © 2025 Omnissa, LLC.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
import click
|
|
6
|
+
from hcs_core.sglib import cli_options as cli
|
|
7
|
+
|
|
8
|
+
from hcs_cli.support.log import env
|
|
9
|
+
from hcs_cli.support.log import search as log_search
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@click.command()
|
|
13
|
+
@click.option(
|
|
14
|
+
"--from",
|
|
15
|
+
"from_param",
|
|
16
|
+
type=str,
|
|
17
|
+
required=False,
|
|
18
|
+
default="-24h",
|
|
19
|
+
help="Sepcify the from date. E.g. '-1d', or '-1h35m', or '-1w', or '2023-12-04T00:19:22.854Z'.",
|
|
20
|
+
)
|
|
21
|
+
@click.option(
|
|
22
|
+
"--to",
|
|
23
|
+
type=str,
|
|
24
|
+
required=False,
|
|
25
|
+
default="now",
|
|
26
|
+
help="Sepcify the to date. E.g. 'now', or '-1d', or '-1h35m', or '-1w', or '2023-12-04T00:19:22.854Z'.",
|
|
27
|
+
)
|
|
28
|
+
@click.option("--hdc", required=False, type=click.Choice(env.HDCS, case_sensitive=False), help="The HDC location.")
|
|
29
|
+
@click.option(
|
|
30
|
+
"--region",
|
|
31
|
+
required=False,
|
|
32
|
+
type=click.Choice(env.REGIONS, case_sensitive=False),
|
|
33
|
+
help="Search log of regional cluster.",
|
|
34
|
+
)
|
|
35
|
+
@click.option(
|
|
36
|
+
"--service",
|
|
37
|
+
required=False,
|
|
38
|
+
help="Filter by kubernetes.pod_labels.app. If multiple apps, use comma to separate, e.g. --service inventory,lcm",
|
|
39
|
+
)
|
|
40
|
+
@click.option(
|
|
41
|
+
"--pod",
|
|
42
|
+
required=False,
|
|
43
|
+
help="Filter by kubernetes.pod_name. If multiple pods, use comma to separate, e.g. --pod clouddriver-statefulset-0,clouddriver-statefulset-1",
|
|
44
|
+
)
|
|
45
|
+
@click.option(
|
|
46
|
+
"--index",
|
|
47
|
+
required=False,
|
|
48
|
+
type=str,
|
|
49
|
+
help="Explicit ES index/index-pattern to query, overriding the --hdc-derived lookup. "
|
|
50
|
+
"E.g. --index 'prod110-r-japaneast-cp102-*' to search precisely for a single regional cluster.",
|
|
51
|
+
)
|
|
52
|
+
@cli.limit(default=20)
|
|
53
|
+
@click.option("--raw", is_flag=True, default=False, help="If raw, output the raw result.")
|
|
54
|
+
@click.argument("query", type=str, required=False)
|
|
55
|
+
def log(
|
|
56
|
+
from_param: str,
|
|
57
|
+
to: str,
|
|
58
|
+
hdc: str,
|
|
59
|
+
region: str,
|
|
60
|
+
service: str,
|
|
61
|
+
pod: str,
|
|
62
|
+
index: str,
|
|
63
|
+
limit: int,
|
|
64
|
+
raw: bool,
|
|
65
|
+
query: str,
|
|
66
|
+
):
|
|
67
|
+
"""Search Kibana Log."""
|
|
68
|
+
try:
|
|
69
|
+
return log_search.search(
|
|
70
|
+
query=query,
|
|
71
|
+
from_time=from_param,
|
|
72
|
+
to=to,
|
|
73
|
+
hdc=hdc,
|
|
74
|
+
region=region,
|
|
75
|
+
service=service,
|
|
76
|
+
pod=pod,
|
|
77
|
+
index=index,
|
|
78
|
+
limit=limit,
|
|
79
|
+
raw=raw,
|
|
80
|
+
)
|
|
81
|
+
except log_search.Error as e:
|
|
82
|
+
return str(e), 1
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Copyright © 2025-2026 Omnissa, LLC.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
import click
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
@click.command("mcp", hidden=True)
|
|
9
|
+
def mcp():
|
|
10
|
+
"""Run HCS MCP server (stdio). Tools: log, <resource>_list, <resource>_get."""
|
|
11
|
+
|
|
12
|
+
from hcs_cli.mcp import server as mcp_server
|
|
13
|
+
|
|
14
|
+
mcp_server.run()
|
|
@@ -18,7 +18,19 @@ import hcs_cli.support.profile as profile_support
|
|
|
18
18
|
@click.option("--api-token", type=str, required=False, help="Set initial property")
|
|
19
19
|
@click.option("--basic", type=str, required=False, help="Set initial property")
|
|
20
20
|
@click.option("--copy", type=str, required=False, help="Copy an existing profile to a new profile with the given name.")
|
|
21
|
-
|
|
21
|
+
@click.option("--readonly", is_flag=True, default=False, help="Set profile readonly=true.")
|
|
22
|
+
def init(
|
|
23
|
+
name: str,
|
|
24
|
+
dev: bool,
|
|
25
|
+
feature_stack: str,
|
|
26
|
+
org: str,
|
|
27
|
+
client_id: str,
|
|
28
|
+
client_secret: str,
|
|
29
|
+
api_token: str,
|
|
30
|
+
basic: str,
|
|
31
|
+
copy: str,
|
|
32
|
+
readonly: bool,
|
|
33
|
+
):
|
|
22
34
|
"""Init profile.
|
|
23
35
|
|
|
24
36
|
Examples:
|
|
@@ -51,6 +63,8 @@ def init(name: str, dev: bool, feature_stack: str, org: str, client_id: str, cli
|
|
|
51
63
|
csp["apiToken"] = api_token
|
|
52
64
|
if basic:
|
|
53
65
|
csp["basic"] = basic
|
|
66
|
+
if readonly:
|
|
67
|
+
data["readonly"] = True
|
|
54
68
|
return data
|
|
55
69
|
|
|
56
70
|
data = None
|
|
@@ -554,6 +554,9 @@ def get_logs(org: str, namespace: str, group: str, smart_path: str, last: bool,
|
|
|
554
554
|
if state and last:
|
|
555
555
|
return "--state cannot be used with --last.", 1
|
|
556
556
|
|
|
557
|
+
if search:
|
|
558
|
+
return "--search is not supported by the tsctl v2 task-logs API. Use --state instead.", 1
|
|
559
|
+
|
|
557
560
|
if last and org is None:
|
|
558
561
|
org_id = cli.get_org_id(org)
|
|
559
562
|
elif org == "all" or org is None:
|
|
@@ -562,15 +565,6 @@ def get_logs(org: str, namespace: str, group: str, smart_path: str, last: bool,
|
|
|
562
565
|
org_id = cli.get_org_id(org)
|
|
563
566
|
|
|
564
567
|
state_list = _parse_state_values(state)
|
|
565
|
-
if state_list:
|
|
566
|
-
if search:
|
|
567
|
-
if search.find("state $") >= 0:
|
|
568
|
-
return "--state cannot be used with state criteria in --search together.", 1
|
|
569
|
-
state_search = "state $in " + ",".join(state_list)
|
|
570
|
-
if search:
|
|
571
|
-
search = f"({search}) AND ({state_search})"
|
|
572
|
-
else:
|
|
573
|
-
search = state_search
|
|
574
568
|
|
|
575
569
|
if last:
|
|
576
570
|
t = task.last(org_id, namespace, group, key)
|
|
@@ -579,7 +573,7 @@ def get_logs(org: str, namespace: str, group: str, smart_path: str, last: bool,
|
|
|
579
573
|
else:
|
|
580
574
|
return
|
|
581
575
|
else:
|
|
582
|
-
return task.logs(org_id, namespace, group, key,
|
|
576
|
+
return task.logs(org_id, namespace, group, key, states=state_list, **kwargs)
|
|
583
577
|
|
|
584
578
|
|
|
585
579
|
@task_cmd_group.command()
|
|
@@ -721,9 +715,7 @@ def duplicate(org: str, namespace: str, group: str, smart_path: str, at: str, **
|
|
|
721
715
|
scheduled_ms = now_ms + int(delta_seconds * 1000)
|
|
722
716
|
|
|
723
717
|
if scheduled_ms > now_ms:
|
|
724
|
-
|
|
725
|
-
else:
|
|
726
|
-
new_task.schedule = None # run immediately
|
|
718
|
+
raise CtxpException("--at in the future is not supported: the tsctl v2 submit API has no delay/schedule parameter.")
|
|
727
719
|
|
|
728
720
|
return task.create(org_id, namespace, new_task)
|
|
729
721
|
|
|
@@ -21,7 +21,8 @@ def poweron(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
21
21
|
|
|
22
22
|
data = vm.get()
|
|
23
23
|
if not data:
|
|
24
|
-
return "VM not found", 1
|
|
24
|
+
return f"VM {vm_path} not found", 1
|
|
25
|
+
|
|
25
26
|
state = data["powerState"]
|
|
26
27
|
if state == "PoweredOn":
|
|
27
28
|
return data
|
|
@@ -45,6 +46,9 @@ def poweroff(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
45
46
|
vm = VM(org_id, template_id, vm_id)
|
|
46
47
|
|
|
47
48
|
data = vm.get()
|
|
49
|
+
if not data:
|
|
50
|
+
return f"VM {vm_path} not found", 1
|
|
51
|
+
|
|
48
52
|
state = data["powerState"]
|
|
49
53
|
if state == "PoweredOff":
|
|
50
54
|
return data
|
|
@@ -68,7 +72,9 @@ def restart(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
68
72
|
org_id = cli.get_org_id(org)
|
|
69
73
|
vm = VM(org_id, template_id, vm_id)
|
|
70
74
|
|
|
71
|
-
vm.restart()
|
|
75
|
+
ret = vm.restart()
|
|
76
|
+
if not ret:
|
|
77
|
+
return "", 1
|
|
72
78
|
|
|
73
79
|
if wait != "0":
|
|
74
80
|
return vm.wait_for_power_state("PoweredOn", timeout=wait)
|
|
@@ -85,7 +91,9 @@ def shutdown(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
85
91
|
org_id = cli.get_org_id(org)
|
|
86
92
|
vm = VM(org_id, template_id, vm_id)
|
|
87
93
|
|
|
88
|
-
vm.shutdown()
|
|
94
|
+
ret = vm.shutdown()
|
|
95
|
+
if not ret:
|
|
96
|
+
return "", 1
|
|
89
97
|
|
|
90
98
|
if wait != "0":
|
|
91
99
|
return vm.wait_for_power_state("PoweredOff", timeout=wait)
|
|
@@ -102,7 +110,9 @@ def resize(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
102
110
|
org_id = cli.get_org_id(org)
|
|
103
111
|
vm = VM(org_id, template_id, vm_id)
|
|
104
112
|
|
|
105
|
-
vm.resize()
|
|
113
|
+
ret = vm.resize()
|
|
114
|
+
if not ret:
|
|
115
|
+
return "", 1
|
|
106
116
|
|
|
107
117
|
if wait != "0":
|
|
108
118
|
print("TODO: wait")
|
|
@@ -120,7 +130,9 @@ def rebuild(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
120
130
|
org_id = cli.get_org_id(org)
|
|
121
131
|
vm = VM(org_id, template_id, vm_id)
|
|
122
132
|
|
|
123
|
-
vm.rebuild()
|
|
133
|
+
ret = vm.rebuild()
|
|
134
|
+
if not ret:
|
|
135
|
+
return "", 1
|
|
124
136
|
|
|
125
137
|
if wait != "0":
|
|
126
138
|
print("TODO: wait")
|
|
@@ -137,7 +149,10 @@ def pair(vm_path: str, org: str, wait: str, **kwargs):
|
|
|
137
149
|
org_id = cli.get_org_id(org)
|
|
138
150
|
vm = VM(org_id, template_id, vm_id)
|
|
139
151
|
|
|
140
|
-
vm.pair()
|
|
152
|
+
ret = vm.pair()
|
|
153
|
+
if not ret:
|
|
154
|
+
return "", 1
|
|
155
|
+
|
|
141
156
|
if wait != "0":
|
|
142
157
|
print("TODO: wait")
|
|
143
158
|
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
prod:
|
|
7
7
|
description: Production
|
|
8
|
+
readonly: false
|
|
8
9
|
azure-region: WestUS2
|
|
9
10
|
env: prod-na-cp102
|
|
10
11
|
portal-url:
|
|
@@ -12,8 +13,6 @@ prod:
|
|
|
12
13
|
- https://cloud.omnissahorizon.com/
|
|
13
14
|
hcs:
|
|
14
15
|
url: https://cloud-sg.horizon.omnissa.com
|
|
15
|
-
edgehub:
|
|
16
|
-
url: https://hv2-cloud-us-2.horizon.omnissa.com
|
|
17
16
|
hdcs:
|
|
18
17
|
US:
|
|
19
18
|
url: https://cloud-sg-us.horizon.omnissa.com
|
|
@@ -108,8 +107,6 @@ stg:
|
|
|
108
107
|
- https://staging1-cp102.horizon.omnissa.com/
|
|
109
108
|
hcs:
|
|
110
109
|
url: https://staging1-northcentralus-cp102.horizon.omnissa.com/
|
|
111
|
-
edgehub:
|
|
112
|
-
url: https://test-hv2-cloud-us-2.horizon.omnissa.com
|
|
113
110
|
hdcs:
|
|
114
111
|
US:
|
|
115
112
|
url: https://staging1-northcentralus-cp102.horizon.omnissa.com/
|
|
@@ -142,8 +139,6 @@ bat:
|
|
|
142
139
|
portal-url: []
|
|
143
140
|
hcs:
|
|
144
141
|
url: https://dev1b-westus2-cp102.azcp.horizon.omnissa.com/
|
|
145
|
-
edgehub:
|
|
146
|
-
url: https://dev-westus2-cp101.azcp.horizon.omnissa.com
|
|
147
142
|
hdcs:
|
|
148
143
|
US:
|
|
149
144
|
url: https://dev1b-westus2-cp102.azcp.horizon.omnissa.com/
|
|
@@ -161,8 +156,6 @@ int:
|
|
|
161
156
|
portal-url: []
|
|
162
157
|
hcs:
|
|
163
158
|
url: https://dev1b-westus2-cp103.azcp.horizon.omnissa.com/
|
|
164
|
-
edgehub:
|
|
165
|
-
url: https://dev-westus2-cp101.azcp.horizon.omnissa.com
|
|
166
159
|
hdcs:
|
|
167
160
|
US:
|
|
168
161
|
url: https://dev1b-westus2-cp103.azcp.horizon.omnissa.com/
|
|
@@ -180,8 +173,6 @@ chaos:
|
|
|
180
173
|
portal-url: []
|
|
181
174
|
hcs:
|
|
182
175
|
url: https://dev1b-westus2-cp104.azcp.horizon.omnissa.com/
|
|
183
|
-
edgehub:
|
|
184
|
-
url: https://dev-westus2-cp101.azcp.horizon.omnissa.com
|
|
185
176
|
hdcs:
|
|
186
177
|
US:
|
|
187
178
|
url: https://dev1b-westus2-cp104.azcp.horizon.omnissa.com/
|
|
@@ -199,8 +190,6 @@ stress:
|
|
|
199
190
|
portal-url: []
|
|
200
191
|
hcs:
|
|
201
192
|
url: https://stress1b-westus2-cp102.azcp.horizon.omnissa.com/
|
|
202
|
-
edgehub:
|
|
203
|
-
url: https://stress1-westus2-cp101.azcp.horizon.omnissa.com
|
|
204
193
|
hdcs:
|
|
205
194
|
US:
|
|
206
195
|
url: https://stress1b-westus2-cp102.azcp.horizon.omnissa.com/
|
|
@@ -221,8 +210,6 @@ sg-master:
|
|
|
221
210
|
portal-url: []
|
|
222
211
|
hcs:
|
|
223
212
|
url: https://horizonv2-sg.devframe.cp.horizon.omnissa.com/
|
|
224
|
-
edgehub:
|
|
225
|
-
url: https://horizonv2-em.devframe.cp.horizon.omnissa.com/
|
|
226
213
|
hdcs:
|
|
227
214
|
US:
|
|
228
215
|
url: https://horizonv2-sg.devframe.cp.horizon.omnissa.com/
|
|
@@ -240,8 +227,6 @@ hm-master:
|
|
|
240
227
|
portal-url: []
|
|
241
228
|
hcs:
|
|
242
229
|
url: https://horizonv2-monitoring.devframe.cp.horizon.omnissa.com/
|
|
243
|
-
edgehub:
|
|
244
|
-
url: https://horizonv2-em.devframe.cp.horizon.omnissa.com/
|
|
245
230
|
hdcs:
|
|
246
231
|
US:
|
|
247
232
|
url: https://horizonv2-monitoring.devframe.cp.horizon.omnissa.com/
|
|
@@ -252,6 +237,23 @@ hm-master:
|
|
|
252
237
|
mqtt:
|
|
253
238
|
edgehub:
|
|
254
239
|
url: https://horizonv2-em.devframe.cp.horizon.omnissa.com/
|
|
240
|
+
cps-admin:
|
|
241
|
+
description: Component Stack - Admin
|
|
242
|
+
hcs:
|
|
243
|
+
url: https://admin-component-nightly-tests-component-nightly.devframe.cp.horizon.omnissa.com
|
|
244
|
+
cps-agentmanager:
|
|
245
|
+
description: Component Stack - Agent Manager
|
|
246
|
+
hcs:
|
|
247
|
+
url: https://agentmanager-stack-component-nightly.devframe.cp.horizon.omnissa.com
|
|
248
|
+
cps-connect:
|
|
249
|
+
description: Component Stack - Connect
|
|
250
|
+
hcs:
|
|
251
|
+
url: https://conect-new-test-component-nightly.devframe.cp.horizon.omnissa.com
|
|
252
|
+
cps-lcm:
|
|
253
|
+
description: Component Stack - LCM
|
|
254
|
+
hcs:
|
|
255
|
+
url: https://lcm-stack-component-nightly.devframe.cp.horizon.omnissa.com
|
|
256
|
+
|
|
255
257
|
hoc:
|
|
256
258
|
es:
|
|
257
259
|
us:
|
|
@@ -82,12 +82,29 @@ def cli(profile: str, hdc: str, no_upgrade_check: bool, no_telemetry: bool, **kw
|
|
|
82
82
|
|
|
83
83
|
profile_support.ensure_default_production_profile()
|
|
84
84
|
|
|
85
|
+
_apply_readonly()
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def _apply_readonly():
|
|
89
|
+
data = ctxp.profile.current(exit_on_failure=False)
|
|
90
|
+
if not data:
|
|
91
|
+
return
|
|
92
|
+
is_readonly = data.get("readonly")
|
|
93
|
+
if isinstance(is_readonly, str):
|
|
94
|
+
is_readonly = is_readonly.strip().lower() in ("1", "true", "yes")
|
|
95
|
+
else:
|
|
96
|
+
is_readonly = bool(is_readonly)
|
|
97
|
+
if is_readonly:
|
|
98
|
+
from hcs_cli.support import readonly as readonly_support
|
|
99
|
+
|
|
100
|
+
ez_client.set_readonly(True, readonly_support.ALLOW_PATHS)
|
|
101
|
+
|
|
85
102
|
|
|
86
103
|
def _check_upgrade():
|
|
87
104
|
check_flag_from_env = env.bool("HCS_CLI_CHECK_UPGRADE", True)
|
|
88
105
|
if not check_flag_from_env:
|
|
89
106
|
return
|
|
90
|
-
if len(sys.argv) > 1 and sys.argv[1]
|
|
107
|
+
if len(sys.argv) > 1 and sys.argv[1] in ("upgrade", "mcp"):
|
|
91
108
|
return
|
|
92
109
|
from hcs_core.util.versions import check_upgrade
|
|
93
110
|
|