I know about MDT, WDS
The way I do it is I create a super generalized image via NTLite and powershell scripts and I deploy it on the system. I do have to create a user account manually in the middle of the process, tho, and wait for the scripts to run post-install upon first logon
Can it be more automated than this? How do companies do it?
Are you talking about bare metal or virtual machines?
Bare Metal I used Microsoft SCCM. It’s a pain to manage but when it works right you can easily use Task Sequences to deploy images with PXE boot.
I also had a previous install of Dell Open Enterprise Manager.
VMs, anything like Terraform and Ansible will work to deploy an image.
I do it with an answerfile with a clonezilla image. Simple and works.
I also use the autounattended answer file but my point is I still have to create a user and wait for the post install scripts to complete upon first logon
User creation is always a separate process from system deployment. I know of nothing that can do both at the same time.
Deploy via sccm/mdt and create the AD user.
You could have a script that you run separately that creates the AD user. This is what I do. Just feed it a csv file.
Though your question merits further research.
Do I inject the csv file into the image like I would a script? Will the csv file be read immediately after the answer file? AFAIK the answer file is always read first