-
Notifications
You must be signed in to change notification settings - Fork 586
Align resource name and improve performance #6315
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
Open
FabienTschanz
wants to merge
11
commits into
microsoft:Dev
Choose a base branch
from
FabienTschanz:fix/names-and-performance
base: Dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Align resource name and improve performance #6315
FabienTschanz
wants to merge
11
commits into
microsoft:Dev
from
FabienTschanz:fix/names-and-performance
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
fbab7a7
to
08c12cc
Compare
Finally, ready for review. |
If we're going to make it breaking, then let's add some more stuff 😄 I updated the description to incorporate the latest changes. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request (PR) description
This PR aligns the naming of the
IntuneDeviceConfigurationSCEPCertificatePolicy
and improves the performance of the module by either:Additionally, the module import was sped up. Depending on the number of modules to import, improvements of up to 60% can be seen by using
-Alias @() -Cmdlet @() -Variable @() -DisableNameChecking [-SkipEditionCheck]
. Specifying the alias, cmdlet and variable parameters leads to only loading the functions itself, without populating (and thus discovering / scanning) all of the module again and again to detect any possible alias, cmdlet or variable to export.Some numbers:
Tests were conducted with PowerShell 7 and Windows PowerShell 5.1, where Windows PowerShell 5.1. was consistently ~20% slower than PS7 during every use case.
Profiling shows that the things the most expensive are the web requests to the backend APIs. If we're able to parallelize the processing of those resources, it would massively speed up export and other configurations.
Second part of this PR is an added
-Parallel
switch to theExport-M365DSCConfiguration
function usingPSParallelPipeline
in the background as a new dependency. While it's not always guaranteed to bring performance improvements, it certainly can and if it does, then it can an improvement of up to 70% faster export.The resource consumption is higher when running it in parallel mode, so a recommendation of 8GB of memory was added to the documentation. For sequential operation, this is not necessary.
And lastly, the PR contains changes to the Intune required modules for those who leverage either
ConvertFrom-IntuneMobileAppAssignment
orConvertFrom-IntunePolicyAssignment
(which is about 90% of the Intune resources).This Pull Request (PR) fixes the following issues
None.
Task list
Entry should say what was changed and how that affects users (if applicable), and
reference the issue being resolved (if applicable).