-
Notifications
You must be signed in to change notification settings - Fork 7.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cross-platform updates to DSC code in SMA DLL #13399
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
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@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),
PSDesiredStateConfiguration
module, 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:
PSDesiredStateConfiguration
v3 module has to be installed;PS7DscSupport
experimental feature has to be enabled.Example:
![U18ClassDscCapture](https://user-images.githubusercontent.com/11860095/104243583-a12c1800-5415-11eb-88e4-38fb6cd1d6f9.png)
PR Checklist
.h
,.cpp
,.cs
,.ps1
and.psm1
files have the correct copyright headerWIP:
or[ WIP ]
to the beginning of the title (theWIP
bot will keep its status check atPending
while the prefix is present) and remove the prefix when the PR is ready.