Dependencies

Sean Russell upstart at ser1.net
Tue Oct 10 14:01:37 BST 2006


On Monday 09 October 2006 17:33, Scott James Remnant wrote:
> > Does Upstart generate an event when a job goes into a wait state?
>
> Yes, upstart generates events at all job state changes.

Well, then, all of the situations can have a well-defined, reasonable 
behavior.  To re-iterate, a conditional requirement is considered 
satisfied if (0) it isn't present in /etc/event.d, (1) it fails, or (2) 
it goes into a wait state.

So, using some bogus syntax that I just made up:

	start on  a/started  b/started  c/started?

would mean "require both a/started and b/started, and conditionally 
c/started".  Or, in Gentoo speak:

	need a
	need b
	after c

This job would only get started when both a and b have already been 
started, and when c/started is satisfied by one of the three states 
described above.

Does this sound reasonable?

I haven't considered an equivalent for Gentoo's "before"... I'm not sure 
that it is necessary.  Gentoo's "use" is a hack to implement meta-jobs.  
For example:

	metalog isa logger
	syslog isa logger
	
	somejob uses "logger"

This allows multiple packages to supply some facility without having to 
add support for every possible package in every package that uses it.  
Upstart doesn't need this; "start on" satisfies the need:

	start on metalog/started
	start on syslog/started

This is somewhat tedious for event maintainers.  A better solution would 
be if jobs can define their own event names, so that "metalog" would 
generate "logger" events.  This would make systems maintenance much 
easier, but isn't strictly necessary.

--- SER

Confidentiality Notice
This e-mail (including any attachments) is intended only for the recipients named above. It may contain confidential or privileged information and should not be read, copied or otherwise used by any other person. If you are not a named recipient, please notify the sender of that fact and delete the e-mail from your system.





More information about the Upstart-devel mailing list