-
Notifications
You must be signed in to change notification settings - Fork 0
Home
AzureDevOpsDscNative v#.#.#
Here you will find all the information you need to make use of the AzureDevOpsDscNative DSC resources in the latest release. This includes details of the resources that are available, current capabilities, known issues, and information to help plan a DSC based implementation of AzureDevOpsDscNative.
Please leave comments, feature requests, and bug reports for this module in the issues section for this repository.
Note: This is a native DSC v3 module where every resource is discoverable and invokable by
dsc.exevia theMicrosoft.Adapter/PowerShelladapter, using generated adapted resource manifests. No wrapper resources required.
AzureDevOpsDscNative is a comprehensive DSC module that enables you to:
- Manage Projects: Create and configure Azure DevOps projects with specific settings
- Control Permissions: Define fine-grained permissions for users and groups across resources
- Manage Teams: Create and manage teams and team membership
- Configure Repositories: Manage Git repositories, permissions, and settings
- Setup Pipelines: Configure pipelines, environments, and pipeline settings
- Manage Service Connections: Create and manage service connections for CI/CD
- Configure Variable Groups: Create and manage variable groups
- Manage Artifacts: Configure artifact feeds and permissions
- Setup Infrastructure: Manage agent pools, deployment groups, and other infrastructure
- Apply Policies: Configure branch policies and other governance settings
To get started either:
- Install from the PowerShell Gallery using PowerShellGet by running the following command:
Install-Module -Name AzureDevOpsDscNative -Repository PSGallery- Download AzureDevOpsDscNative from the PowerShell Gallery
and then unzip it to one of your PowerShell modules folders (such as
$env:ProgramFiles\WindowsPowerShell\Modules).
To confirm installation, run the below command and ensure you see the AzureDevOpsDscNative DSC resources available:
Get-DscResource -Module AzureDevOpsDscNativeThe minimum requirement for this module is PowerShell 7.0.
- PowerShell 7.0 or later — Required for this module
- Azure DevOps Account — Access to an Azure DevOps organisation
- Authentication — Personal Access Token (PAT), Managed Identity, Service Principal, or other supported authentication methods (see Authentication Guide)
# Set up authentication
New-AzDoAuthenticationProvider -OrganizationName 'my-organization' -PersonalAccessToken 'my-pat'
# Apply a DSC configuration
Configuration AzureDevOpsConfig {
Import-DscResource -ModuleName 'AzureDevOpsDscNative'
Node localhost {
AzDoProject 'MyProject' {
Ensure = 'Present'
ProjectName = 'MySampleProject'
ProjectDescription = 'This is a sample Azure DevOps project.'
SourceControlType = 'Git'
ProcessTemplate = 'Agile'
Visibility = 'Private'
}
}
}
AzureDevOpsConfig
Start-DscConfiguration -Path ./AzureDevOpsConfig -Wait -VerboseHow to configure authentication using New-AzDoAuthenticationProvider:
- Personal Access Tokens (PAT)
- Managed Identity
- Service Principal (client secret or certificate)
- Azure CLI Token
- Workload Identity Federation
How to apply configurations at scale using the companion
Dsc.PipelineRunner project: Datum-based
configuration layering, Pipeline Rules, dependsOn/condition/postExecutionScript, and
running Invoke-DscPipelineRunner.
The single reference for permissions and ACLs — CSS Security Namespaces, ACL/ACE concepts, full permission bit reference, identity syntax, and common pitfalls.
Guidelines and recommendations for using AzureDevOpsDscNative effectively:
- Configuration management patterns
- Security best practices
- Performance optimisation
- Error handling and troubleshooting
- Large-scale deployments with Dsc.PipelineRunner
Practical examples and scenarios covering project setup, security, CI/CD pipelines, artifact feeds, and team structure automation.
Frequently asked questions.
Common issues and how to resolve them.
AzureDevOpsDscNative includes 49 DSC resources covering:
- AzDoOrganizationGroup — Manage organisation-level groups
- AzDoGroupMember — Manage group membership
- AzDoGroupPermission — Manage group permissions
-
AzDoOrganizationSettings— Configure organisation settings -
AzDoUserEntitlement— Manage user entitlements
- AzDoProject — Create and manage projects
- AzDoProjectGroup — Manage project groups
- AzDoProjectServices — Manage project services
- AzDoProjectPermission — Manage project permissions
- AzDoTeam — Create and manage teams
- AzDoTeamMember — Manage team membership
-
AzDoTeamSettings— Configure team settings
- AzDoGitRepository — Create and manage Git repositories
- AzDoGitPermission — Manage repository permissions
-
AzDoRepositorySettings— Configure repository settings - AzDoAreaNodes — Manage area nodes
- AzDoIterationNodes — Manage iteration nodes
- AzDoAreaPermission — Manage area permissions
- AzDoIterationPermission — Manage iteration permissions
- AzDoSecurityNamespacePermission — Manage security namespace permissions
- AzDoBranchPolicy — Configure branch policies
- AzDoPipeline — Create and manage pipelines
- AzDoPipelinePermission — Manage pipeline permissions
- AzDoPipelineEnvironment — Manage pipeline environments
- AzDoEnvironmentPermission — Manage environment permissions
- AzDoEnvironmentApproval — Configure environment approvals
- AzDoPipelineSettings — Configure pipeline settings
-
AzDoCheckConfiguration— Manage pipeline checks
- AzDoServiceConnection — Create and manage service connections
- AzDoServiceConnectionPermission — Manage service connection permissions
- AzDoVariableGroup — Create and manage variable groups
- AzDoVariableGroupPermission — Manage variable group permissions
- AzDoAgentPool — Create and manage agent pools
- AzDoAgentPoolPermission — Manage agent pool permissions
- AzDoAgentQueue — Manage agent queues
- AzDoDeploymentGroup — Create and manage deployment groups
- AzDoArtifactFeed — Create and manage artifact feeds
- AzDoArtifactFeedPermission — Manage feed permissions
- AzDoArtifactFeedSettings — Configure feed settings
- AzDoArtifactFeedView — Manage feed views
-
AzDoWiki— Manage project wikis -
AzDoTaskGroup— Create and manage task groups -
AzDoExtension— Manage extensions -
AzDoAuditStream— Configure audit streams -
AzDoNotificationSubscription— Manage notification subscriptions -
AzDoServiceHook— Create and manage service hooks -
AzDoProcess— Create and manage custom processes -
AzDoProcessPermission— Manage process permissions - AzDoWIPTags — Manage WIP tags
A full list of changes in each version can be found in the change log.
- Assert-BoundParameter
- Assert-ElevatedUser
- Assert-IPAddress
- Assert-Module
- AzDoAPI_0_ProjectCache
- AzDoAPI_1_GroupCache
- AzDoAPI_2_UserCache
- AzDoAPI_3_GroupMemberCache
- AzDoAPI_4_GitRepositoryCache
- AzDoAPI_5_PermissionsCache
- AzDoAPI_6_ServicePrinciple
- AzDoAPI_7_IdentitySubjectDescriptors
- AzDoAPI_8_ProjectProcessTemplates
- AzDoAPI_9_DevOpsClassificationNodes
- Compare-DscParameterState
- Compare-ResourcePropertyState
- ConvertFrom-DscResourceInstance
- ConvertTo-Base64String
- ConvertTo-CimInstance
- ConvertTo-HashTable
- Find-Certificate
- Format-Path
- Get-AzDevOpsOperation
- Get-AzDevOpsServicesApiUri
- Get-AzDevOpsServicesUri
- AzDoAgentPool
- AzDoAgentPoolPermission
- AzDoAgentQueue
- AzDoAreaNodes
- AzDoAreaPermission
- AzDoArtifactFeed
- AzDoArtifactFeedPermission
- AzDoArtifactFeedSettings
- AzDoArtifactFeedView
- AzDoAuditStream
- AzDoBranchPolicy
- AzDoCheckConfiguration
- AzDoDeploymentGroup
- AzDoEnvironmentApproval
- AzDoEnvironmentPermission
- AzDoExtension
- AzDoGitPermission
- AzDoGitRepository
- AzDoGroupMember
- AzDoGroupPermission
- AzDoIterationNodes
- AzDoIterationPermission
- AzDoNotificationSubscription
- AzDoOrganizationGroup
- AzDoOrganizationSettings
- AzDoPipeline
- AzDoPipelineEnvironment
- AzDoPipelinePermission
- AzDoPipelineSettings
- AzDoProcess
- AzDoProcessPermission
- AzDoProject
- AzDoProjectGroup
- AzDoProjectPermission
- AzDoProjectServices
- AzDoRepositorySettings
- AzDoSecurityNamespacePermission
- AzDoServiceConnection
- AzDoServiceConnectionPermission
- AzDoServiceHook
- AzDoTaskGroup
- AzDoTeam
- AzDoTeamMember
- AzDoTeamSettings
- AzDoUserEntitlement
- AzDoVariableGroup
- AzDoVariableGroupPermission
- AzDoWiki
- AzDoWIPTags