Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var AddVMCmd = &subcommands.Command{ UsageLine: "vm [Options..]", ShortDesc: "Add a VM on a host", LongDesc: `Add a VM on a host Examples: shivas add vm -f vm.json Add a VM on a host by reading a JSON file input. [WARNING]: machineLseId is a required field in json, all other output only fields will be ignored. Specify additional settings, e.g. vlan, ip via command line parameters along with JSON input shivas add vm -name vm1 -host host1 -mac 12:34:56 -os chrome-version-1 Add a VM by parameters.`, CommandRun: func() subcommands.CommandRun { c := &addVM{} c.authFlags.Register(&c.Flags, site.DefaultAuthOptions) c.envFlags.Register(&c.Flags) c.commonFlags.Register(&c.Flags) c.Flags.StringVar(&c.newSpecsFile, "f", "", cmdhelp.VMFileText) c.Flags.StringVar(&c.hostName, "host", "", "hostname of the host to add the VM") c.Flags.StringVar(&c.vmName, "name", "", "hostname/name of the VM") c.Flags.StringVar(&c.macAddress, "mac", "", "mac address of the VM") c.Flags.StringVar(&c.osVersion, "os", "", "os version of the VM") c.Flags.StringVar(&c.tags, "tags", "", "comma separated tags. You can only append/add new tags here.") c.Flags.StringVar(&c.deploymentTicket, "ticket", "", "the deployment ticket for this vm") c.Flags.StringVar(&c.vlanName, "vlan", "", "name of the vlan to assign this vm to") c.Flags.StringVar(&c.ip, "ip", "", "the ip to assign the vm to") return c }, }
AddVMCmd add a vm on a host.
View Source
var DeleteVMCmd = &subcommands.Command{ UsageLine: "vm {VM name}", ShortDesc: "Delete a VM on a host", LongDesc: `Delete a VM on a host. Example: shivas delete vm {VM name} Deletes the VM on a host.`, CommandRun: func() subcommands.CommandRun { c := &deleteVM{} c.authFlags.Register(&c.Flags, site.DefaultAuthOptions) c.envFlags.Register(&c.Flags) return c }, }
DeleteVMCmd deletes vm on a host.
View Source
var GetVMCmd = &subcommands.Command{ UsageLine: "vm ...", ShortDesc: "Get VM details by filters", LongDesc: `Get VM details by filters. Example: shivas get vm {name1} {name2} shivas get vm -zone atl97 -vlan browser:1 Gets the vm and prints the output in the specified format.`, CommandRun: func() subcommands.CommandRun { c := &getVM{} c.authFlags.Register(&c.Flags, site.DefaultAuthOptions) c.envFlags.Register(&c.Flags) c.outputFlags.Register(&c.Flags) c.Flags.IntVar(&c.pageSize, "n", 0, cmdhelp.ListPageSizeDesc) c.Flags.BoolVar(&c.keysOnly, "keys", false, cmdhelp.KeysOnlyText) c.Flags.Var(flag.StringSlice(&c.zones), "zone", "Name(s) of a zone to filter by. Can be specified multiple times."+cmdhelp.ZoneFilterHelpText) c.Flags.Var(flag.StringSlice(&c.vlans), "vlan", "Name(s) of a vlan to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.hosts), "host", "Name(s) of a host to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.oses), "os", "Name(s) of an os to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.tags), "tag", "Name(s) of a tag to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.states), "state", "Name(s) of a state to filter by. Can be specified multiple times."+cmdhelp.StateFilterHelpText) return c }, }
GetVMCmd get VM by given name.
View Source
var ListVMSlotCmd = &subcommands.Command{ UsageLine: "vm-slots ...", ShortDesc: "Get free VM slots", LongDesc: `Get free VM slots by filters. Examples: shivas get vm-slots -n 5 -zone atl97 -man apple -os ESXi Fetches 5 vm slots by manufacturer of chrome platform. `, CommandRun: func() subcommands.CommandRun { c := &listVMSlot{} c.authFlags.Register(&c.Flags, site.DefaultAuthOptions) c.envFlags.Register(&c.Flags) c.outputFlags.Register(&c.Flags) c.Flags.IntVar(&c.number, "n", 100000, "the number of free vm slots to fetch.") c.Flags.Var(flag.StringSlice(&c.zones), "zone", "Name(s) of a zone to filter by. Can be specified multiple times."+cmdhelp.ZoneFilterHelpText) c.Flags.Var(flag.StringSlice(&c.racks), "rack", "Name(s) of a rack to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.machines), "machine", "Name(s) of a machine to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.prototypes), "prototype", "Name(s) of a host prototype to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.manufacturers), "man", "Name(s) of a manufacturer to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.oses), "os", "Name(s) of an os to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.nics), "nic", "Name(s) of a nic to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.vdcs), "vdc", "Name(s) of a vdc to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.tags), "tag", "Name(s) of a tag to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.vlans), "vlan", "Name(s) of a vlan to filter by. Can be specified multiple times.") c.Flags.Var(flag.StringSlice(&c.states), "state", "Name(s) of a state to filter by. Can be specified multiple times."+cmdhelp.StateFilterHelpText) return c }, }
ListVMSlotCmd returns vm slots by some filters.
View Source
var UpdateVMCmd = &subcommands.Command{ UsageLine: "vm [Options...]", ShortDesc: "Update a VM on a host", LongDesc: `Update a VM on a host Examples: shivas update vm -f vm.json Update a VM on a host by reading a JSON file input. [WARNING]: machineLseId is a required field in json, all other output only fields will be ignored. Specify additional settings, e.g. vlan, ip, state via command line parameters along with JSON input shivas update vm -name cr22 -os windows Partial update a vm by parameters. Only specified parameters will be updated in the vm.`, CommandRun: func() subcommands.CommandRun { c := &updateVM{} c.authFlags.Register(&c.Flags, site.DefaultAuthOptions) c.envFlags.Register(&c.Flags) c.commonFlags.Register(&c.Flags) c.Flags.StringVar(&c.newSpecsFile, "f", "", cmdhelp.VMFileText) c.Flags.StringVar(&c.hostName, "host", "", "hostname of the host to add the VM") c.Flags.StringVar(&c.vmName, "name", "", "hostname/name of the VM") c.Flags.StringVar(&c.macAddress, "mac", "", "mac address of the VM. "+cmdhelp.ClearFieldHelpText) c.Flags.StringVar(&c.osVersion, "os", "", "os version of the VM. "+cmdhelp.ClearFieldHelpText) c.Flags.StringVar(&c.tags, "tags", "", "comma separated tags. You can only append/add new tags here. "+cmdhelp.ClearFieldHelpText) c.Flags.StringVar(&c.description, "desc", "", "description for the vm. "+cmdhelp.ClearFieldHelpText) c.Flags.StringVar(&c.deploymentTicket, "ticket", "", "the deployment ticket for this vm. "+cmdhelp.ClearFieldHelpText) c.Flags.StringVar(&c.vlanName, "vlan", "", "name of the vlan to assign this vm to") c.Flags.BoolVar(&c.deleteVlan, "delete-vlan", false, "if deleting the ip assignment for the vm") c.Flags.StringVar(&c.ip, "ip", "", "the ip to assign the vm to") c.Flags.StringVar(&c.state, "state", "", cmdhelp.StateHelp) return c }, }
UpdateVMCmd update VM on a host.
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.