Woot! So it turns out I can add life tap to my pet attack macro.
Pet Attack:
/target [help] targettarget
/petattack [target=pettarget,noexists] target
/cast [nochanneling] life tap(rank 1)
/stopmacro [target=pettarget,noexists]
/petfollow
If my target is friendly to me (ie, the tank) use my target’s target and ..
If I’m not currently channeling another spell, Life tap (rank 1) (because I have the Life Tap glyph) and …
…If I have a target and my pet currently isn’t attacking anything, send my pet to attack my target.
…If I have a target and my pet -is- attacking something, call my pet back to my side.
Paraphrased: hit once to have pet attack, hit again to call pet back to you.
[Edited to add: minor tweak made to above so that the Life Tap doesn't interrupte me if I'm doing a channeled spell]
I’ve update this on my warlock macro page.

Ok that is awesome, thanks!
Skrylas last blog post..Who are you?
Love it! Now how do you call this macro? I’ve become so accustomed to simply hitting CTRL+1 and then 1 to fire off my petattack/COA cast in roughly the same keystroke, that I would have to relearn my fingers.
Would mapping the macro to CTRL+1 work?
Create this macro in the macro interface. Then drag it down to a button bar. Then keybind that button (look in the keybind menu (Esc+keybind button)). You can change it so that CTRL+1 is bound to this button instead of your pet menu.
In my case this button is bound to 5.
I’m obscenely pleased with my update to pet macro so I’m tweeting the blog post even though I usually don’t
http://bit.ly/KPrxE
Oh thank you…
I added this macro to my action bar a few moments ago.
Deimonias last blog post..Chillin’ with my Blade; DeathChill cloak & Titansteel Spellblade
Since we have only a limited amount of spots in the class specific macro page I took your macro and added a few things so it could work for my spec 2 as well.
-Right Click is a highest rank Life Tap for when you really need it.
-Casts Dark Pact for my spec:2 if my felhunter is out OR it works as a rank 1 life tap.
#showtooltip Life Tap
/target [help] targettarget
/petattack [target=pettarget,noexists] target
/cast [nochanneling,btn:2]Life Tap
/cast [nochanneling,pet:felhunter]Dark Pact;[nochanneling]Life Tap(rank 1)
/stopmacro [target=pettarget,noexists]
/petfollow
(255 characters used)
Note: It will always show Life Tap Rank 8 which doesn’t really matter to me since I know what the macro can do.