Public/compare-AllegisIDNsourceSchemaSync.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
function compare-AllegisIDNsourceSchemaSync ($sourceOrg, $destOrg, $sourceAccessToken, $destAccessToken, $sourceID, $destID){ $sourceSources=get-AllegisIDNsource -orgName $sourceOrg -accessToken $sourceAccessToken $destsources=get-AllegisIDNsource -orgName $destOrg -accessToken $destAccessToken $source=$sourceSources.where{$_.id -eq $sourceID -or $_.name -eq $sourceID} $dest=$destSources.where{$_.id -eq $destID -or $_.name -eq $destID} if ($source.sourceConnectorName -ne $dest.sourceConnectorName){write-warning "comparing non-similar sources $($source.sourceConnectorName) to $($dest.sourceConnectorName)"} $sourceSyncSchema=get-AllegisIDNsourceSyncSchema -orgName $sourceOrg -sourceid $source.id -accessToken $sourceAccessToken $destSyncSchema=get-AllegisIDNsourceSyncSchema -orgName $destOrg -sourceid $dest.id -accessToken $destAccessToken foreach ($sync in $destSyncSchema.syncAttributes.where{$_.enabled -eq $true}){ compare-object $sync } $diff=compare-object $destSyncSchema.syncAttributes $SourceSyncSchema.syncAttributes -Property enabled,identityAttributeName,targetAttribute return $diff <#foreach ($attr in $diff.where{$_.sideindicator -eq '=>'}){ "$($attr.inputobject) missing" "new-AllegisIDNsourceImportSchemaAttribute -orgName $destOrg -sourceid '$($dest.name)' -accessToken `$destAccessToken -name $($attr.inputobject) -type string" }#> } |