My name is***** and I am very sorry to hear that Diesel is sick. Vomiting in puppies can be caused by numerous different things. Possibilities include eating something irritating to the intestines such as a plant or bug, eating something that blocked the intestines such as a sock or plastic, infectious causes such as intestinal worms or parvo.
For tonight, I would recommend taking away the water so that Diesel can't over drink and cause more irritation to his stomach. After he stops vomiting for 4 hours, you can give him a small amount (1/4cup) of water once every 30 minutes until his thirst is satisfied. If by morning he stops vomiting, you can try offering a bland breakfast such as chicken and rice or eggs and rice.
If he continues vomiting or starts having diarrhea, I recommend taking him to your regular veterinarian first thing in the morning. They will likely recommend blood work, a fecal exam, a parvo test and abdominal x-rays. Once they determine the cause of the vomiting, they will recommend treatments for him.
If the vomit becomes bloody, if he becomes very weak or starts having bloody diarrhea tonight, you will need to take him to the nearest animal emergency room right away.
Best regards, ***** ***** this answer helps you.
Kansas State University,
College of Veterinary Medicine Class of 2001