Details
-
Improvement
-
Status: Resolved
-
Normal
-
Resolution: Done
-
dsc_lite 0.2
-
None
-
None
-
-
Windows
-
1
-
Windows 2018-05-23
-
Needs Assessment
Description
The relationship between a Puppet resources ensure and the DSC resources ensure property is fairly nuanced. We made some decisions about how these similar properties should interact in the DSC module, but the same rules for their interactions don't necessarily need to hold true in the dsc_lite module.
MODULES-6552 moved existing tests from the dsc_puppetfakeresource wrapper over to the new dsc type, and discovered 4 of the existing 6 ensure behavior tests from DSC still pass in the dsc_lite module:
- ensure_absent.rb
- ensure_and_dsc_ensure_present.rb
- ensure_present.rb
- ensure_present_and_dsc_ensure_absent.rb
The 2 failures are:
This ticket should determine if both of the ensure properties are necessary, or if the model can be simplified in any way.
Some things to keep in mind while evaluating this situation:
- the dsc resource may not need to have an ensure property at all given both the create and destroy method of the provider end up calling set on the DSC resource in exactly the same way
- Puppet might need an ensurable value set somehow so that it properly reports on whether a resource was created / destroyed in logs / PE console / etc. Plausibly this can be automatically detected by Puppet, but would first require calling Get on the resource, then calling Set, then recalling Get and comparing, which feels costly (but perhaps not?). Making this behave properly plausibly generates additional ticketed work.
- not all dsc resources have an ensure state - for instance the log resource is always an append only type operation, not configuring a resource state
- dsc_lite doesn't support puppet resource, so any related constraints don't need to be considered here
Attachments
Issue Links
- causes
-
MODULES-7197 dsc_lite : Ensure ensurable matches actual resource more accurately
-
- Resolved
-
- relates to
-
MODULES-6133 dsc_lite: SPIKE Evaluate Beaker test suite for refactoring
-
- Resolved
-
-
MODULES-6552 dsc_lite : Replace dsc_puppetfakeresource with generic dsc type
-
- Resolved
-