On Sat, Mar 15, 2014 at 08:19:04PM +0100, Stig Sandbeck Mathisen wrote:
> Steve Langasek <email address hidden> writes:
> > This is a bug in puppet, then; there's no reason that puppet should be
> > trying to call 'status startpar-bridge', and the fact that it's doing
> > so is a bug in the puppet code in question.
> When you run "puppet resource service", puppet will enumerate _all_
> services on that server (init scripts, upstart jobs, systemd services,
> whatnot, and then check if it is running, and if it is enabled on boot.
> When the operatingsystem is "ubuntu", the service provider is "upstart",
> The relevant code for handling services on ubuntu is:
Not being particularly familiar with puppet's internals, I don't know if the
above is wrong per se. But startpar-bridge (and other jobs present on
Ubuntu by default, such as network-interface and network-interface-security)
are instantiated jobs; calling 'status network-interface' without specifying
a network interface is not meaningful, and any errors returned from 'status'
about 'unknown parameter' or 'unknown instance' should not be treated as
failures by puppet.
If puppet needs to get a list of all jobs running on the system, including
instantiated jobs, it should use the 'initctl list' interface.
Hi Stig,
On Sat, Mar 15, 2014 at 08:19:04PM +0100, Stig Sandbeck Mathisen wrote:
> Steve Langasek <email address hidden> writes:
> > This is a bug in puppet, then; there's no reason that puppet should be
> > trying to call 'status startpar-bridge', and the fact that it's doing
> > so is a bug in the puppet code in question.
> When you run "puppet resource service", puppet will enumerate _all_
> services on that server (init scripts, upstart jobs, systemd services,
> whatnot, and then check if it is running, and if it is enabled on boot.
> When the operatingsystem is "ubuntu", the service provider is "upstart",
> The relevant code for handling services on ubuntu is:
> defaultfor :operatingsystem => :ubuntu
> commands :start => "/sbin/start",
> :stop => "/sbin/stop",
> :restart => "/sbin/restart",
> :status_exec => "/sbin/status",
> :initctl => "/sbin/initctl"
> Is this wrong for Ubuntu?
Not being particularly familiar with puppet's internals, I don't know if the interface- security)
above is wrong per se. But startpar-bridge (and other jobs present on
Ubuntu by default, such as network-interface and network-
are instantiated jobs; calling 'status network-interface' without specifying
a network interface is not meaningful, and any errors returned from 'status'
about 'unknown parameter' or 'unknown instance' should not be treated as
failures by puppet.
If puppet needs to get a list of all jobs running on the system, including
instantiated jobs, it should use the 'initctl list' interface.