Hi
Using Server 2012R2 with WMF 5
I have written a DSCresource in Class 5 style for installing SharePoint 2013 updates.
When I try to compile-to-mof using this dscresource in my configuration mutliple times for deploying different patches I get errors like the following:
Test-ConflictingResources : A conflict was detected between resources '[InstallSharePointUpdate]SharePointSP1 (::441::9::InstallSharePointUpdate)' and '[InstallSharePointUpdate]SharePointSP1LanguagePackUpdate (::451::9::InstallSharePointUpdate)' in node 'vm11'. Resources have identical key properties but there are differences in the following non-key properties: 'PatchFileName'. Values 'officeserversp2013-kb2880552-fullfile-x64-en-us.exe' don't match values 'serverlpksp2013-kb2880554-fullfile-x64-nb-no.exe'. Please upd ate these property values so that they are identical in both cases. At line:271 char:9 + Test-ConflictingResources $keywordName $canonicalizedValue $k ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Write-Error], InvalidOperationException + FullyQualifiedErrorId : ConflictingDuplicateResource,Test-ConflictingResources Test-ConflictingResources : A conflict was detected between resources '[InstallSharePointUpdate]SharePointSP1 (::441::9::InstallSharePointUpdate)' and '[InstallSharePointUpdate]SharePointAprilCU2016 (::461::9::InstallSharePointUpdate)' in node 'vm11'. Resou rces have identical key properties but there are differences in the following non-key properties: 'PatchFileName'. Values 'officeserversp2013-kb2880552-fullfile-x64-en-us.exe' don't match values 'ubersrv2013-kb3114938-fullfile-x64-glb.exe'. Please update these proper ty values so that they are identical in both cases. At line:271 char:9
In the Configuration they look like this:
# Install SharePoint 2013 SP 1 InstallSharePointUpdate SharePointSP1 { PathtoFile = $ConfigurationData.NonNodeData.SharePoint.Binaries.Updates PatchFileName = 'officeserversp2013-kb2880552-fullfile-x64-en-us.exe' Ensure = "Present" PsDscRunAsCredential = $SPSetupCred DependsOn = "[InstallSharePointLanguagePack]NoLAnguagePack" } # Install Norwegian Language pack for SharePoint 2013 SP 1 InstallSharePointUpdate SharePointSP1LanguagePackUpdate { PathtoFile = $ConfigurationData.NonNodeData.SharePoint.Binaries.Updates PatchFileName = 'serverlpksp2013-kb2880554-fullfile-x64-nb-no.exe' Ensure = "Present" PsDscRunAsCredential = $SPSetupCred DependsOn = "[InstallSharePointUpdate]SharePointSP1" } # Install SharePoint 2013 CU April 2016 InstallSharePointUpdate SharePointAprilCU2016 { PathtoFile = $ConfigurationData.NonNodeData.SharePoint.Binaries.Updates PatchFileName = 'ubersrv2013-kb3114938-fullfile-x64-glb.exe' Ensure = "Present" PsDscRunAsCredential = $SPSetupCred DependsOn = "[InstallSharePointUpdate]SharePointSP1LanguagePackUpdate" }
How can i change this dscresource so that it will let me reuse it installing different patches?
What does work is creating dupicate classes with new names and running one update per dscresource. But that seems like waste of space:P…
Any tips are welcome!
Brgs
Bjørn