Before you can provision a host, you must create rules that assign an image profile to each host that you want to provision by using Auto Deploy.

Install VMware PowerCLI and all prerequisite software.

If you encounter problems running PowerCLI cmdlets, consider changing the execution policy. See Using Auto Deploy Cmdlets.


Run the Connect-VIServer PowerCLI cmdlet to connect to the vCenter Server system that Auto Deploy is registered with.

Connect-VIServer 192.XXX.X.XX

The cmdlet might return a server certificate warning. In a production environment, make sure no server certificate warnings result. In a development environment, you can ignore the warning.


Determine the location of a public software depot, or define a custom image profile using the Image Builder PowerCLI.


Run Add-EsxSoftwareDepot to add the software depot that contains the image profile to the PowerCLI session.

Depot Type


Remote depot

Run Add-EsxSoftwareDepot depot_url.

ZIP file


Download the ZIP file to a local file path.


Run Add-EsxSoftwareDepot C:\file_path\


In the depot, find the image profile that you want to use by running the Get-EsxImageProfile cmdlet.

By default, the ESXi depot includes one base image profile that includes VMware tools and has the string standard in its name, and one base image profile that does not include VMware tools.


Define a rule in which hosts with certain attributes, for example a range of IP addresses, are assigned to the image profile.

New-DeployRule -Name "testrule" -Item "My Profile25" -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"

Double quotes are required if a name contains spaces, optional otherwise. Specify -AllHosts instead of a pattern to apply the item to all hosts.

The cmdlet creates a rule named testrule. The rule assigns the image profile named My Profile25 to all hosts with a vendor of Acme or Zven that also have an IP address in the specified range.


Add the rule to the rule set.

Add-DeployRule testrule

By default, the rule is added to both the working rule set and the active rule set. If you use the NoActivate parameter, the working rule set does not become the active rule set.

When the host boots from iPXE, it reports attributes of the machine to the console. Use the same format of the attributes when writing deploy rules.

* Booting through VMware AutoDeploy...
* Machine attributes:
* . asset=No Asset Tag
* .
* .
* . ipv4=XX.XX.XXX.XXX
* . mac=XX:Xa:Xb:Xc:Xx:XX
* . model=MyVendorModel
* . oemstring=Product ID: XXXXXX-XXX
* . serial=XX XX XX XX XX XX...
* . vendor=MyVendor

For hosts already provisioned with Auto Deploy, perform the compliance testing and repair operations to provision them with the new image profile. See Test and Repair Rule Compliance.

Turn on unprovisioned hosts to provision them with the new image profile.