Automating UCS setup

Hey there,
I am a student and I would like to try out Univention UCS in my homelab and maybe later also use it at our school.
Everything in my homelab and at school is automated using terraform and ansible but I have been struggling for a quite a few days and I have no progress.
I would like for terraform to spin up the VM’s that run ucs in proxmox and either using the .qcow2 cloud_image or the .iso startup the installer (this works).
But then I want some initialization/preseeding.
At least a ip-address, gateway, and ssh-keys so ansible can connect to it ant take it on from there OR if terraform can do the whole setup using a preseeding.cfg or something thats also okay.
Im just very stuck and have tried many different things and also asked AI for help multiple times but still it boots into the graphical setup.
I tried using the terraform initialization lock to set the ip etc like on debian (as ucs is debian underlying i believe) but that didnt work so I tried a preseed.cfg as a snippet in proxmox and link it to ide2 but still nothing. I tried lots of other things like some custom kvm_arsg but nothing.

https://docs.software-univention.de/ext-installation/5.2/en/profile.html
https://docs.software-univention.de/ext-installation/5.2/en/appliance.html

I mainly used these two documentations and also when using AI made sure the AI was using these documentations.

Any help would be welcome.

Hi RobbeK,

I have never tried the appliance mode as we only have two UCS DC and it would be impractical to spend all this time building the image.

In the documentation there’s this:
“Once the basic installation is complete, a dialogue is shown in which you can select whether to create a new UCS domain or join an existing domain. To create the appliance, Control+Q must be pressed at this point to interrupt the process. The installation continues for a short period of time, during which the Starting Univention System Setup message appears and the systems then restarts.”

So have you created your own appliance image or are you trying to use the seed file on normal installation? I guess only the former might work.

Edit…

If you make an appliance and install cloud-init like here:

https://docs.software-univention.de/ext-installation/5.2/en/appliance.html#providing-an-image-for-openstack

You will be able to use proxmox to do some basic configuration.

If you search this forum you will find some links to UCS Ansible config, but I can’t remember exactly what was possible with this.