[Bug 1124384] Re: reload-configuration can confuse upstart
Scott Moser
smoser at ubuntu.com
Thu Feb 14 14:42:49 UTC 2013
** Description changed:
- Example from failure: https://jenkins.qa.ubuntu.com/job/raring-server-
- ec2/ARCH=amd64,REGION=eu-west-1,STORAGE=ebs,TEST=multi-part-ud,label
- =ubuntu-server-ec2-testing/17/console
+ Under bug 1080841 we made cloud-init invoke 'initctl reload-
+ configuration' after it wrote a upstart job. This was necessary because
+ inotify is not supported on all filesystems (overlayfs being the one of
+ most current interst).
- Cloud-init is parsing YAML incorrectly
- runcmd:
- ... - [ sh, -c, "echo ============= $(date) ': hello world!' ============= " ]
- ... - [ sh, -c, 'echo "$(date)" > /root/runcmd.date.txt' ]
- ... - [ wget, "http://slashdot.org", -O, /tmp/index.html ]
- ... - touch /tmp/done
+ This seems to be causing upstart some pain, and resulting in cloud-final
+ (and 'rc') not being run.
- Fails, while changing "- touch /tmp/done" to " - [ touch /tmp/done ]"
- works.
+ Easy user-data to reproduce the problem is:
+
+ #cloud-config-archive
+ - content: |
+ #!/bin/sh
+ echo "==== $(date -R): user-script run ===" | tee /run/user-script.log
+ - content: |
+ #upstart-job
+ description "a test upstart job"
+ start on stopped rc RUNLEVEL=[2345]
+ console output
+ task
+ script
+ echo "==== $(date -R): upstart job run ===" | tee /run/upstart-job.log
+ end script
+
+ You should (and do on quantal) end up with 2 files written to /run.
+
+ I've verified that the same behavior is true on quantal. If you change
+ cloud-init to notify upstart about a job immediately after it writes it,
+ then quantal's upstart gets confused also.
+
+ Related bugs:
+ * bug 1080841: should reload configuration if an upstart job is added
+ * bug 1103881: cloud-final is never executed if upstart is upgraded during initialization of the image
** Also affects: upstart (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to upstart in Ubuntu.
https://bugs.launchpad.net/bugs/1124384
Title:
reload-configuration can confuse upstart
Status in “cloud-init” package in Ubuntu:
New
Status in “upstart” package in Ubuntu:
New
Bug description:
Under bug 1080841 we made cloud-init invoke 'initctl reload-
configuration' after it wrote a upstart job. This was necessary
because inotify is not supported on all filesystems (overlayfs being
the one of most current interst).
This seems to be causing upstart some pain, and resulting in cloud-
final (and 'rc') not being run.
Easy user-data to reproduce the problem is:
#cloud-config-archive
- content: |
#!/bin/sh
echo "==== $(date -R): user-script run ===" | tee /run/user-script.log
- content: |
#upstart-job
description "a test upstart job"
start on stopped rc RUNLEVEL=[2345]
console output
task
script
echo "==== $(date -R): upstart job run ===" | tee /run/upstart-job.log
end script
You should (and do on quantal) end up with 2 files written to /run.
I've verified that the same behavior is true on quantal. If you
change cloud-init to notify upstart about a job immediately after it
writes it, then quantal's upstart gets confused also.
Related bugs:
* bug 1080841: should reload configuration if an upstart job is added
* bug 1103881: cloud-final is never executed if upstart is upgraded during initialization of the image
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1124384/+subscriptions
More information about the foundations-bugs
mailing list