Conversation
|
Thanks @Adam-it! I tested this against a dev tenant, running both engines side by side. The read and extract side works well: a full site extract with Must fix1. $t = Read-PnPTenantTemplate .\tenant.xml
$t | Invoke-PnPTenantTemplate # AmbiguousParameterSet (works in 3.4.1)
Invoke-PnPTenantTemplate $t # AmbiguousParameterSet (works in 3.4.1)
Invoke-PnPTenantTemplate -Template $t # worksIn a quick simulation of the binder, adding 2.
So 3.
Excluding every handler produces an empty Core handler list. Core treats that as "all handlers" and extracts everything, where PnP Framework extracts nothing. Suggested fix: map the excludes to Core handlers first, remove them from the full list of Core handlers, and error if nothing is left. 4. Files inside a
Should fix5. Ctrl+C doesn't stop an 6. Document the extra permissions. The scopes listed in the PR description aren't in the cmdlet docs or the article. 7. CHANGELOG fixes:
Minor
FYI: differences in engine output (from PnP.Core.Provisioning, not this PR)Compared with PnP Framework, a full extract of the same site with
I haven't checked whether these matter when the template is applied. |
|
@gautamdsheth all addressed... at least I hope I didn't miss anything 😁, and ready for another round |
🎯 Aim
The aim is to add
- Experimentaloption provisioning template commands so that when used it will use PnP.Core.Provisioning engine under the hood, and not PnP Framework.Worth pointing out
Since PnP Core is more MS Graph and SP Rest based, additional scopes are needed than just
AllSites.FullControl. So in order to use PnP.Core.Provisioning fully the app reg should have the followingSelect Microsoft Graph > Delegated permissions > select
Group.ReadWrite.AllSelect Microsoft Graph > Delegated permissions > select
openidSelect Microsoft Graph > Delegated permissions > select
profileSelect Microsoft Graph > Delegated permissions > select
Sites.Manage.AllSelect Microsoft Graph > Delegated permissions > select
User.Read.AllSelect SharePoint > Delegated permissions > select
AllSites.FullControlSelect SharePoint > Delegated permissions > select
AllSites.ManageSelect SharePoint > Delegated permissions > select
TermStore.ReadWrite.AllSelect SharePoint > Delegated permissions > select
User.Read.All📸 Result