Using PnP PowerShell On Premises and Online

Iron Contributor

I have a hybrid environment with a publishing site on premises and collaboration sites in SharePoint Online.  I have some scripts that need to run against both environments (independently, not simultaneously -- there will be one run of the script for each environment).


I found Erwin's article about setting up my PnP-based scripts so that they can work with either environment here: 


but it seems to be a bit out of date.  I have followed the directions about the environment variables and tried to compensate for the changes to the pathing/naming of libraries on my own, but even so I am getting errors that are keeping my scripts from running.  The first is a Warning about "unapproved verbs", and the second is that "some required components are missing" even though I just downloaded and installed both the 2016 and Online releases for March 2017. I am trying to import the pnp commands at the top of my script with this:


Import-Module $pnpmodulepath -Force


where $pnpmodulepath is a string passed in as a parameter. I am currently passing in this string:



Is there any updated guidance available for writing scripts that will run on multiple environments from the same machine?


Thanks in advance.

2 Replies

Okay, I figured out that I need to target the SharePointPnPPowerShell[2013|2016|Online].psd1 file and not the .DLL.  That solves the main issue above.  I also found the -DisableNameChecking parameter which got rid of the "verb" warning.




When I try running agaist 2016 on premises, Connect-PnPOnline complains:


Connect-PnPOnline : Method not found: 'Void Microsoft.SharePoint.Client.ClientContextExtensions.ExecuteQueryRetry(Microsoft.SharePoint.Client.ClientRuntimeContext, Int32, Int32)'.


Is there some issue with ExecuteQueryRetry in the 2016 version of the library?  I have the exact same script running against my SP Online site and it works perfectly.


I have triple checked that the correct 2016 module is the only one loaded.  I really need to be able to use this against an On Prem installation, so any insight will be welcome.


Thanks in advance.


I faced the same issue and downloaded Mar release from it worked..