When you pass those parameters in via the isolinux.cfg file, they end up in /var/log/esxi_install.log as unknown parameters - actual error is "Weasel skipped boot command line token". But you can parse the esxi_install.log file and get your parameter/values. Unfortunately, grep, sed, and awk don't work quite right at that part of the install, I'm going to guess they aren't there yet, so we had to go a different route. We were able to get to our parameters in a convoluted way using python.
After the firstboot line in the kickstart file, we created a python script, which scans the esxi install log for our parameters/values, builds a separate file with our parameters as environement variables, sources the file and then we have access to the parameters as environment variables.
kickstart file pseudo code:
%firstboot --intepreter=busybox
cat > /tmp/getParams.py << EOF
import os
Add python code (about 30 lines) to read and parse esxi_install.log and find your parameters (you can search on the Weasel text), e.g. HOST=hostname, IP=1.2.3.4 DOMAIN=domain.name etc.
Write parameters to another file, (e.g.: /tmp/envParams) in the format
export HOST=hostname
export IP=1.2.3.4
export DOMAIN=domain.name
close all files
EOF
Execute the newly created python script in the kickstart file: python /tmp/getParams.py
And load the new environment varibles into your kickstart file: source /tmp/envParams
Those files will be deleted on the next reboot.
Then you can do anything you need using those parameters. e.g.
esxcli system hostname set --host=${HOST} --domain=${DOMAIN} Hope this helps, we had someone who knew python which made this go much faster.