Overview
I have many virtual systems in my environment. Most running the VMWare Hypervisor in ESXi, Workstation, Horizon View etc. I've mandated as my firm's EUC (End User Computing) Architect that it all sources back to OSD in ConfigMgr. To make this easier I packaged up the VMWare Tools as well as handle drivers (VMXNET3 anyone?).
Life is easier now as VMWare has de-coupled the Tools from Workstation or ESXi and can be downloaded directly. They have released several already since doing so and are on 10.0.8 as of this writing.
Application
After grabbing the ISO from VMWare, extract it and upgrade/install a VM with it. Once that is done setup an application within ConfigMgr however your policy is. For me we use supercedence so older ones are present as well.
With two deployment types. One for 32-Bit and one for 64-Bit.
setup64.exe /s /v/qn ADDLOCAL=ALL REBOOT=ReallySuppress
32-Bit setup.exe /s /v/qn ADDLOCAL=ALL REBOOT=ReallySuppress
For the detection method just use the MSI GUID. You can find this via many methods such as in the VM via the registry at HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. This also is what becomes the Uninstall program. For 10.0.8 it is {F4B2C3ED-A9F2-4B8B-92C8-2688CCF15D02}
which would make the uninstall program for both 32-Bit and 64-Bit MsiExec.exe /x {F4B2C3ED-A9F2-4B8B-92C8-2688CCF15D02} /qn /norestart
On the requirements tab you can use something like a custom 'Computer Model' = VMWare Virtual Platform' and built-in Operating System equals whats applicable such as 'All Windows 7 (64-Bit)'.You can advertise this to all systems in your fleet as available or required as well as use in an OSD Task Sequence. Whatever you want.
I wish there was a way within the VM to determine which platform its on. Workstation, View, ESXi. This would make targeting apps to a collection easier. It may make sense to update Workstation with the latest, but keep the ESXi ones on what's provided with it for example.
Drivers
So how do we get the drivers into SCCM? Real easy actually. Go to your VM and look in
%PROGRAMFILES%\Common Files\VMware\Drivers. Take the contents of this folder and put them into a driver package, or however, you do drivers. Then add as a step to an OSD. Like any other driver package, do a WMI query for the model (VMWare Virtual Platform) or manufacturer (VMWare, Inc.). I talked about how I handle drivers here.For the driver package note that the contents of this folder are different for W7 (Server 2008 R2) and down vs Windows 8 (Server 2012) and up. One driver, the mouse driver is different. I have two packages as I have not fully vetted a merged one. PNPID and version should handle it in one package but I have not tested in all instances yet. With DP's deduping it's not a big deal actually.
Bonus
I will try to keep track of the GUIDs for all the versions and post them here as they come out. If you have older ones please pass them on and I will include them. Note I am only doing the 64-Bit ones below after about 10.2.0 when they split.UPDATE: Due to me changing roles a while ago and moving my personal environment away from ESX for Broadcoms shenanigans I will no longer be updating this.
-Kevin
12.5.0 - {64171BD0-863E-4DDE-8DF9-4F7E62DA4A3C}
12.4.0 - {55F0F698-8B00-40BF-8583-A16452EC3FF9}
12.3.5 - {27B78D8E-F8B9-4AF5-BF9C-8DDD583EAB6B}
12.3.0 - {AF174E64-22CF-4386-A9EC-73F285739998}
12.2.0 - {A14655C8-5589-4CF6-BCDE-DFFB9A9BF17C}
12.1.5 - {65A35679-0C08-4C9A-9AC3-46417F198653}
12.1.0 - {A3631D35-CFA5-45F6-A65E-DAFA81C4CBE6}
12.0.6 - {CB7FFC88-0CB2-48DD-9D7A-089D216607F8}
12.0.5 - {B6018ED0-EF9F-4432-A755-9029562DD15E}
12.0.0 - {AC968A64-CCC0-4916-A426-BA05F38AC28B}
11.3.5 - {1FF5D624-5515-4343-837A-E54C101573E6}
11.3.0 - {4FE02FF2-2194-4E1D-8B04-F934655966F9}
11.2.6 - {E6E6404B-1F59-4EAB-A1B9-EA1A33B71159}
11.2.0 - {61ABD5FF-2D98-4C4A-9E36-187C882317CB}
11.1.0 - {4FE2D79D-BB1C-4F45-BDBC-192D37C3AE40}
11.0.6 - {D533345C-7F8D-4807-AE80-E06CE2045B0E}
11.0.5 - {25932044-BBC8-444F-ACF4-7E508054FA12}
11.0.1 - {742FCBAF-EE5D-48B2-9E95-DA0513B79570}
11.0.0 - {7B09CBED-1199-4BA3-9948-A28DB7C9C396}
10.3.10 - {01767101-A688-4A95-9C83-6DED9EB6735D}
10.3.5 - {F32C4E7B-2BF8-4788-8408-824C6896E1BB}
10.3.0 - {1D92E489-0CFA-4F37-AC54-BD5EB372A2D4}
10.2.5 - {6D158FDD-2E20-4C54-A271-4D2CE2C39905}
10.2.1 - {092CAFE8-7A43-4C32-82C6-A5547F93417F}
10.2.0 - {766355C9-1851-4890-9C1F-9F043A43AFCE}
10.1.15 - {7CFC363A-72CE-409C-97C2-E497A1D831FC}
10.1.10 - {EEAD1455-1743-4746-8AEA-C1956133B736}
10.1.7 - {45147181-CF69-4C8C-81CB-0FC96F170758}
10.1.5 - {30B36D27-24D7-4C18-996D-9A23B9235707}
10.1.0 - {507F5BFC-6DFE-43CF-A552-DABE868FCDFE}
10.0.12 - {FC5F4DCF-B54A-435E-8B0D-737BB373ED69} (XP/Server 2003 Only)
10.0.9 - {7595A850-FE4D-4273-84FA-9CC1068AFF7A}
10.0.8 - {F4B2C3ED-A9F2-4B8B-92C8-2688CCF15D02}
10.0.6 - {ECD203D2-312B-4EC7-9D55-778A81C6BDE9}
10.0.5 - {0C69DF99-B17A-4490-910B-64811AEA2F48}
-Kevin