Hi,
I’ve decided to use DSC to configure our sharepoint environment.
But I’m having problems loading the SharePoint cmdlets from the second module in the configuration. It always throws an error. Could you please have a look and help me how to proceed?
I’ve created a sample module and configuration file for reference. The module given below and the second one have the same content.
function Get-TargetResource { [CmdletBinding()] [OutputType([System.Collections.Hashtable])] param ( [parameter(Mandatory = $true)] [System.String] $Site1 ) } function Set-TargetResource { [CmdletBinding()] param ( [parameter(Mandatory = $true)] [System.String] $Site1 ) } function Test-TargetResource { [CmdletBinding()] [OutputType([System.Boolean])] param ( [parameter(Mandatory = $true)] [System.String] $Site1 ) If ((Get-PsSnapin |?{$_.Name -eq "Microsoft.SharePoint.PowerShell"})-eq $null){ Write-Verbose "Loading SharePoint Powershell Snapin..." Add-PsSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue | Out-Null } if ((Get-SPSite -Limit All | ? {$_.Url -eq $Site1})-eq $null){ Write-Verbose "$Site1 not found" return $false } else{ return $true } } Export-ModuleMember -Function *-TargetResource
My configuration file looks like
Configuration SPSiteConfig { Import-DscResource -ModuleName xDSCSPSite1 Import-DscResource -ModuleName xDSCSPSite2 Node SER-XXX{ xDSCSPSite1 Site1{ Site1 = "http://Site1-d" } xDSCSPSite2 Site2 { Site2 = "http://Site2-d" } } } SPSiteConfig Start-DscConfiguration -Wait -Verbose -Path .\SPSiteConfig
But when I run this configration I get the error as
PS E:\DSC> .\SPSiteConfig.ps1 Directory: E:\DSC\SPSiteConfig Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 13-11-2014 17:51 1488 SLO-702.mof VERBOSE: Perform operation 'Invoke CimMethod' with following parameters, ''methodName' = SendConfigurationApply,'className' = MSFT_DSCLocalConfigurationMan ager,'namespaceName' = root/Microsoft/Windows/DesiredStateConfiguration'. VERBOSE: An LCM method call arrived from computer SLO-702 with user sid S-1-5-21-1229272821-1801674531-839522115-133922. VERBOSE: [SLO-702]: LCM: [ Start Set ] VERBOSE: [SLO-702]: LCM: [ Start Resource ] [[xDSCSPSite1]Site1] VERBOSE: [SLO-702]: LCM: [ Start Test ] [[xDSCSPSite1]Site1] VERBOSE: [SLO-702]: [[xDSCSPSite1]Site1] Loading SharePoint Powershell Snapin... VERBOSE: [SLO-702]: [[xDSCSPSite1]Site1] Leaving BeginProcessing Method of Get-SPSite. VERBOSE: [SLO-702]: [[xDSCSPSite1]Site1] Leaving ProcessRecord Method of Get-SPSite. VERBOSE: [SLO-702]: [[xDSCSPSite1]Site1] Leaving EndProcessing Method of Get-SPSite. VERBOSE: [SLO-702]: [[xDSCSPSite1]Site1] http://Site1-d not found VERBOSE: [SLO-702]: LCM: [ End Test ] [[xDSCSPSite1]Site1] in 5.9720 seconds. VERBOSE: [SLO-702]: LCM: [ Start Set ] [[xDSCSPSite1]Site1] VERBOSE: [SLO-702]: LCM: [ End Set ] [[xDSCSPSite1]Site1] in 0.0060 seconds. VERBOSE: [SLO-702]: LCM: [ End Resource ] [[xDSCSPSite1]Site1] VERBOSE: [SLO-702]: LCM: [ Start Resource ] [[xDSCSPSite2]Site2] VERBOSE: [SLO-702]: LCM: [ Start Test ] [[xDSCSPSite2]Site2] VERBOSE: [SLO-702]: [[xDSCSPSite2]Site2] Loading SharePoint Powershell Snapin... The term 'Get-SPSite' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. + CategoryInfo : ObjectNotFound: (Get-SPSite:) [], CimException + FullyQualifiedErrorId : CommandNotFoundException + PSComputerName : SLO-702 VERBOSE: [SLO-702]: LCM: [ End Test ] [[xDSCSPSite2]Site2] in 0.3880 seconds. The PowerShell provider xDSCSPSite2 threw one or more non-terminating errors while running the Test-TargetResource functionality. These errors are logged to the ETW channel called Microsoft-Windows-DSC/Operational. Refer to this channel for more details. + CategoryInfo : InvalidOperation: (:) [], CimException + FullyQualifiedErrorId : NonTerminatingErrorFromProvider + PSComputerName : SLO-702 VERBOSE: [SLO-702]: LCM: [ End Set ] The SendConfigurationApply function did not succeed. + CategoryInfo : NotSpecified: (root/Microsoft/...gurationManager:String) [], CimException + FullyQualifiedErrorId : MI RESULT 1 + PSComputerName : SLO-702 VERBOSE: Operation 'Invoke CimMethod' complete. VERBOSE: Time taken for configuration job to complete is 7.578 seconds
I’ve attached the module and mof files for reference.