Jira (PUP-11062) better handling of enable=delayed case for a systemd service

26 views
Skip to first unread message

Ciprian Badescu (Jira)

unread,
May 14, 2021, 10:00:04 AM5/14/21
to puppe...@googlegroups.com
Ciprian Badescu created an issue
 
Puppet / Improvement PUP-11062
better handling of enable=delayed case for a systemd service
Issue Type: Improvement Improvement
Assignee: Unassigned
Created: 2021/05/14 6:59 AM
Priority: Normal Normal
Reporter: Ciprian Badescu
Add Comment Add Comment
 
This message was sent by Atlassian Jira (v8.13.2#813002-sha1:c495a97)
Atlassian logo

Ciprian Badescu (Jira)

unread,
May 14, 2021, 10:03:04 AM5/14/21
to puppe...@googlegroups.com
Ciprian Badescu updated an issue
Change By: Ciprian Badescu
[root@cloud ~]# puppet resource service puppet enable=delayedError: Could not set 'delayed' on enable: undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
Error: Could not set 'delayed' on enable: undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
Wrapped exception:
undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
Error: /Service[puppet]/enable: change from 'true' to 'delayed' failed: Could not set 'delayed' on enable: undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
service { 'puppet':
  enable   => 'true',
  provider => 'systemd',
}
 

Ciprian Badescu (Jira)

unread,
May 14, 2021, 10:03:04 AM5/14/21
to puppe...@googlegroups.com
Ciprian Badescu updated an issue
{code:java}
[root@cloud ~]# puppet resource service puppet enable=delayedError: Could not set 'delayed' on enable: undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
Error: Could not set 'delayed' on enable: undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
Wrapped exception:
undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
Error: /Service[puppet]/enable: change from 'true' to 'delayed' failed: Could not set 'delayed' on enable: undefined method `delayed_start' for Service[puppet](provider=systemd):Puppet::Type::Service::ProviderSystemd
service

{ 'puppet':
  enable   => 'true',
  provider => 'systemd', }{code}
 

Wouldn’t it be nicer if {{enable=>delayed
} } resolved to {{enable=>true}} on Linux? That would prevent the user from having to creating extra Puppet logic for this parameter in cross-platform scenarios. If not, the resource should at least return a proper error that {{delayed}} is not supported on Linux.

/cc: [~kevin.reeuwijk]

 

Josh Cooper (Jira)

unread,
May 14, 2021, 7:44:05 PM5/14/21
to puppe...@googlegroups.com
Josh Cooper commented on Improvement PUP-11062
 
Re: better handling of enable=delayed case for a systemd service

The delayed property is missing the required_features part (like we due for mask). That way the property can only be set to that value if the provider supports the feature.

Mihai Buzgau (Jira)

unread,
May 18, 2021, 11:00:05 AM5/18/21
to puppe...@googlegroups.com

Ciprian Badescu (Jira)

unread,
May 19, 2021, 5:12:05 AM5/19/21
to puppe...@googlegroups.com

Luchian Nemes (Jira)

unread,
May 19, 2021, 10:55:01 AM5/19/21
to puppe...@googlegroups.com

Gabriel Nagy (Jira)

unread,
May 20, 2021, 3:18:01 AM5/20/21
to puppe...@googlegroups.com
Gabriel Nagy commented on Improvement PUP-11062
 
Re: better handling of enable=delayed case for a systemd service

The case for defaulting to enable => true would make sense to me after seeing the enable => mask behavior:

      # This only makes sense on systemd systems. Otherwise, it just defaults
      # to disable.
      newvalue(:mask, :event => :service_disabled, :required_features => :maskable) do
        provider.mask
      end

Luchian Nemes (Jira)

unread,
Jun 2, 2021, 3:24:01 AM6/2/21
to puppe...@googlegroups.com
Luchian Nemes updated an issue
 
Change By: Luchian Nemes
Release Notes: Bug Fix
Release Notes Summary: Due to missing required features, error with unwanted message was given when trying to set a service to `delayed_start` on other operating systems than Windows. This fix improves Puppet's behaviour and the error message.

Mihai Buzgau (Jira)

unread,
Jun 10, 2021, 3:30:01 AM6/10/21
to puppe...@googlegroups.com
Mihai Buzgau updated an issue
Change By: Mihai Buzgau
Fix Version/s: PUP 7.8.0
Fix Version/s: PUP 6.23.0

Christine Yoon (Jira)

unread,
Jun 21, 2021, 3:58:02 PM6/21/21
to puppe...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages