hashicorp / vagrant

Vagrant is a tool for building and distributing development environments.
https://www.vagrantup.com
Other
26.19k stars 4.43k forks source link

Feature request: vagrant halt all / vagrant status all #10129

Open wkoszek opened 6 years ago

wkoszek commented 6 years ago

Feature request:

It'd be great to be able to shut down all the VMs at once with:

vagrant halt all

I've always found vagrant global-status awkward. I believe vagrant status all should give you the state of all VMs you have in the system.

This would make day-to-day operations in Vagrant more efficient.

chrisroberts commented 6 years ago

@wkoszek Is this feature request for halting all guests for a specific Vagrant project (guests defined in current Vagrantfile) or halting all guests globally?

wkoszek commented 6 years ago

@chrisroberts Good question. As a consumer, I'd be ok living with:

vagrant halt all <- stop all VMs in the project vagrant halt all -g <- stop all VMs on the machine

and same with status:

vagrant status all <- status for all VMs in the project vagrant status all -g <- status of all VMs in the machine

chrisroberts commented 6 years ago

@wkoszek Currently the behavior of vagrant halt when used within a vagrant project that has multiple guests defined will result in all guests being halted. PR #10130 adds a global flag for the halt command but there are some edge cases I can see with it.

For the status suggestions, the global-status command is well established and there is not much benefit from attempting to migrate it to another location (as well as the problems introduced if a guest is defined with the name all). However, if you would really prefer to have a vagrant status all command, you can likely set something up for that using aliases. https://www.vagrantup.com/docs/cli/aliases.html

wkoszek commented 6 years ago

@chrisroberts -g for halt would be nice. For the status, I guess I can live with the aliases.