Why are you reimplementing wait_for and reload here? https://github.com/fog/fog/blob/master/lib/fog/core/model.rb already has it. It'd be nice if you used the reload and wait_for? from core/model. To do that, you'll probably have to create a disks collection so the collection.get works.