OK I finally got some things to Work using Cloudbase-init 0.9.11 eg the current stable
Here is what works
Extending the Disks
Setting up the network
Setting the hostname
Enabling WRM if you need that
Setting the Password ( but it can only support Plain Text Password ) so the hash in /etc/pve/qemu/vmid.conf would need to be changed to plain text the good thing is the Default behavior for Cloudbase it to require password change on first logon but you can change that.
Here is what does not work
Creating a new user ( Openstack configdrive in cloudbase is not supporting that)
Setting the FQDN once again they do not support that
There are other things that I did not fully test them like WRM certs and NTP as I was not using that
But they seem to work
But now for the said news first of All it will not work at all out of the box as Proxmox ISO is not read at all
that is a simple fix
/usr/share/perl5/PVE/QemuServer/Cloudinit.pm needs to be changed so the ISO is recognized
in
commit_cloudinit_disk {
I had to change the run_command([['genisoimage' to include an ISO level
run_command([['genisoimage','-iso-level', '3', '-R', '-V', $label, $path],
Now the disk gets read and also the network setup works
The Second more important problem is the settings in USER_DATA are not used at all
So Password hostname etc will not work
eg. #cloud-config
They read it but they only support a small about of the features in the user_data e.g
https://cloudbase-init.readthedocs.io/en/latest/userdata.html#userdata
They expect the data to be in the meta_data.json currently that only has
"uuid": "$uuid",
"network_config": { "content_path": "/content/0000" },
I added in
"hostname":
and
"admin_pass" in Json format and now that works can also add in SSH keys if you need
But of course this required hacking the Perl code
I m not sure how to work around that password problem as if that also could be done then the it would be almost usable
I was thinking changing the code that makes the /etc/pve/qemu-server/vm.id.conf so if the server was windows allow plain text its not ideal but could work
But even the changes I made for the ISO file and the meta_data.json would be good to get into the core so we can use windows a bit better else I need to hack that file for each new Hypervisor
Thanks
Here is what works
Extending the Disks
Setting up the network
Setting the hostname
Enabling WRM if you need that
Setting the Password ( but it can only support Plain Text Password ) so the hash in /etc/pve/qemu/vmid.conf would need to be changed to plain text the good thing is the Default behavior for Cloudbase it to require password change on first logon but you can change that.
Here is what does not work
Creating a new user ( Openstack configdrive in cloudbase is not supporting that)
Setting the FQDN once again they do not support that
There are other things that I did not fully test them like WRM certs and NTP as I was not using that
But they seem to work
But now for the said news first of All it will not work at all out of the box as Proxmox ISO is not read at all
that is a simple fix
/usr/share/perl5/PVE/QemuServer/Cloudinit.pm needs to be changed so the ISO is recognized
in
commit_cloudinit_disk {
I had to change the run_command([['genisoimage' to include an ISO level
run_command([['genisoimage','-iso-level', '3', '-R', '-V', $label, $path],
Now the disk gets read and also the network setup works
The Second more important problem is the settings in USER_DATA are not used at all
So Password hostname etc will not work
eg. #cloud-config
They read it but they only support a small about of the features in the user_data e.g
https://cloudbase-init.readthedocs.io/en/latest/userdata.html#userdata
They expect the data to be in the meta_data.json currently that only has
"uuid": "$uuid",
"network_config": { "content_path": "/content/0000" },
I added in
"hostname":
and
"admin_pass" in Json format and now that works can also add in SSH keys if you need
But of course this required hacking the Perl code
I m not sure how to work around that password problem as if that also could be done then the it would be almost usable
I was thinking changing the code that makes the /etc/pve/qemu-server/vm.id.conf so if the server was windows allow plain text its not ideal but could work
But even the changes I made for the ISO file and the meta_data.json would be good to get into the core so we can use windows a bit better else I need to hack that file for each new Hypervisor
Thanks