Cross-platform updates to DSC code in SMA DLL#13399
Cross-platform updates to DSC code in SMA DLL#13399daxian-dbw merged 70 commits intoPowerShell:masterfrom
Conversation
|
Are there performance comparisons? It would be very amazing if new schema worked slower than original. |
src/System.Management.Automation/DscSupport/MofDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/MofDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonCimDSCParser.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonCimDSCParser.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDeserializer.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDeserializer.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDeserializer.cs
Outdated
Show resolved
Hide resolved
|
The cmdlet name to convert MOF to JSON doesn't fit the naming conversions. It looks only to be one directional not bi-directional.
|
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonCimDSCParser.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/ConvertCimMofToJsonCommand.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
…nDeserializerDeserializeClasses
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
TravisEz13
left a comment
There was a problem hiding this comment.
Reviewed the changes to build.psm1 and the changes to find PSDesiredStateConfiguration.
src/System.Management.Automation/engine/ExperimentalFeature/ExperimentalFeature.cs
Outdated
Show resolved
Hide resolved
|
@rjmholt Can you please update your review? Thanks |
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
src/System.Management.Automation/DscSupport/JsonDscClassCache.cs
Outdated
Show resolved
Hide resolved
|
@anmenaga Great work! |
PR Summary
This PR is in context of DSC changes for PowerShell 7.
P0 end-to-end scenario that we are enabling here consists of 3 components: PowerShell core (SMA dll),
PSDesiredStateConfigurationmodule, GuestConfigAgent.This PR addresses the first part - updates to DSC code in SMA dll to remove dependency on MOF/MMI APIs, therefore making DSC cross-platform and enabling GuestConfigAgent scenarios.
Focus is on class-based DSC resources.
PR Context
Fix #13731
At this point this PR is not a breaking change: existing (MOF/MMI-based) DSC code will continue to work as it was and will continue to be the default mechanism for DSC operations (for now).
Cross-platform DSC updates of this PR are done as an alternative mechanism for DSC operations; to use them:
PSDesiredStateConfigurationv3 module has to be installed;PS7DscSupportexperimental feature has to be enabled.Example:

PR Checklist
.h,.cpp,.cs,.ps1and.psm1files have the correct copyright headerWIP:or[ WIP ]to the beginning of the title (theWIPbot will keep its status check atPendingwhile the prefix is present) and remove the prefix when the PR is ready.