PowerShell / PowerShell/DSC

Enhance state reporting for complex resources

Open
#1,659 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Issue-Enhancement Needs Triage
Dominant language
Rust
Stars
523
Forks
75
Avg merge
3d 16h
Merged PRs (30d)
24

Description

Summary of the new feature / enhancement

As a system administrator configuring infrastructure with DSC,
I want to know which sub-properties and array items are out-of-state or were changed,
So that I don't have to manually compare complex objects and array items manually.

Currently, the DSC engine can only report when top-level properties are out of state (for test operations) or changed (for set operations). For resources with array and object properties, this requires the user to carefully review the desired/actual or before/after state for the property to understand which subproperty or array item triggered the reporting for the top-level field.

For example, consider the following output snippet for the result of a test operation:

desiredState:
  foo:
    bar: true
    baz: false
  fruit: ['apple', 'banana']
actualState:
  foo:
    bar: false
    baz: false
  fruit: ['apple']
differingProperties: ['foo', 'fruit']

This problem is amplified for resources with more deeply nested objects and arrays.

Proposed technical implementation details (optional)

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue concerns DSC engine reporting for test and set operations; start by tracing how differingProperties and desiredState/actualState or before/after state are produced. Done means reporting the nested sub-properties and array items that differ or changed, including deeply nested values.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.