** Description changed:

  Binary package hint: cloud-init
  
  All lucid/maverick source packages,
  
  The following upstart scripts need to wait for the 'cloud-config' status
  in addition to what they currently wait for, otherwise userdata might
  not be loaded yet.
  
  cloud-apt-update-upgrade.conf
  cloud-config-misc.conf
  cloud-config-mounts.conf
  cloud-config-ssh.conf
  cloud-disable-ec2-metadata.conf
  cloud-ec2-ebs-mounts.conf
  cloud-raid.conf
  cloud-runurl.conf
  
  ~~
  most of these need to just add 'and cloud-config' but one or two need to just 
'start on cloud-config'
  
  ~~~
  cloud-run-user-script.conf
  
  needs 'start on (stopped rc RUNLEVEL=[2345] and stopped cloud-config-
  misc)'
  
  We need this package to work in ec2 as well as UEC otherwise it make
  provisioning of a new instance much harder and defeats the purpose of
  this package.  Since Lucid is LTS I would like to see a SRU for this
  issue as well since it prevent out of the box/repo use of this feature.
+ 
+ ==== Begin SRU Justification ====
+ Impact: The impact of this bug is that a popular portion of "cloud-config" 
syntax [1] is not easily used in the 10.04 images.  If the user specifies 
commands to run, they cannot rely on other portions of cloud-init having 
finished before those scripts run.  The big examples is that if the user 
installs a package via 'pkgs', they cannot rely on it being present in their 
'runcmd'.  The ordering is simply not guaranteed.
+ Solution: The solution is to make the upstart script that executes the user's 
commands depend on 'stopped' of each of the other upstart jobs.  In this 
manner, it will not execute until the other jobs are finished.
+ Patch: Available in branch attached to this bug [2]
+ Regression Potential: There should be low potential for regression and low 
realistic change of user expectations.  Previously, the order was 
non-deterministic, this will guarantee that jobs run after packages are 
installed.
+ 
+ TEST Case:
+  * launch ec2 instance (ubuntu-lucid-10.04-i386-server-20100427.1, such as 
ami-fd4aa494) with user data having 'packages' and 'runcmd' section.  Such as:
+ | #cloud-config
+ | packages: [ bzr, ubuntu-dev-tools, ccache, vim-nox, git-core, lftp ]
+ | runcmd:
+ |  - [ sudo, -Hu, ubuntu, sh, -c 'bzr branch 
lp:ubuntu/lucid-proposed/cloud-init  2>&1 | tee cmd.log' ]
+  * without a fix for this bug, the ordering is indeterminable, but most 
likely, the 'bzr branch' command will run before bzr is installed.  With the 
fix, it is guaranteed to run afterwards.
+ 
+ --
+ [1] 
http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/lucid/cloud-init/lucid-proposed/annotate/head%3A/doc/examples/cloud-config.txt
+ [2] 
http://bazaar.launchpad.net/~smoser/ubuntu/lucid/cloud-init/bug613309/revision/17
+ ==== End SRU Justification =====

-- 
cloud-run-user-script.conf upstart script needs to run after all other 
cloud-init processes
https://bugs.launchpad.net/bugs/613309
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to