#compdef boot2docker # Boot2docker autocompletion for oh-my-zsh # Requires: Boot2docker installed # Author: Manfred Touron (@moul) local -a _1st_arguments _1st_arguments=( "init":"Create a new Boot2Docker VM." "up":"Start VM from any states." "start":"Start VM from any states." "boot":"Start VM from any states." "ssh":"[ssh-command] Login to VM via SSH." "save":"Suspend VM and save state to disk." "suspend":"Suspend VM and save state to disk." "down":"Gracefully shutdown the VM." "stop":"Gracefully shutdown the VM." "halt":"Gracefully shutdown the VM." "restart":"Gracefully reboot the VM." "poweroff":"Forcefully power off the VM (may corrupt disk image)." "reset":"Forcefully power cycle the VM (may corrupt disk image)." "delete":"Delete Boot2Docker VM and its disk image." "destroy":"Delete Boot2Docker VM and its disk image." "config":"Show selected profile file settings." "cfg":"Show selected profile file settings." "info":"Display detailed information of VM." "ip":"Display the IP address of the VM's Host-only network." "socket":"Display the DOCKER_HOST socket to connect to." "shellinit":"Display the shell command to set up the Docker client." "status":"Display current state of VM." "download":"Download Boot2Docker ISO image." "upgrade":"Upgrade the Boot2Docker ISO image (restart if running)." "version":"Display version information." ) _arguments \ '(--basevmdk)--basevmdk[Path to VMDK to use as base for persistent partition]' \ '(--cpus)'{-c,--cpus}'[number of CPUs for boot2docker.]' \ '(--clobber)--clobber[overwrite Docker client binary on boot2docker upgrade]' \ '(--dhcp)--dhcp[enable VirtualBox host-only network DHCP.]' \ '(--dhcpip)--dhcpip[VirtualBox host-only network DHCP server address.]' \ '(-s --disksize)'{-s,--disksize}'[boot2docker disk image size (in MB).]' \ '(--dockerport)--dockerport[host Docker port (forward to port 2376 in VM). (deprecated - use with care)]' \ '(--driver)--driver[hypervisor driver.]' \ '(--force-upgrade-download)--force-upgrade-download[always download on boot2docker upgrade, never skip.]' \ '(--hostip)--hostip[VirtualBox host-only network IP address.]' \ '(--iso)--iso[path to boot2docker ISO image.]' \ '(--iso-url)--iso-url[/api.github.com/repos/boot2docker/boot2docker/releases": source URL to provision the boot2docker ISO image.]' \ '(--lowerip)--lowerip[VirtualBox host-only network DHCP lower bound.]' \ '(--memory)'{-m,--memory}'[virtual machine memory size (in MB).]' \ '(--netmask)--netmask[VirtualBox host-only network mask.]' \ '(--no-dummy)--no-dummy[Example parameter for the dummy driver.]' \ '(--retries)--retries[number of port knocking retries during 'start']' \ '(--serial)--serial[try serial console to get IP address (experimental)]' \ '(--serialfile)--serialfile[path to the serial socket/pipe.]' \ '(--ssh)--ssh[path to SSH client utility.]' \ '(--ssh-keygen)--ssh-keygen[path to ssh-keygen utility.]' \ '(--sshkey)--sshkey[path to SSH key to use.]' \ '(--sshport)--sshport[host SSH port (forward to port 22 in VM).]' \ '(--upperip)--upperip[VirtualBox host-only network DHCP upper bound.]' \ '(--vbm)--vbm[path to VirtualBox management utility.]' \ '(--vbox-share)--vbox-share[(defaults to "/Users=Users" if no shares are specified; use "disable" to explicitly prevent any shares from being created) List of directories to share during "up|start|boot" via VirtualBox Guest Additions, with optional labels]' \ '(--verbose)'{-v,--verbose}'[display verbose command invocations.]' \ '(--vm)--vm[virtual machine name.]' \ '(--waittime)--waittime[Time in milliseconds to wait between port knocking retries during 'start']' \ '*:: :->subcmds' && return 0 #_arguments '*:: :->command' if (( CURRENT == 1 )); then _describe -t commands "boot2docker command" _1st_arguments return fi