pvectl 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.claude/rules/branch-before-changes.md +52 -0
- data/.claude/rules/documentation-updates.md +104 -0
- data/.claude/rules/git-workflow.md +84 -0
- data/.claude/rules/proxmox-api-docs.md +58 -0
- data/.claude/rules/rbs-signatures.md +80 -0
- data/.claude/rules/refactoring-as-design-option.md +35 -0
- data/.claude/scheduled_tasks.lock +1 -0
- data/.claude/settings.json +51 -0
- data/.mcp.json +8 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/CHANGELOG.md +138 -0
- data/CLAUDE.md +211 -0
- data/CODE_OF_CONDUCT.md +132 -0
- data/LICENSE.txt +21 -0
- data/README.md +143 -0
- data/Rakefile +8 -0
- data/docs/proxmox-api-update.sh +96 -0
- data/exe/pvectl +5 -0
- data/lib/pvectl/argv_preprocessor.rb +334 -0
- data/lib/pvectl/cli.rb +102 -0
- data/lib/pvectl/commands/apt.rb +389 -0
- data/lib/pvectl/commands/clone_container.rb +230 -0
- data/lib/pvectl/commands/clone_vm.rb +331 -0
- data/lib/pvectl/commands/cloudinit/command.rb +122 -0
- data/lib/pvectl/commands/cloudinit/dump.rb +94 -0
- data/lib/pvectl/commands/cloudinit/pending.rb +137 -0
- data/lib/pvectl/commands/cloudinit/regenerate.rb +79 -0
- data/lib/pvectl/commands/config/command.rb +65 -0
- data/lib/pvectl/commands/config/get_contexts.rb +68 -0
- data/lib/pvectl/commands/config/set_cluster.rb +103 -0
- data/lib/pvectl/commands/config/set_context.rb +136 -0
- data/lib/pvectl/commands/config/set_credentials.rb +181 -0
- data/lib/pvectl/commands/config/use_context.rb +69 -0
- data/lib/pvectl/commands/config/view.rb +67 -0
- data/lib/pvectl/commands/console.rb +93 -0
- data/lib/pvectl/commands/console_ct.rb +187 -0
- data/lib/pvectl/commands/console_vm.rb +187 -0
- data/lib/pvectl/commands/container_lifecycle_command.rb +77 -0
- data/lib/pvectl/commands/create_backup.rb +173 -0
- data/lib/pvectl/commands/create_container.rb +141 -0
- data/lib/pvectl/commands/create_resource_command.rb +244 -0
- data/lib/pvectl/commands/create_snapshot.rb +242 -0
- data/lib/pvectl/commands/create_vm.rb +267 -0
- data/lib/pvectl/commands/delete_backup.rb +139 -0
- data/lib/pvectl/commands/delete_command.rb +119 -0
- data/lib/pvectl/commands/delete_container.rb +30 -0
- data/lib/pvectl/commands/delete_snapshot.rb +248 -0
- data/lib/pvectl/commands/delete_vm.rb +127 -0
- data/lib/pvectl/commands/describe/command.rb +251 -0
- data/lib/pvectl/commands/edit_container.rb +56 -0
- data/lib/pvectl/commands/edit_dns.rb +149 -0
- data/lib/pvectl/commands/edit_hosts.rb +135 -0
- data/lib/pvectl/commands/edit_node.rb +54 -0
- data/lib/pvectl/commands/edit_resource_command.rb +180 -0
- data/lib/pvectl/commands/edit_vm.rb +154 -0
- data/lib/pvectl/commands/edit_volume.rb +189 -0
- data/lib/pvectl/commands/feature_command.rb +230 -0
- data/lib/pvectl/commands/feature_container.rb +21 -0
- data/lib/pvectl/commands/feature_vm.rb +94 -0
- data/lib/pvectl/commands/get/command.rb +360 -0
- data/lib/pvectl/commands/get/handlers/backups.rb +76 -0
- data/lib/pvectl/commands/get/handlers/capabilities.rb +107 -0
- data/lib/pvectl/commands/get/handlers/containers.rb +148 -0
- data/lib/pvectl/commands/get/handlers/disks.rb +107 -0
- data/lib/pvectl/commands/get/handlers/dns.rb +94 -0
- data/lib/pvectl/commands/get/handlers/hosts.rb +94 -0
- data/lib/pvectl/commands/get/handlers/nodes.rb +162 -0
- data/lib/pvectl/commands/get/handlers/services.rb +81 -0
- data/lib/pvectl/commands/get/handlers/snapshots.rb +97 -0
- data/lib/pvectl/commands/get/handlers/storage.rb +118 -0
- data/lib/pvectl/commands/get/handlers/subscription.rb +69 -0
- data/lib/pvectl/commands/get/handlers/tasks.rb +89 -0
- data/lib/pvectl/commands/get/handlers/templates.rb +175 -0
- data/lib/pvectl/commands/get/handlers/time.rb +118 -0
- data/lib/pvectl/commands/get/handlers/vms.rb +145 -0
- data/lib/pvectl/commands/get/handlers/volume.rb +134 -0
- data/lib/pvectl/commands/get/resource_handler.rb +63 -0
- data/lib/pvectl/commands/get/resource_registry.rb +18 -0
- data/lib/pvectl/commands/get/watch_loop.rb +129 -0
- data/lib/pvectl/commands/irreversible_command.rb +265 -0
- data/lib/pvectl/commands/logs/command.rb +275 -0
- data/lib/pvectl/commands/logs/handlers/journal.rb +46 -0
- data/lib/pvectl/commands/logs/handlers/syslog.rb +53 -0
- data/lib/pvectl/commands/logs/handlers/task_detail.rb +52 -0
- data/lib/pvectl/commands/logs/handlers/task_logs.rb +115 -0
- data/lib/pvectl/commands/logs/resource_handler.rb +46 -0
- data/lib/pvectl/commands/logs/resource_registry.rb +22 -0
- data/lib/pvectl/commands/migrate_command.rb +282 -0
- data/lib/pvectl/commands/migrate_container.rb +23 -0
- data/lib/pvectl/commands/migrate_vm.rb +122 -0
- data/lib/pvectl/commands/move_disk_command.rb +239 -0
- data/lib/pvectl/commands/move_disk_container.rb +21 -0
- data/lib/pvectl/commands/move_disk_vm.rb +127 -0
- data/lib/pvectl/commands/ping.rb +249 -0
- data/lib/pvectl/commands/pull.rb +342 -0
- data/lib/pvectl/commands/push.rb +352 -0
- data/lib/pvectl/commands/reset.rb +64 -0
- data/lib/pvectl/commands/resource_lifecycle_command.rb +277 -0
- data/lib/pvectl/commands/resource_registry.rb +73 -0
- data/lib/pvectl/commands/restart.rb +70 -0
- data/lib/pvectl/commands/restart_container.rb +18 -0
- data/lib/pvectl/commands/restore_backup.rb +236 -0
- data/lib/pvectl/commands/resume.rb +57 -0
- data/lib/pvectl/commands/rollback_snapshot.rb +228 -0
- data/lib/pvectl/commands/sendkey_vm.rb +205 -0
- data/lib/pvectl/commands/service.rb +293 -0
- data/lib/pvectl/commands/set_container.rb +50 -0
- data/lib/pvectl/commands/set_node.rb +52 -0
- data/lib/pvectl/commands/set_resource_command.rb +185 -0
- data/lib/pvectl/commands/set_vm.rb +136 -0
- data/lib/pvectl/commands/set_volume.rb +212 -0
- data/lib/pvectl/commands/shared_config_parsers.rb +126 -0
- data/lib/pvectl/commands/shared_flags.rb +155 -0
- data/lib/pvectl/commands/shutdown.rb +73 -0
- data/lib/pvectl/commands/shutdown_container.rb +18 -0
- data/lib/pvectl/commands/start.rb +79 -0
- data/lib/pvectl/commands/start_container.rb +18 -0
- data/lib/pvectl/commands/stop.rb +75 -0
- data/lib/pvectl/commands/stop_container.rb +18 -0
- data/lib/pvectl/commands/suspend.rb +64 -0
- data/lib/pvectl/commands/template_command.rb +205 -0
- data/lib/pvectl/commands/template_container.rb +27 -0
- data/lib/pvectl/commands/template_vm.rb +106 -0
- data/lib/pvectl/commands/top/command.rb +206 -0
- data/lib/pvectl/commands/top/handlers/containers.rb +61 -0
- data/lib/pvectl/commands/top/handlers/nodes.rb +61 -0
- data/lib/pvectl/commands/top/handlers/vms.rb +61 -0
- data/lib/pvectl/commands/top/resource_handler.rb +46 -0
- data/lib/pvectl/commands/top/resource_registry.rb +22 -0
- data/lib/pvectl/commands/unlink_disk_vm.rb +232 -0
- data/lib/pvectl/commands/vm_lifecycle_command.rb +77 -0
- data/lib/pvectl/commands/wakeonlan_node.rb +153 -0
- data/lib/pvectl/config/errors.rb +62 -0
- data/lib/pvectl/config/models/cluster.rb +180 -0
- data/lib/pvectl/config/models/context.rb +100 -0
- data/lib/pvectl/config/models/resolved_config.rb +171 -0
- data/lib/pvectl/config/models/user.rb +133 -0
- data/lib/pvectl/config/provider.rb +297 -0
- data/lib/pvectl/config/service.rb +300 -0
- data/lib/pvectl/config/store.rb +161 -0
- data/lib/pvectl/config/wizard.rb +309 -0
- data/lib/pvectl/config_serializer.rb +1034 -0
- data/lib/pvectl/connection/retry_handler.rb +161 -0
- data/lib/pvectl/connection.rb +157 -0
- data/lib/pvectl/console/terminal_session.rb +449 -0
- data/lib/pvectl/editor_session.rb +157 -0
- data/lib/pvectl/exit_codes.rb +43 -0
- data/lib/pvectl/formatters/base.rb +55 -0
- data/lib/pvectl/formatters/color_support.rb +90 -0
- data/lib/pvectl/formatters/json.rb +45 -0
- data/lib/pvectl/formatters/output_helper.rb +77 -0
- data/lib/pvectl/formatters/registry.rb +72 -0
- data/lib/pvectl/formatters/table.rb +235 -0
- data/lib/pvectl/formatters/wide.rb +93 -0
- data/lib/pvectl/formatters/yaml.rb +49 -0
- data/lib/pvectl/manifest_serializer.rb +142 -0
- data/lib/pvectl/models/apt_package.rb +107 -0
- data/lib/pvectl/models/backup.rb +173 -0
- data/lib/pvectl/models/base.rb +49 -0
- data/lib/pvectl/models/capability.rb +62 -0
- data/lib/pvectl/models/container.rb +205 -0
- data/lib/pvectl/models/container_operation_result.rb +27 -0
- data/lib/pvectl/models/dns_config.rb +54 -0
- data/lib/pvectl/models/hosts_file.rb +47 -0
- data/lib/pvectl/models/journal_entry.rb +16 -0
- data/lib/pvectl/models/network_interface.rb +85 -0
- data/lib/pvectl/models/node.rb +195 -0
- data/lib/pvectl/models/node_operation_result.rb +45 -0
- data/lib/pvectl/models/operation_result.rb +110 -0
- data/lib/pvectl/models/physical_disk.rb +193 -0
- data/lib/pvectl/models/service.rb +80 -0
- data/lib/pvectl/models/snapshot.rb +101 -0
- data/lib/pvectl/models/snapshot_description.rb +39 -0
- data/lib/pvectl/models/storage.rb +180 -0
- data/lib/pvectl/models/subscription.rb +87 -0
- data/lib/pvectl/models/syslog_entry.rb +17 -0
- data/lib/pvectl/models/task.rb +95 -0
- data/lib/pvectl/models/task_entry.rb +52 -0
- data/lib/pvectl/models/task_log_line.rb +17 -0
- data/lib/pvectl/models/time_config.rb +47 -0
- data/lib/pvectl/models/vm.rb +137 -0
- data/lib/pvectl/models/vm_operation_result.rb +27 -0
- data/lib/pvectl/models/volume.rb +133 -0
- data/lib/pvectl/models/volume_operation_result.rb +26 -0
- data/lib/pvectl/parsers/cloud_init_config.rb +92 -0
- data/lib/pvectl/parsers/disk_config.rb +97 -0
- data/lib/pvectl/parsers/lxc_mount_config.rb +98 -0
- data/lib/pvectl/parsers/lxc_net_config.rb +97 -0
- data/lib/pvectl/parsers/net_config.rb +95 -0
- data/lib/pvectl/parsers/smart_text.rb +42 -0
- data/lib/pvectl/plugin_loader.rb +157 -0
- data/lib/pvectl/presenters/apt_package.rb +99 -0
- data/lib/pvectl/presenters/backup.rb +128 -0
- data/lib/pvectl/presenters/base.rb +283 -0
- data/lib/pvectl/presenters/capability.rb +104 -0
- data/lib/pvectl/presenters/config/context.rb +80 -0
- data/lib/pvectl/presenters/container.rb +574 -0
- data/lib/pvectl/presenters/container_operation_result.rb +109 -0
- data/lib/pvectl/presenters/disk.rb +184 -0
- data/lib/pvectl/presenters/dns_config.rb +68 -0
- data/lib/pvectl/presenters/hosts_file.rb +61 -0
- data/lib/pvectl/presenters/journal_entry.rb +20 -0
- data/lib/pvectl/presenters/node.rb +762 -0
- data/lib/pvectl/presenters/node_operation_result.rb +50 -0
- data/lib/pvectl/presenters/operation_result.rb +61 -0
- data/lib/pvectl/presenters/service.rb +76 -0
- data/lib/pvectl/presenters/snapshot.rb +239 -0
- data/lib/pvectl/presenters/snapshot_operation_result.rb +125 -0
- data/lib/pvectl/presenters/storage.rb +329 -0
- data/lib/pvectl/presenters/subscription.rb +189 -0
- data/lib/pvectl/presenters/syslog_entry.rb +20 -0
- data/lib/pvectl/presenters/task_entry.rb +69 -0
- data/lib/pvectl/presenters/task_log_line.rb +20 -0
- data/lib/pvectl/presenters/template.rb +76 -0
- data/lib/pvectl/presenters/time_config.rb +86 -0
- data/lib/pvectl/presenters/top_container.rb +112 -0
- data/lib/pvectl/presenters/top_node.rb +115 -0
- data/lib/pvectl/presenters/top_presenter.rb +59 -0
- data/lib/pvectl/presenters/top_vm.rb +105 -0
- data/lib/pvectl/presenters/vm.rb +853 -0
- data/lib/pvectl/presenters/vm_operation_result.rb +109 -0
- data/lib/pvectl/presenters/volume.rb +136 -0
- data/lib/pvectl/presenters/volume_operation_result.rb +58 -0
- data/lib/pvectl/repositories/apt.rb +93 -0
- data/lib/pvectl/repositories/backup.rb +186 -0
- data/lib/pvectl/repositories/base.rb +110 -0
- data/lib/pvectl/repositories/capabilities.rb +96 -0
- data/lib/pvectl/repositories/container.rb +503 -0
- data/lib/pvectl/repositories/disk.rb +87 -0
- data/lib/pvectl/repositories/dns.rb +54 -0
- data/lib/pvectl/repositories/hosts.rb +63 -0
- data/lib/pvectl/repositories/journal.rb +23 -0
- data/lib/pvectl/repositories/node.rb +537 -0
- data/lib/pvectl/repositories/service.rb +139 -0
- data/lib/pvectl/repositories/snapshot.rb +133 -0
- data/lib/pvectl/repositories/storage.rb +302 -0
- data/lib/pvectl/repositories/subscription.rb +77 -0
- data/lib/pvectl/repositories/syslog.rb +25 -0
- data/lib/pvectl/repositories/task.rb +82 -0
- data/lib/pvectl/repositories/task_list.rb +30 -0
- data/lib/pvectl/repositories/task_log.rb +31 -0
- data/lib/pvectl/repositories/time_config.rb +53 -0
- data/lib/pvectl/repositories/vm.rb +616 -0
- data/lib/pvectl/repositories/volume.rb +306 -0
- data/lib/pvectl/selectors/base.rb +201 -0
- data/lib/pvectl/selectors/container.rb +116 -0
- data/lib/pvectl/selectors/disk.rb +59 -0
- data/lib/pvectl/selectors/vm.rb +116 -0
- data/lib/pvectl/selectors/volume.rb +59 -0
- data/lib/pvectl/services/backup.rb +209 -0
- data/lib/pvectl/services/clone_container.rb +260 -0
- data/lib/pvectl/services/clone_vm.rb +265 -0
- data/lib/pvectl/services/cloudinit.rb +96 -0
- data/lib/pvectl/services/console.rb +152 -0
- data/lib/pvectl/services/container_lifecycle.rb +124 -0
- data/lib/pvectl/services/create_container.rb +179 -0
- data/lib/pvectl/services/create_vm.rb +191 -0
- data/lib/pvectl/services/edit_container.rb +125 -0
- data/lib/pvectl/services/edit_dns.rb +159 -0
- data/lib/pvectl/services/edit_hosts.rb +78 -0
- data/lib/pvectl/services/edit_node.rb +147 -0
- data/lib/pvectl/services/edit_vm.rb +125 -0
- data/lib/pvectl/services/edit_volume.rb +224 -0
- data/lib/pvectl/services/get/resource_service.rb +98 -0
- data/lib/pvectl/services/move_disk.rb +132 -0
- data/lib/pvectl/services/pull_config.rb +94 -0
- data/lib/pvectl/services/push_config.rb +524 -0
- data/lib/pvectl/services/resize_volume.rb +253 -0
- data/lib/pvectl/services/resource_delete.rb +169 -0
- data/lib/pvectl/services/resource_migration.rb +170 -0
- data/lib/pvectl/services/sendkey.rb +108 -0
- data/lib/pvectl/services/service_lifecycle.rb +89 -0
- data/lib/pvectl/services/set_container.rb +128 -0
- data/lib/pvectl/services/set_node.rb +236 -0
- data/lib/pvectl/services/set_vm.rb +128 -0
- data/lib/pvectl/services/set_volume.rb +126 -0
- data/lib/pvectl/services/snapshot.rb +261 -0
- data/lib/pvectl/services/task_listing.rb +75 -0
- data/lib/pvectl/services/unlink_disk.rb +86 -0
- data/lib/pvectl/services/vm_lifecycle.rb +124 -0
- data/lib/pvectl/services/wakeonlan.rb +79 -0
- data/lib/pvectl/utils/resource_resolver.rb +80 -0
- data/lib/pvectl/version.rb +13 -0
- data/lib/pvectl/wizards/create_container.rb +105 -0
- data/lib/pvectl/wizards/create_vm.rb +98 -0
- data/lib/pvectl.rb +439 -0
- data/sig/external/gli.rbs +16 -0
- data/sig/external/proxmox_api.rbs +10 -0
- data/sig/pvectl/argv_preprocessor.rbs +53 -0
- data/sig/pvectl/cli.rbs +26 -0
- data/sig/pvectl/commands/apt.rbs +47 -0
- data/sig/pvectl/commands/clone_container.rbs +31 -0
- data/sig/pvectl/commands/clone_vm.rbs +33 -0
- data/sig/pvectl/commands/cloudinit/command.rbs +13 -0
- data/sig/pvectl/commands/cloudinit/dump.rbs +13 -0
- data/sig/pvectl/commands/cloudinit/pending.rbs +17 -0
- data/sig/pvectl/commands/cloudinit/regenerate.rbs +11 -0
- data/sig/pvectl/commands/config/command.rbs +9 -0
- data/sig/pvectl/commands/config/get_contexts.rbs +11 -0
- data/sig/pvectl/commands/config/set_cluster.rbs +11 -0
- data/sig/pvectl/commands/config/set_context.rbs +15 -0
- data/sig/pvectl/commands/config/set_credentials.rbs +15 -0
- data/sig/pvectl/commands/config/use_context.rbs +11 -0
- data/sig/pvectl/commands/config/view.rbs +11 -0
- data/sig/pvectl/commands/console.rbs +9 -0
- data/sig/pvectl/commands/console_ct.rbs +27 -0
- data/sig/pvectl/commands/console_vm.rbs +27 -0
- data/sig/pvectl/commands/container_lifecycle_command.rbs +25 -0
- data/sig/pvectl/commands/create_backup.rbs +29 -0
- data/sig/pvectl/commands/create_container.rbs +30 -0
- data/sig/pvectl/commands/create_resource_command.rbs +53 -0
- data/sig/pvectl/commands/create_snapshot.rbs +35 -0
- data/sig/pvectl/commands/create_vm.rbs +30 -0
- data/sig/pvectl/commands/delete_backup.rbs +25 -0
- data/sig/pvectl/commands/delete_command.rbs +45 -0
- data/sig/pvectl/commands/delete_container.rbs +11 -0
- data/sig/pvectl/commands/delete_snapshot.rbs +35 -0
- data/sig/pvectl/commands/delete_vm.rbs +13 -0
- data/sig/pvectl/commands/describe/command.rbs +27 -0
- data/sig/pvectl/commands/edit_container.rbs +17 -0
- data/sig/pvectl/commands/edit_dns.rbs +25 -0
- data/sig/pvectl/commands/edit_hosts.rbs +23 -0
- data/sig/pvectl/commands/edit_node.rbs +17 -0
- data/sig/pvectl/commands/edit_resource_command.rbs +35 -0
- data/sig/pvectl/commands/edit_vm.rbs +19 -0
- data/sig/pvectl/commands/edit_volume.rbs +24 -0
- data/sig/pvectl/commands/feature_command.rbs +43 -0
- data/sig/pvectl/commands/feature_container.rbs +10 -0
- data/sig/pvectl/commands/feature_vm.rbs +12 -0
- data/sig/pvectl/commands/get/command.rbs +42 -0
- data/sig/pvectl/commands/get/handlers/backups.rbs +23 -0
- data/sig/pvectl/commands/get/handlers/capabilities.rbs +29 -0
- data/sig/pvectl/commands/get/handlers/containers.rbs +35 -0
- data/sig/pvectl/commands/get/handlers/disks.rbs +27 -0
- data/sig/pvectl/commands/get/handlers/dns.rbs +25 -0
- data/sig/pvectl/commands/get/handlers/hosts.rbs +25 -0
- data/sig/pvectl/commands/get/handlers/nodes.rbs +33 -0
- data/sig/pvectl/commands/get/handlers/services.rbs +23 -0
- data/sig/pvectl/commands/get/handlers/snapshots.rbs +27 -0
- data/sig/pvectl/commands/get/handlers/storage.rbs +25 -0
- data/sig/pvectl/commands/get/handlers/subscription.rbs +25 -0
- data/sig/pvectl/commands/get/handlers/tasks.rbs +28 -0
- data/sig/pvectl/commands/get/handlers/templates.rbs +35 -0
- data/sig/pvectl/commands/get/handlers/time.rbs +29 -0
- data/sig/pvectl/commands/get/handlers/vms.rbs +35 -0
- data/sig/pvectl/commands/get/handlers/volume.rbs +27 -0
- data/sig/pvectl/commands/get/resource_handler.rbs +13 -0
- data/sig/pvectl/commands/get/resource_registry.rbs +8 -0
- data/sig/pvectl/commands/get/watch_loop.rbs +33 -0
- data/sig/pvectl/commands/irreversible_command.rbs +32 -0
- data/sig/pvectl/commands/logs/command.rbs +35 -0
- data/sig/pvectl/commands/logs/handlers/journal.rbs +21 -0
- data/sig/pvectl/commands/logs/handlers/syslog.rbs +21 -0
- data/sig/pvectl/commands/logs/handlers/task_detail.rbs +21 -0
- data/sig/pvectl/commands/logs/handlers/task_logs.rbs +35 -0
- data/sig/pvectl/commands/logs/resource_handler.rbs +11 -0
- data/sig/pvectl/commands/logs/resource_registry.rbs +8 -0
- data/sig/pvectl/commands/migrate_command.rbs +45 -0
- data/sig/pvectl/commands/migrate_container.rbs +11 -0
- data/sig/pvectl/commands/migrate_vm.rbs +13 -0
- data/sig/pvectl/commands/move_disk_command.rbs +43 -0
- data/sig/pvectl/commands/move_disk_container.rbs +11 -0
- data/sig/pvectl/commands/move_disk_vm.rbs +13 -0
- data/sig/pvectl/commands/ping.rbs +39 -0
- data/sig/pvectl/commands/pull.rbs +33 -0
- data/sig/pvectl/commands/push.rbs +32 -0
- data/sig/pvectl/commands/reset.rbs +11 -0
- data/sig/pvectl/commands/resource_lifecycle_command.rbs +55 -0
- data/sig/pvectl/commands/resource_registry.rbs +19 -0
- data/sig/pvectl/commands/restart.rbs +11 -0
- data/sig/pvectl/commands/restart_container.rbs +9 -0
- data/sig/pvectl/commands/restore_backup.rbs +27 -0
- data/sig/pvectl/commands/resume.rbs +11 -0
- data/sig/pvectl/commands/rollback_snapshot.rbs +31 -0
- data/sig/pvectl/commands/sendkey_vm.rbs +25 -0
- data/sig/pvectl/commands/service.rbs +38 -0
- data/sig/pvectl/commands/set_container.rbs +13 -0
- data/sig/pvectl/commands/set_node.rbs +13 -0
- data/sig/pvectl/commands/set_resource_command.rbs +25 -0
- data/sig/pvectl/commands/set_vm.rbs +15 -0
- data/sig/pvectl/commands/set_volume.rbs +24 -0
- data/sig/pvectl/commands/shared_config_parsers.rbs +19 -0
- data/sig/pvectl/commands/shared_flags.rbs +10 -0
- data/sig/pvectl/commands/shutdown.rbs +11 -0
- data/sig/pvectl/commands/shutdown_container.rbs +9 -0
- data/sig/pvectl/commands/start.rbs +11 -0
- data/sig/pvectl/commands/start_container.rbs +9 -0
- data/sig/pvectl/commands/stop.rbs +11 -0
- data/sig/pvectl/commands/stop_container.rbs +9 -0
- data/sig/pvectl/commands/suspend.rbs +11 -0
- data/sig/pvectl/commands/template_command.rbs +21 -0
- data/sig/pvectl/commands/template_container.rbs +10 -0
- data/sig/pvectl/commands/template_vm.rbs +12 -0
- data/sig/pvectl/commands/top/command.rbs +31 -0
- data/sig/pvectl/commands/top/handlers/containers.rbs +21 -0
- data/sig/pvectl/commands/top/handlers/nodes.rbs +21 -0
- data/sig/pvectl/commands/top/handlers/vms.rbs +21 -0
- data/sig/pvectl/commands/top/resource_handler.rbs +11 -0
- data/sig/pvectl/commands/top/resource_registry.rbs +8 -0
- data/sig/pvectl/commands/unlink_disk_vm.rbs +27 -0
- data/sig/pvectl/commands/vm_lifecycle_command.rbs +25 -0
- data/sig/pvectl/commands/wakeonlan_node.rbs +21 -0
- data/sig/pvectl/config/errors.rbs +24 -0
- data/sig/pvectl/config/models/cluster.rbs +39 -0
- data/sig/pvectl/config/models/context.rbs +23 -0
- data/sig/pvectl/config/models/resolved_config.rbs +51 -0
- data/sig/pvectl/config/models/user.rbs +31 -0
- data/sig/pvectl/config/provider.rbs +40 -0
- data/sig/pvectl/config/service.rbs +65 -0
- data/sig/pvectl/config/store.rbs +14 -0
- data/sig/pvectl/config/wizard.rbs +48 -0
- data/sig/pvectl/config_serializer.rbs +121 -0
- data/sig/pvectl/connection/retry_handler.rbs +31 -0
- data/sig/pvectl/connection.rbs +35 -0
- data/sig/pvectl/console/terminal_session.rbs +63 -0
- data/sig/pvectl/editor_session.rbs +33 -0
- data/sig/pvectl/exit_codes.rbs +19 -0
- data/sig/pvectl/formatters/base.rbs +13 -0
- data/sig/pvectl/formatters/color_support.rbs +13 -0
- data/sig/pvectl/formatters/json.rbs +7 -0
- data/sig/pvectl/formatters/output_helper.rbs +9 -0
- data/sig/pvectl/formatters/registry.rbs +13 -0
- data/sig/pvectl/formatters/table.rbs +25 -0
- data/sig/pvectl/formatters/wide.rbs +15 -0
- data/sig/pvectl/formatters/yaml.rbs +7 -0
- data/sig/pvectl/manifest_serializer.rbs +18 -0
- data/sig/pvectl/models/apt_package.rbs +26 -0
- data/sig/pvectl/models/backup.rbs +31 -0
- data/sig/pvectl/models/base.rbs +11 -0
- data/sig/pvectl/models/capability.rbs +16 -0
- data/sig/pvectl/models/container.rbs +44 -0
- data/sig/pvectl/models/container_operation_result.rbs +9 -0
- data/sig/pvectl/models/dns_config.rbs +15 -0
- data/sig/pvectl/models/hosts_file.rbs +13 -0
- data/sig/pvectl/models/journal_entry.rbs +10 -0
- data/sig/pvectl/models/network_interface.rbs +20 -0
- data/sig/pvectl/models/node.rbs +47 -0
- data/sig/pvectl/models/node_operation_result.rbs +12 -0
- data/sig/pvectl/models/operation_result.rbs +21 -0
- data/sig/pvectl/models/physical_disk.rbs +35 -0
- data/sig/pvectl/models/service.rbs +18 -0
- data/sig/pvectl/models/snapshot.rbs +21 -0
- data/sig/pvectl/models/snapshot_description.rbs +18 -0
- data/sig/pvectl/models/storage.rbs +39 -0
- data/sig/pvectl/models/subscription.rbs +24 -0
- data/sig/pvectl/models/syslog_entry.rbs +10 -0
- data/sig/pvectl/models/task.rbs +22 -0
- data/sig/pvectl/models/task_entry.rbs +24 -0
- data/sig/pvectl/models/task_log_line.rbs +10 -0
- data/sig/pvectl/models/time_config.rbs +12 -0
- data/sig/pvectl/models/vm.rbs +32 -0
- data/sig/pvectl/models/vm_operation_result.rbs +9 -0
- data/sig/pvectl/models/volume.rbs +29 -0
- data/sig/pvectl/models/volume_operation_result.rbs +9 -0
- data/sig/pvectl/parsers/cloud_init_config.rbs +15 -0
- data/sig/pvectl/parsers/disk_config.rbs +19 -0
- data/sig/pvectl/parsers/lxc_mount_config.rbs +19 -0
- data/sig/pvectl/parsers/lxc_net_config.rbs +19 -0
- data/sig/pvectl/parsers/net_config.rbs +19 -0
- data/sig/pvectl/parsers/smart_text.rbs +7 -0
- data/sig/pvectl/plugin_loader.rbs +25 -0
- data/sig/pvectl/presenters/apt_package.rbs +19 -0
- data/sig/pvectl/presenters/backup.rbs +25 -0
- data/sig/pvectl/presenters/base.rbs +41 -0
- data/sig/pvectl/presenters/capability.rbs +19 -0
- data/sig/pvectl/presenters/config/context.rbs +17 -0
- data/sig/pvectl/presenters/container.rbs +78 -0
- data/sig/pvectl/presenters/container_operation_result.rbs +19 -0
- data/sig/pvectl/presenters/disk.rbs +31 -0
- data/sig/pvectl/presenters/dns_config.rbs +13 -0
- data/sig/pvectl/presenters/hosts_file.rbs +13 -0
- data/sig/pvectl/presenters/journal_entry.rbs +11 -0
- data/sig/pvectl/presenters/node.rbs +118 -0
- data/sig/pvectl/presenters/node_operation_result.rbs +11 -0
- data/sig/pvectl/presenters/operation_result.rbs +17 -0
- data/sig/pvectl/presenters/service.rbs +15 -0
- data/sig/pvectl/presenters/snapshot.rbs +35 -0
- data/sig/pvectl/presenters/snapshot_operation_result.rbs +27 -0
- data/sig/pvectl/presenters/storage.rbs +59 -0
- data/sig/pvectl/presenters/subscription.rbs +36 -0
- data/sig/pvectl/presenters/syslog_entry.rbs +11 -0
- data/sig/pvectl/presenters/task_entry.rbs +21 -0
- data/sig/pvectl/presenters/task_log_line.rbs +11 -0
- data/sig/pvectl/presenters/template.rbs +15 -0
- data/sig/pvectl/presenters/time_config.rbs +19 -0
- data/sig/pvectl/presenters/top_container.rbs +17 -0
- data/sig/pvectl/presenters/top_node.rbs +17 -0
- data/sig/pvectl/presenters/top_presenter.rbs +13 -0
- data/sig/pvectl/presenters/top_vm.rbs +17 -0
- data/sig/pvectl/presenters/vm.rbs +91 -0
- data/sig/pvectl/presenters/vm_operation_result.rbs +19 -0
- data/sig/pvectl/presenters/volume.rbs +23 -0
- data/sig/pvectl/presenters/volume_operation_result.rbs +11 -0
- data/sig/pvectl/repositories/apt.rbs +17 -0
- data/sig/pvectl/repositories/backup.rbs +27 -0
- data/sig/pvectl/repositories/base.rbs +23 -0
- data/sig/pvectl/repositories/capabilities.rbs +20 -0
- data/sig/pvectl/repositories/container.rbs +63 -0
- data/sig/pvectl/repositories/disk.rbs +17 -0
- data/sig/pvectl/repositories/dns.rbs +13 -0
- data/sig/pvectl/repositories/hosts.rbs +13 -0
- data/sig/pvectl/repositories/journal.rbs +7 -0
- data/sig/pvectl/repositories/node.rbs +68 -0
- data/sig/pvectl/repositories/service.rbs +27 -0
- data/sig/pvectl/repositories/snapshot.rbs +19 -0
- data/sig/pvectl/repositories/storage.rbs +37 -0
- data/sig/pvectl/repositories/subscription.rbs +17 -0
- data/sig/pvectl/repositories/syslog.rbs +7 -0
- data/sig/pvectl/repositories/task.rbs +19 -0
- data/sig/pvectl/repositories/task_list.rbs +7 -0
- data/sig/pvectl/repositories/task_log.rbs +11 -0
- data/sig/pvectl/repositories/time_config.rbs +13 -0
- data/sig/pvectl/repositories/vm.rbs +85 -0
- data/sig/pvectl/repositories/volume.rbs +43 -0
- data/sig/pvectl/selectors/base.rbs +37 -0
- data/sig/pvectl/selectors/container.rbs +19 -0
- data/sig/pvectl/selectors/disk.rbs +13 -0
- data/sig/pvectl/selectors/vm.rbs +19 -0
- data/sig/pvectl/selectors/volume.rbs +13 -0
- data/sig/pvectl/services/backup.rbs +27 -0
- data/sig/pvectl/services/clone_container.rbs +35 -0
- data/sig/pvectl/services/clone_vm.rbs +35 -0
- data/sig/pvectl/services/cloudinit.rbs +19 -0
- data/sig/pvectl/services/console.rbs +23 -0
- data/sig/pvectl/services/container_lifecycle.rbs +26 -0
- data/sig/pvectl/services/create_container.rbs +64 -0
- data/sig/pvectl/services/create_vm.rbs +72 -0
- data/sig/pvectl/services/edit_container.rbs +17 -0
- data/sig/pvectl/services/edit_dns.rbs +23 -0
- data/sig/pvectl/services/edit_hosts.rbs +13 -0
- data/sig/pvectl/services/edit_node.rbs +21 -0
- data/sig/pvectl/services/edit_vm.rbs +17 -0
- data/sig/pvectl/services/edit_volume.rbs +18 -0
- data/sig/pvectl/services/get/resource_service.rbs +23 -0
- data/sig/pvectl/services/move_disk.rbs +21 -0
- data/sig/pvectl/services/pull_config.rbs +18 -0
- data/sig/pvectl/services/push_config.rbs +37 -0
- data/sig/pvectl/services/resize_volume.rbs +47 -0
- data/sig/pvectl/services/resource_delete.rbs +27 -0
- data/sig/pvectl/services/resource_migration.rbs +29 -0
- data/sig/pvectl/services/sendkey.rbs +19 -0
- data/sig/pvectl/services/service_lifecycle.rbs +17 -0
- data/sig/pvectl/services/set_container.rbs +14 -0
- data/sig/pvectl/services/set_node.rbs +23 -0
- data/sig/pvectl/services/set_vm.rbs +14 -0
- data/sig/pvectl/services/set_volume.rbs +12 -0
- data/sig/pvectl/services/snapshot.rbs +35 -0
- data/sig/pvectl/services/task_listing.rbs +13 -0
- data/sig/pvectl/services/unlink_disk.rbs +17 -0
- data/sig/pvectl/services/vm_lifecycle.rbs +26 -0
- data/sig/pvectl/services/wakeonlan.rbs +17 -0
- data/sig/pvectl/utils/resource_resolver.rbs +17 -0
- data/sig/pvectl/wizards/create_container.rbs +21 -0
- data/sig/pvectl/wizards/create_vm.rbs +21 -0
- data/sig/pvectl.rbs +9 -0
- metadata +675 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module Get
|
|
4
|
+
class WatchLoop
|
|
5
|
+
DEFAULT_INTERVAL: Integer
|
|
6
|
+
|
|
7
|
+
MIN_INTERVAL: Integer
|
|
8
|
+
|
|
9
|
+
attr_reader interval: Integer
|
|
10
|
+
|
|
11
|
+
def initialize: (?interval: Integer | Float, ?output: IO) -> void
|
|
12
|
+
|
|
13
|
+
def run: () { () -> void } -> void
|
|
14
|
+
|
|
15
|
+
def stop: () -> void
|
|
16
|
+
|
|
17
|
+
def running?: () -> bool
|
|
18
|
+
|
|
19
|
+
private
|
|
20
|
+
|
|
21
|
+
def clear_screen: () -> void
|
|
22
|
+
|
|
23
|
+
def print_header: () -> void
|
|
24
|
+
|
|
25
|
+
def tty?: () -> bool
|
|
26
|
+
|
|
27
|
+
def setup_signal_handler: () -> void
|
|
28
|
+
|
|
29
|
+
def sleep_interruptible: (Integer duration) -> void
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module IrreversibleCommand
|
|
4
|
+
module ClassMethods
|
|
5
|
+
def execute: (String? resource_type, Array[String] | String? resource_ids, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def initialize: (String? resource_type, Array[String] | String? resource_ids, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
9
|
+
def execute: () -> Integer
|
|
10
|
+
|
|
11
|
+
private
|
|
12
|
+
|
|
13
|
+
def resource_type_symbol: () -> Symbol
|
|
14
|
+
def supported_types: () -> Array[String]
|
|
15
|
+
def supported_resource?: () -> bool
|
|
16
|
+
def perform_operation: () -> Integer
|
|
17
|
+
def resolve_resources: (Pvectl::Connection connection) -> Array[Models::Vm | Models::Container]
|
|
18
|
+
def build_repository: (Pvectl::Connection connection) -> Repositories::Base
|
|
19
|
+
def selector_strings: () -> Array[String]
|
|
20
|
+
def apply_selectors: (Array[Models::Vm | Models::Container] resources) -> Array[Models::Vm | Models::Container]
|
|
21
|
+
def confirm_operation: (Array[Models::Vm | Models::Container] resources) -> bool
|
|
22
|
+
def perform_service_call: (Array[Models::Vm | Models::Container] resources, Pvectl::Connection connection) -> Array[Models::OperationResult]
|
|
23
|
+
def build_presenter: () -> Presenters::Base
|
|
24
|
+
def load_config: () -> void
|
|
25
|
+
def service_options: () -> Hash[Symbol, untyped]
|
|
26
|
+
def output_results: (Array[Models::OperationResult] results) -> void
|
|
27
|
+
def determine_exit_code: (Array[Models::OperationResult] results) -> Integer
|
|
28
|
+
def usage_error: (String message) -> Integer
|
|
29
|
+
def no_resources_found: () -> Integer
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module Logs
|
|
4
|
+
class Command
|
|
5
|
+
VM_CT_TYPES: Array[String]
|
|
6
|
+
|
|
7
|
+
NODE_TYPES: Array[String]
|
|
8
|
+
|
|
9
|
+
def self.register: (untyped cli) -> void
|
|
10
|
+
|
|
11
|
+
def self.execute: (String? resource_type, String? resource_id, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
12
|
+
|
|
13
|
+
def initialize: (String? resource_type, String? resource_id, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options, ?handler: untyped?, ?journal_handler: untyped?, ?registry: Class) -> void
|
|
14
|
+
|
|
15
|
+
def execute: () -> Integer
|
|
16
|
+
|
|
17
|
+
private
|
|
18
|
+
|
|
19
|
+
def resolve_handler: () -> untyped?
|
|
20
|
+
|
|
21
|
+
def fetch_data: (untyped handler) -> Array[untyped]
|
|
22
|
+
|
|
23
|
+
def missing_resource_type_error: () -> Integer
|
|
24
|
+
|
|
25
|
+
def missing_resource_id_error: () -> Integer
|
|
26
|
+
|
|
27
|
+
def unknown_resource_error: () -> Integer
|
|
28
|
+
|
|
29
|
+
def format_output: (Array[untyped] models, untyped presenter) -> String
|
|
30
|
+
|
|
31
|
+
def determine_color_enabled: () -> bool
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module Logs
|
|
4
|
+
module Handlers
|
|
5
|
+
class Journal
|
|
6
|
+
include Logs::ResourceHandler
|
|
7
|
+
|
|
8
|
+
def initialize: (?repository: Repositories::Journal?) -> void
|
|
9
|
+
|
|
10
|
+
def list: (node: String, ?limit: Integer, ?since: String?, ?until_time: String?, **untyped) -> Array[Models::JournalEntry]
|
|
11
|
+
|
|
12
|
+
def presenter: () -> Presenters::JournalEntry
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def repository: () -> Repositories::Journal
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module Logs
|
|
4
|
+
module Handlers
|
|
5
|
+
class Syslog
|
|
6
|
+
include Logs::ResourceHandler
|
|
7
|
+
|
|
8
|
+
def initialize: (?repository: Repositories::Syslog?) -> void
|
|
9
|
+
|
|
10
|
+
def list: (node: String, ?limit: Integer, ?since: String?, ?until_time: String?, ?service: String?, **untyped) -> Array[Models::SyslogEntry]
|
|
11
|
+
|
|
12
|
+
def presenter: () -> Presenters::SyslogEntry
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def repository: () -> Repositories::Syslog
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module Logs
|
|
4
|
+
module Handlers
|
|
5
|
+
class TaskDetail
|
|
6
|
+
include Logs::ResourceHandler
|
|
7
|
+
|
|
8
|
+
def initialize: (?repository: Repositories::TaskLog?) -> void
|
|
9
|
+
|
|
10
|
+
def list: (upid: String, ?start: Integer, ?limit: Integer, **untyped) -> Array[Models::TaskLogLine]
|
|
11
|
+
|
|
12
|
+
def presenter: () -> Presenters::TaskLogLine
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def repository: () -> Repositories::TaskLog
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module Logs
|
|
4
|
+
module Handlers
|
|
5
|
+
class TaskLogs
|
|
6
|
+
include Logs::ResourceHandler
|
|
7
|
+
|
|
8
|
+
RESOURCE_REPOS: Hash[String, ^() -> singleton(Repositories::Vm) | singleton(Repositories::Container)]
|
|
9
|
+
|
|
10
|
+
def initialize: (?task_list_repository: Repositories::TaskList?, ?vm_repository: untyped, ?node_repository: Repositories::Node?) -> void
|
|
11
|
+
|
|
12
|
+
def list: (vmid: Integer, ?resource_type: String, ?all_nodes: bool, ?limit: Integer, ?since: String?, ?until_time: String?, ?type_filter: String?, ?status_filter: String?, **untyped) -> Array[Models::TaskEntry]
|
|
13
|
+
|
|
14
|
+
def presenter: () -> Presenters::TaskEntry
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def resolve_node: (Integer vmid, String resource_type) -> String
|
|
19
|
+
|
|
20
|
+
def resource_repository: (String resource_type) -> untyped
|
|
21
|
+
|
|
22
|
+
def build_resource_repository: (String resource_type) -> untyped
|
|
23
|
+
|
|
24
|
+
def service: () -> Services::TaskListing
|
|
25
|
+
|
|
26
|
+
def task_list_repository: () -> Repositories::TaskList
|
|
27
|
+
|
|
28
|
+
def node_repository: () -> Repositories::Node
|
|
29
|
+
|
|
30
|
+
def build_connection: () -> Connection
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module MigrateCommand
|
|
4
|
+
NODE_NAME_FORMAT: Regexp
|
|
5
|
+
|
|
6
|
+
module ClassMethods
|
|
7
|
+
def execute: (Array[String] args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def self.included: (Class base) -> void
|
|
11
|
+
|
|
12
|
+
def initialize: (Array[String] args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
13
|
+
|
|
14
|
+
def execute: () -> Integer
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def resource_type_symbol: () -> Symbol
|
|
19
|
+
|
|
20
|
+
def restart_not_allowed?: () -> bool
|
|
21
|
+
|
|
22
|
+
def perform_operation: () -> Integer
|
|
23
|
+
|
|
24
|
+
def resolve_resources: (untyped connection) -> Array[untyped]
|
|
25
|
+
|
|
26
|
+
def selector_strings: () -> Array[String]
|
|
27
|
+
|
|
28
|
+
def apply_selectors: (Array[untyped] resources) -> Array[untyped]
|
|
29
|
+
|
|
30
|
+
def confirm_operation: (Array[untyped] resources, String target) -> bool
|
|
31
|
+
|
|
32
|
+
def load_config: () -> void
|
|
33
|
+
|
|
34
|
+
def service_options: () -> Hash[Symbol, untyped]
|
|
35
|
+
|
|
36
|
+
def output_results: (Array[untyped] results) -> void
|
|
37
|
+
|
|
38
|
+
def determine_exit_code: (Array[untyped] results) -> Integer
|
|
39
|
+
|
|
40
|
+
def usage_error: (String message) -> Integer
|
|
41
|
+
|
|
42
|
+
def no_resources_found: () -> Integer
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module MoveDiskCommand
|
|
4
|
+
VALID_FORMATS: Array[String]
|
|
5
|
+
|
|
6
|
+
module ClassMethods
|
|
7
|
+
def execute: (Array[String] args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def self.included: (Class base) -> void
|
|
11
|
+
|
|
12
|
+
def initialize: (Array[String] args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
13
|
+
|
|
14
|
+
def execute: () -> Integer
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def resource_type_symbol: () -> Symbol
|
|
19
|
+
|
|
20
|
+
def id_label: () -> String
|
|
21
|
+
|
|
22
|
+
def disk_label: () -> String
|
|
23
|
+
|
|
24
|
+
def perform_operation: (Integer id, String disk, String target) -> Integer
|
|
25
|
+
|
|
26
|
+
def resolve_resource: (untyped connection, Integer id) -> (Models::Vm | Models::Container)?
|
|
27
|
+
|
|
28
|
+
def build_service: (untyped connection) -> Services::MoveDisk
|
|
29
|
+
|
|
30
|
+
def service_options: () -> Hash[Symbol, untyped]
|
|
31
|
+
|
|
32
|
+
def confirm_operation: (Models::Vm | Models::Container resource, String disk, String target) -> bool
|
|
33
|
+
|
|
34
|
+
def load_config: () -> void
|
|
35
|
+
|
|
36
|
+
def output_result: (Models::VmOperationResult | Models::ContainerOperationResult result) -> void
|
|
37
|
+
|
|
38
|
+
def usage_error: (String message) -> Integer
|
|
39
|
+
|
|
40
|
+
def resource_not_found: (Integer id) -> Integer
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
class Ping
|
|
4
|
+
def self.register: (untyped cli) -> void
|
|
5
|
+
|
|
6
|
+
def self.execute: (Hash[Symbol, untyped] global_options) -> Integer
|
|
7
|
+
|
|
8
|
+
def initialize: (Hash[Symbol, untyped] global_options) -> void
|
|
9
|
+
|
|
10
|
+
def execute: () -> Integer
|
|
11
|
+
|
|
12
|
+
private
|
|
13
|
+
|
|
14
|
+
attr_reader global_options: Hash[Symbol, untyped]
|
|
15
|
+
attr_reader output_format: String
|
|
16
|
+
attr_reader color_flag: bool?
|
|
17
|
+
|
|
18
|
+
def load_config: () -> void
|
|
19
|
+
|
|
20
|
+
def server_url: () -> String
|
|
21
|
+
|
|
22
|
+
def measure_ping: (untyped connection) -> Hash[Symbol, untyped]
|
|
23
|
+
|
|
24
|
+
def output_result: (Hash[Symbol, untyped] result, String server) -> void
|
|
25
|
+
|
|
26
|
+
def output_simple: (String server) -> void
|
|
27
|
+
|
|
28
|
+
def output_wide: (Hash[Symbol, untyped] result, String server) -> void
|
|
29
|
+
|
|
30
|
+
def output_json: (Hash[Symbol, untyped] result, String server) -> void
|
|
31
|
+
|
|
32
|
+
def output_yaml: (Hash[Symbol, untyped] result, String server) -> void
|
|
33
|
+
|
|
34
|
+
def output_error: (String message, String server) -> void
|
|
35
|
+
|
|
36
|
+
def extract_host: (String server_url) -> String
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
class Pull
|
|
4
|
+
RESOURCE_TYPES: Hash[String, Symbol]
|
|
5
|
+
FILE_PREFIXES: Hash[Symbol, String]
|
|
6
|
+
|
|
7
|
+
@args: Array[String]
|
|
8
|
+
@options: Hash[Symbol, untyped]
|
|
9
|
+
@global_options: Hash[Symbol, untyped]
|
|
10
|
+
@config: untyped
|
|
11
|
+
|
|
12
|
+
def self.register: (untyped cli) -> void
|
|
13
|
+
def initialize: (Array[String] args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
14
|
+
def execute: () -> Integer
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def build_service: (untyped connection) -> Services::PullConfig
|
|
19
|
+
def build_selector: (Symbol type) -> untyped
|
|
20
|
+
def write_output: (Array[Hash[Symbol, untyped]] manifests, Symbol type, String? output) -> void
|
|
21
|
+
def build_file_operations: (Array[Hash[Symbol, untyped]] manifests, Symbol type, String output) -> Array[Hash[Symbol, untyped]]
|
|
22
|
+
def build_operation: (Hash[Symbol, untyped] manifest, String path, Symbol type) -> Hash[Symbol, untyped]
|
|
23
|
+
def compute_manifest_diff: (String old_yaml, String new_yaml, Symbol type) -> Hash[Symbol, untyped]?
|
|
24
|
+
def display_pull_plan: (Array[Hash[Symbol, untyped]] operations, Symbol type) -> void
|
|
25
|
+
def diff_has_changes?: (Hash[Symbol, untyped] diff) -> bool
|
|
26
|
+
def apply_file_operations: (Array[Hash[Symbol, untyped]] operations) -> void
|
|
27
|
+
def infer_ids_from_directory: (String directory, Symbol type) -> Array[Integer]
|
|
28
|
+
def directory_output?: (String path) -> bool
|
|
29
|
+
def load_config: () -> void
|
|
30
|
+
def usage_error: (String message) -> Integer
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
class Push
|
|
4
|
+
RESOURCE_TYPES: Hash[String, Symbol]
|
|
5
|
+
|
|
6
|
+
@args: Array[String]
|
|
7
|
+
@options: Hash[Symbol, untyped]
|
|
8
|
+
@global_options: Hash[Symbol, untyped]
|
|
9
|
+
@config: untyped
|
|
10
|
+
@stdin_mode: bool
|
|
11
|
+
|
|
12
|
+
def self.register: (untyped cli) -> void
|
|
13
|
+
def initialize: (Array[String] args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
14
|
+
def execute: () -> Integer
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def read_input: () -> Array[Hash[Symbol, untyped]]
|
|
19
|
+
def read_stdin: () -> Array[Hash[Symbol, untyped]]
|
|
20
|
+
def parse_resource_type: (Array[String] args) -> Symbol?
|
|
21
|
+
def collect_yaml_contents: (Array[String] paths) -> Array[Hash[Symbol, untyped]]
|
|
22
|
+
def display_plans: (Array[Hash[Symbol, untyped]] plans) -> void
|
|
23
|
+
def refresh_manifests: (Array[Hash[Symbol, untyped]] results, Array[Hash[Symbol, untyped]] plans, Services::PullConfig pull_service) -> void
|
|
24
|
+
def refresh_unchanged_manifests: (Array[Hash[Symbol, untyped]] unchanged, Services::PullConfig pull_service) -> void
|
|
25
|
+
def refresh_manifest_file: (String path, Symbol type, Integer vmid, Services::PullConfig pull_service) -> void
|
|
26
|
+
def type_label_for: (Hash[Symbol, untyped] result) -> String
|
|
27
|
+
def build_services: (untyped connection) -> [Services::PushConfig, Services::PullConfig]
|
|
28
|
+
def load_config: () -> void
|
|
29
|
+
def usage_error: (String message) -> Integer
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
module ResourceLifecycleCommand
|
|
4
|
+
module ClassMethods
|
|
5
|
+
def execute: (String? resource_type, Array[String] | String | nil resource_ids, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def self.included: (Class base) -> void
|
|
9
|
+
|
|
10
|
+
def initialize: (String? resource_type, Array[String] | String | nil resource_ids, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
11
|
+
|
|
12
|
+
def execute: () -> Integer
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def supported_resources: () -> Array[String]
|
|
17
|
+
|
|
18
|
+
def resource_label: () -> String
|
|
19
|
+
|
|
20
|
+
def resource_id_label: () -> String
|
|
21
|
+
|
|
22
|
+
def build_repository: (untyped connection) -> untyped
|
|
23
|
+
|
|
24
|
+
def build_service: (untyped repo, untyped task_repo, Hash[Symbol, untyped] options) -> untyped
|
|
25
|
+
|
|
26
|
+
def build_presenter: () -> untyped
|
|
27
|
+
|
|
28
|
+
def build_selector: (Array[String] strings) -> untyped
|
|
29
|
+
|
|
30
|
+
def perform_operation: () -> Integer
|
|
31
|
+
|
|
32
|
+
def resolve_resources: (untyped repo) -> Array[untyped]
|
|
33
|
+
|
|
34
|
+
def selector_strings: () -> Array[String]
|
|
35
|
+
|
|
36
|
+
def apply_selectors: (Array[untyped] resources) -> Array[untyped]
|
|
37
|
+
|
|
38
|
+
def confirm_operation: (Array[untyped] resources) -> bool
|
|
39
|
+
|
|
40
|
+
def operation_name: () -> Symbol
|
|
41
|
+
|
|
42
|
+
def load_config: () -> void
|
|
43
|
+
|
|
44
|
+
def service_options: () -> Hash[Symbol, untyped]
|
|
45
|
+
|
|
46
|
+
def output_results: (Array[untyped] results) -> void
|
|
47
|
+
|
|
48
|
+
def determine_exit_code: (Array[untyped] results) -> Integer
|
|
49
|
+
|
|
50
|
+
def usage_error: (String message) -> Integer
|
|
51
|
+
|
|
52
|
+
def no_resources_found: () -> Integer
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
class ResourceRegistry
|
|
4
|
+
self.@handlers: Hash[String, singleton(ResourceRegistry)]
|
|
5
|
+
|
|
6
|
+
def self.inherited: (singleton(ResourceRegistry) subclass) -> void
|
|
7
|
+
|
|
8
|
+
def self.register: (String | Symbol resource_type, untyped handler_class, ?aliases: Array[String | Symbol]) -> void
|
|
9
|
+
|
|
10
|
+
def self.for: (String | Symbol | nil resource_type) -> untyped
|
|
11
|
+
|
|
12
|
+
def self.registered_types: () -> Array[String]
|
|
13
|
+
|
|
14
|
+
def self.registered?: (String | Symbol resource_type) -> bool
|
|
15
|
+
|
|
16
|
+
def self.reset!: () -> void
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
class RestoreBackup
|
|
4
|
+
def self.register: (untyped cli) -> void
|
|
5
|
+
|
|
6
|
+
def self.execute: (String? resource_type, String? volid, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
7
|
+
|
|
8
|
+
def initialize: (String? resource_type, String? volid, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
9
|
+
|
|
10
|
+
def execute: () -> Integer
|
|
11
|
+
|
|
12
|
+
private
|
|
13
|
+
|
|
14
|
+
def perform_operation: () -> Integer
|
|
15
|
+
|
|
16
|
+
def load_config: () -> void
|
|
17
|
+
|
|
18
|
+
def service_options: () -> Hash[Symbol, untyped]
|
|
19
|
+
|
|
20
|
+
def output_results: (Array[untyped] results) -> void
|
|
21
|
+
|
|
22
|
+
def determine_exit_code: (Array[untyped] results) -> Integer
|
|
23
|
+
|
|
24
|
+
def usage_error: (String message) -> Integer
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
module Pvectl
|
|
2
|
+
module Commands
|
|
3
|
+
class RollbackSnapshot
|
|
4
|
+
SUPPORTED_RESOURCES: Array[String]
|
|
5
|
+
|
|
6
|
+
def self.register: (untyped cli) -> void
|
|
7
|
+
|
|
8
|
+
def self.execute: (String? resource_type, Array[String] | String | nil args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> Integer
|
|
9
|
+
|
|
10
|
+
def initialize: (String? resource_type, Array[String] | String | nil args, Hash[Symbol, untyped] options, Hash[Symbol, untyped] global_options) -> void
|
|
11
|
+
|
|
12
|
+
def execute: () -> Integer
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def parse_args!: () -> void
|
|
17
|
+
|
|
18
|
+
def perform_operation: () -> Integer
|
|
19
|
+
|
|
20
|
+
def load_config: () -> void
|
|
21
|
+
|
|
22
|
+
def service_options: () -> Hash[Symbol, untyped]
|
|
23
|
+
|
|
24
|
+
def output_results: (Array[untyped] results) -> void
|
|
25
|
+
|
|
26
|
+
def determine_exit_code: (Array[untyped] results) -> Integer
|
|
27
|
+
|
|
28
|
+
def usage_error: (String message) -> Integer
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|