well, the puff of white smoke is USUALLY indicative of either a bad glowplug, or a bad glow plug relay.
You can test your GP relay by using a good set of jumper cables to go AROUND the GP relay. Basically hook one end to your battery (+) and the other end to the OUTPUT side of the relay then try to start the truck. If no smoke, then bad relay!
You can test each glowplug by unplugging the UnderValveCover harness and use a Volt/Ohm meter set on "20-ohms" scale. You want .1 to .6 ohms optimal, but anything up to 2 ohms is considered acceptable. If you get NO OHM reading, then the GP is OPEN and BAD. Anything over 2 ohms is BAD also. Remember to touch your OHM meter probes to each other and see how much resistance the probe wires are (usually under .5 ohm) and subtract that from your reading. (.7 ohm reading minus .5 ohms probe wire resistance would be .2 ohms actual resistance).
I did the math one day, and even losing ONE glowplug created almost 100 amps LESS current draw at startup. So in theory, if you had a CLAMP ON style AMP meter that could read up to 1000 amps, you could clamp it onto the GP cable, turn the key, and see if its drawing close to 800 amps. If not, you have problems.