microsoft / mimdsc Goto Github PK
View Code? Open in Web Editor NEWPowerShell Desired State Configuration Module for Microsoft Identity Manager
License: MIT License
PowerShell Desired State Configuration Module for Microsoft Identity Manager
License: MIT License
The xDSCResourceDesigner module is used to validate DSC resource module and schema files, trying to run it during build and it fails with: WARNING: User declined to install module (xDSCResourceDesigner).
There are important files that Microsoft projects should all have that are not present in this repository. A pull request has been opened to add the missing file(s). When the pr is merged this issue will be closed automatically.
Microsoft teams can learn more about this effort and share feedback within the open source guidance available internally.
There are important files that Microsoft projects should all have that are not present in this repository. A pull request has been opened to add the missing file(s). When the pr is merged this issue will be closed automatically.
Microsoft teams can learn more about this effort and share feedback within the open source guidance available internally.
Using the DSC configuration generator I found that the IAF rules generated were not unique (failed when trying to create the MOF file). The items have unique names (a GUID) but the key properties between two DSC resources are the same.
Probably need to change the IAF DSC resource schema to make items more unique.
It really boils down to an issue with DSC schema, captured nicely in this StackOverflow issue:
DSC Package resource have identical key properties
Here is the guide for authoring DSC resources:
Writing a custom DSC resource
The reason for not just using SrcAttribute as a Key property is that IAF rules will not always have a source attribute; for example:
Configuration TestMimSyncConfig
{
Import-DscResource -ModuleName MimSyncDsc
Node (hostname)
{
ImportAttributeFlowRule af5ca310-1d8c-4669-95c2-1f7d0482cb8f
{
ManagementAgentName = 'TinyHR'
MVObjectType = 'Contact'
MVAttribute = 'DisplayName'
CDObjectType = 'person'
Type = 'direct-mapping'
SrcAttribute = 'LastName'
Ensure = 'Present'
}
ImportAttributeFlowRule e1261aaa-de1a-4af0-8373-2c6c6fb76713
{
ManagementAgentName = 'TinyHR'
MVObjectType = 'Contact'
MVAttribute = 'DisplayName'
CDObjectType = 'person'
Type = 'direct-mapping'
SrcAttribute = 'FirstName'
Ensure = 'Present'
}
}
}
TestMimSyncConfig -OutputPath "$env:TEMP\TestMimSyncConfig"
Start-DscConfiguration -Path "$env:TEMP\TestMimSyncConfig" -Force -Wait -Verbose
Test-ConflictingResources : A conflict was detected between resources '[ImportAttributeFlowRule]af5ca310-1d8c-4669-95c2-1f7d0482cb8f (::7::8::ImportAttributeFlowRule)' and '[ImportAttributeFlowRule]e1261aaa-de1a-4af0-8373-2c6c6fb76713
(::18::9::ImportAttributeFlowRule)' in node 'cmartbook'. Resources have identical key properties but there are differences in the following non-key properties: 'SrcAttribute'. Values 'LastName' don't match values 'FirstName'. Please update these
property values so that they are identical in both cases.
At line:289 char:9
+ Test-ConflictingResources $keywordName $canonicalizedValue $k ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Write-Error], InvalidOperationException
+ FullyQualifiedErrorId : ConflictingDuplicateResource,Test-ConflictingResources
Compilation errors occurred while processing configuration 'TestMimSyncConfig'. Please review the errors reported in error stream and modify your configuration code appropriately.
At C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:3917 char:5
+ throw $ErrorRecord
+ ~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (TestMimSyncConfig:String) [], InvalidOperationException
+ FullyQualifiedErrorId : FailToProcessConfiguration
Tests for the MIMSyncDsc module take two approaches:
The unit test approach works nicely for debugging and testing because it does not require the LCM.
Initial attempts at accessing the LCM during AzureDevOps Pipeline builds ran into permission errors. If this can be figured out then wider tests can be executed for builds.
This repository is currently missing a LICENSE file.
A license helps users understand how to use your project in a compliant manner. You can find the standard MIT license Microsoft uses at: https://github.com/microsoft/repo-templates/blob/main/shared/LICENSE.
If you would like to learn more about open source licenses, please visit the document at https://aka.ms/license (Microsoft-internal guidance).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.