I am creating ephemeral Windows Server VMs on AWS and would like to install a list of software unattended when they first start up. To do this, I am running a bootstrap script at startup that installs Chocolatey and then some custom choco packages. The system is joined to my domain at startup and I am assigning the startup script via a GPO. I can also create any other GP related items, as needed.

The script is running fine, but the problem I'm having is that many of the installers I'm running via choco require an interactive user session to work, so they won't run in the Session0 context that the startup script is running in.

I can see either of the following working:

Create an interactive session for the script to run in on system startup. Log in a user from the Session0 context (can be a domain user) and instead install the packages as a logon script.

I'm open to other suggestions for how to solve this problem as well. As long as I can somehow run the installers unattended via a script, I will be satisfied.