I am running a small
OpenNebula 5.8.0 evaluation deployment and I ran into an issue with the
INIT_SCRIPTS, which I am not even sure if it’s a bug or intended behaviour.
I created a very basic CentOS 7 template and uploaded a
set_initial_root_password.sh script to the
FILE_DS, then set this script to run in the
INIT_SCRIPTS context section.
When I instantiate the template, the script is included in the context CDROM and it’s running fine. If I reboot or start/stop the VM, the script is again present in the context CDROM image.
However, after stopping the VM to update the configuration through Sunstone and change some random variable not related to
INIT_SCRIPTS, then start the VM, I noticed that the
set_initial_root_password.sh is no longer included in the context CDROM when mounting it inside the VM:
[root@sptest1 ~]# mount|grep /dev/sr0
/dev/sr0 on /mnt/alex type iso9660 (ro,relatime)
[root@sptest1 ~]# ll /mnt/alex/
-rw-r–r-- 1 9869 9869 3055 Apr 17 11:54 context.sh
-rw-r–r-- 1 9869 9869 25 Apr 17 11:54 token.txt
For the recod, the relevant section of the template I used to instantiate the VM is:
[oneadmin@one-cp 2]$ onetemplate show 13
BEFORE making any updates to the VM configuration, the template still has the FILES_DS config:
FILES_DS = "/var/lib/one//datastores/2/07a35c1e61378da20d5c3d6d6921f032:‘set_initial_root_password.sh’ ",
AFTER updating the VM configuration from Sunstone, the
FILES_DS variable is completely missing, although the UI doesn’t even show an option to modify
[oneadmin@one-cp 2]$ onevm show 37
My question: Is this a bug or the intended behaviour is to remove any
INIT_SCRIPTS on VM updateconf trough Sunstone?