Files
iris-context/commands/sys/vultr_cli.go
T
VERSE ebde9ba68f refactor(commands): separate commands and its core into two folders (#32)
- I think it would be better if one for commands only, one for the spec
handling core logic so people won't be confused by the core logic inside
the commands folder (cleaner I guess)
- Regen docs
2026-07-05 11:27:30 +07:00

71 lines
4.2 KiB
Go

package sys
import (
"github.com/versenilvis/iris/spec"
)
func init() {
spec.Register(&spec.Spec{
Name: "vultr-cli",
Description: "Bare Metal ID",
Subcommands: []spec.Subcommand{
{Name: "account", Description: "Retrieve information about your account"},
{Name: "apps", Description: "Display all available applications"},
{Name: "list", Description: "List applications"},
{Name: "backups", Description: "Display backups"},
{Name: "get", Description: "Get backup"},
{Name: "bare-metal", Description: "Bare-metal is used to access bare metal server commands"},
{Name: "app", Description: "App is used to access bare metal server application commands"},
{Name: "change", Description: "Change a bare metal server's application"},
{Name: "appID", Description: "Application ID"},
{Name: "bandwidth", Description: "Get a bare metal server's bandwidth usage"},
{Name: "create", Description: "Create a bare metal server"},
{Name: "delete", Description: "Delete a bare metal server"},
{Name: "halt", Description: "Halt a bare metal server"},
{Name: "image", Description: "Image is used to access bare metal server image commands"},
{Name: "imageID", Description: "Image ID"},
{Name: "ipv4", Description: "List the IPv4 information of a bare metal server"},
{Name: "ipv6", Description: "List the IPv6 information of a bare metal server"},
{Name: "os", Description: "Os is used to access bare metal server operating system commands"},
{Name: "reinstall", Description: "Reinstall the operating system on a bare metal server"},
{Name: "start", Description: "Start a bare metal server"},
{Name: "user-data", Description: "User-data is used to access bare metal server user-data commands"},
{Name: "vnc", Description: "Get a bare metal server's VNC url by <bareMetalID>"},
{Name: "block-storage", Description: "Block storage commands"},
{Name: "attach", Description: "Attaches a block storage to an instance"},
{Name: "detach", Description: "Detaches a block storage from an instance"},
{Name: "label", Description: "Sets a label for a block storage"},
{Name: "resize", Description: "Resize a block storage"},
{Name: "completion", Description: "Generate the autocompletion script for the specified shell"},
{Name: "bash", Description: "Generate the autocompletion script for bash"},
{Name: "fish", Description: "Generate the autocompletion script for fish"},
{Name: "powershell", Description: "Generate the autocompletion script for powershell"},
{Name: "zsh", Description: "Generate the autocompletion script for zsh"},
{Name: "dns", Description: "Dns is used to access dns commands"},
{Name: "domain", Description: "Dns domain"},
{Name: "record", Description: "Dns record"},
{Name: "firewall", Description: "Firewall is used to access firewall commands"},
{Name: "group", Description: "Group is used to access firewall group commands"},
{Name: "rule", Description: "Rule is used to access firewall rule commands"},
{Name: "help", Description: "Help about any command"},
{Name: "instance", Description: "Commands to interact with instances on vultr"},
{Name: "iso", Description: "Iso is used to access iso commands"},
{Name: "kubernetes", Description: "Kubernetes is used to access kubernetes commands"},
{Name: "load-balancer", Description: "Load balancer commands"},
{Name: "network", Description: "Network interacts with network actions"},
{Name: "object-storage", Description: "Object storage commands"},
{Name: "plans", Description: "Get information about Vultr plans"},
{Name: "regions", Description: "Get regions"},
{Name: "reserved-ip", Description: "Reserved-ip lets you interact with reserved-ip"},
{Name: "script", Description: "Startup script commands"},
{Name: "snapshot", Description: "Snapshot commands"},
},
Options: []spec.Option{
{Name: "--os", Description: "ID of the operating system that will be installed on the server"},
{Name: "--persistent_pxe", Description: "Enable persistent_pxe"},
{Name: "--plan", Description: "ID of the plan that the server will subscribe to"},
{Name: "--region", Description: "ID of the region where the server will be created"},
},
})
}