Use update PlatformBuild/CIsettings to limit recursive downloading #1164
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.
Description
Use updated stuart tools to limit recursive downloading from mu repositories.
When a platform identifies submodules through GetRequiredSubmodules()
it previously only contained True/False for specifying the need for
submodules. If True, it would recursively clone all submodules.
This modification allows specifying a CiSettings file containing a
CiSetupSettingsManager instance, and will attempt to only download
the submodules specified in the GetRequiredSubmodules section.
GetDependencies() does not have configuration for this type of scenario.
A Dependency from GetDependencies will always attempt to resolve ALL submodules that are contained in the repo.
This presents a problem when a submodule contains their own dependency as well. The example run into is:
SecurityPkg => libspdm
libspdm => openssl
openssl => gost-engine
gost-engine => libprov
How This Was Tested
Local Builds verifying that limited downloading still builds/boots.
Integration Instructions
No integration ncessary.