I'm trying to setup a cloud-config file to invoke a script that will run apt-get to update packages and install a few additional packages. Because the kernel can be updated by the 'apt-get upgrade', I want to reboot at the end to activate the new kernel.<br>
<br>Given that the cloud-config will be executed during the boot process itself (during the first boot), what is the best practice for scheduling a reboot? Should I just do it immediately (i.e., leaving some of the boot scripts perhaps unexecuted in the first boot) or should I schedule it for 10 seconds later (i.e., guessing that the remaining boot scripts will have completed by then) or is there some better way to handle this scenario.<br>
<br>Here is what I think (not yet tried) my cloud-config file would look like:<br><br>#cloud-config<br>runcmd:<br> - [ sh, "/mnt/data/setup/init.sh'" ]<br><br>Here is my init.sh script (tested via sudo from 'ubuntu' user command line and works there):<br>
<br>#! /bin/sh<br>#<br><br># Get security and distribution updates<br># (Note: sec.sources.list is a copy of sources.list with only security sources specified)<br>#<br>apt-get update<br>apt-get upgrade -o Dir::Etc::sourcelist=/etc/apt/sec.sources.list<br>
<br># Install llvm and clang<br>#<br>apt-get install llvm-3.0<br>apt-get install llvm-3.0-doc<br>apt-get install llvm-3.0-dev<br>apt-get install clang<br><br># Update the CNAME for <a href="http://dev.mydomain.com">dev.mydomain.com</a> to point to this<br>
# instance<br>#<br>INSTANCE_ID_=`curl -s -g <a href="http://169.254.169.254/latest/meta-data/instance-id`">http://169.254.169.254/latest/meta-data/instance-id`</a><br># echo instance id is $INSTANCE_ID_<br>PUBLIC_HOSTNAME_=`curl -s -g <a href="http://169.254.169.254/latest/meta-data/public-hostname`">http://169.254.169.254/latest/meta-data/public-hostname`</a><br>
# echo public hostname is $PUBLIC_HOSTNAME_<br>python setr53.py $INSTANCE_ID_ $PUBLIC_HOSTNAME_<br><br># restart the system to pick up kernel changes<br># (yep, there might not have been any, but reboot anyway)<br>#<br>shutdown -r now<br>
<br><br>--<br>Dave Hein<br>