File tree Expand file tree Collapse file tree 2 files changed +8
-8
lines changed Expand file tree Collapse file tree 2 files changed +8
-8
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,9 @@ module Puppet
38
38
feature :enableable , "The provider can enable and disable the service." ,
39
39
:methods => [ :disable , :enable , :enabled? ]
40
40
41
+ feature :delayed_startable , "The provider can set service to delayed start" ,
42
+ :methods => [ :delayed_start ]
43
+
41
44
feature :controllable , "The provider uses a control variable."
42
45
43
46
feature :flaggable , "The provider can pass flags to the service."
@@ -81,8 +84,7 @@ def retrieve
81
84
provider . enabled?
82
85
end
83
86
84
- # This only works on Windows systems.
85
- newvalue ( :delayed , :event => :service_delayed_start ) do
87
+ newvalue ( :delayed , :event => :service_delayed_start , :required_features => :delayed_startable ) do
86
88
provider . delayed_start
87
89
end
88
90
@@ -93,7 +95,7 @@ def insync?(current)
93
95
94
96
validate do |value |
95
97
super ( value )
96
- if ( value == :manual || value == :delayed ) && !Puppet ::Util ::Platform . windows?
98
+ if ( value == :manual ) && !Puppet ::Util ::Platform . windows?
97
99
raise Puppet ::Error . new ( _ ( "Setting enable to %{value} is only supported on Microsoft Windows." ) % { value : value . to_s } )
98
100
end
99
101
end
Original file line number Diff line number Diff line change @@ -93,12 +93,10 @@ def safely_load_service_type
93
93
)
94
94
end
95
95
96
- it "should not support :delayed as a value when not on Windows" do
97
- allow ( Puppet ::Util ::Platform ) . to receive ( :windows? ) . and_return ( false )
98
-
96
+ it "should not support :mask as a value" do
99
97
expect { Puppet ::Type . type ( :service ) . new ( :name => "yay" , :enable => :delayed ) } . to raise_error (
100
- Puppet ::Error ,
101
- /Setting enable to delayed is only supported on Microsoft Windows \. /
98
+ Puppet ::ResourceError ,
99
+ /Provider .+ must have features 'delayed_startable' to set 'enable' to 'delayed' /
102
100
)
103
101
end
104
102
end
You can’t perform that action at this time.
0 commit comments