Uploaded image for project: 'Modules'
  1. Modules
  2. MODULES-6558

dsc_lite : (SPIKE) Specify resource ensure behavior (considering ensure behavior of prior DSC module)

    XMLWordPrintable

Details

    • Improvement
    • Status: Resolved
    • Normal
    • Resolution: Done
    • dsc_lite 0.2
    • None
    • dsc_lite
    • None
    • Hide
      • All tests in the tests/acceptance/tests/ensure_behavior should be modified / deleted / reworked so that they all pass against the dsc resource
      • There should be a decision about whether or not the generic dsc resource should have an ensure property
      Show
      All tests in the tests/acceptance/tests/ensure_behavior should be modified / deleted / reworked so that they all pass against the dsc resource There should be a decision about whether or not the generic dsc resource should have an ensure property
    • 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:

      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

          Activity

            People

              michael.lombardi Michael Lombardi
              ethan Ethan Brown
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Zendesk Support