en-US/about_AzDoPipelinePermission.help.txt

.NAME
    AzDoPipelinePermission
 
.SYNOPSIS
    DSC resource for managing Azure DevOps pipeline-level ACL permissions.
 
.DESCRIPTION
    The AzDoPipelinePermission class manages pipeline-level permissions within
    an Azure DevOps project using the Build security namespace.
 
.PARAMETER ProjectName
    Key - System.String
    The Azure DevOps project name.
 
.PARAMETER PipelineName
    Required - System.String
    The name of the pipeline.
 
.PARAMETER GroupName
    Required - System.String
    The name of the group whose permissions are being managed.
 
.PARAMETER isInherited
    Write - System.Boolean
    Whether the permissions are inherited. Default is $true.
 
.PARAMETER Permissions
    Write - HashTable[]
    Hashtable array of permissions to apply.
 
.EXAMPLE 1
 
This example shows how to grant permissions on a pipeline in an Azure DevOps project.
 
Configuration Example
{
    Import-DscResource -ModuleName 'AzureDevOpsDscNative'
 
    node localhost
    {
        AzDoPipelinePermission 'AddAzDoPipelinePermission'
        {
            Ensure = 'Present'
            ProjectName = 'MyProject'
            PipelineName = 'MyBuildPipeline'
            GroupName = '[MyProject]\Contributors'
            isInherited = $true
            Permissions = @(
                @{ Permission = 'ViewBuilds'; Access = 'Allow' }
                @{ Permission = 'QueueBuilds'; Access = 'Allow' }
            )
        }
    }
}
 
.EXAMPLE 2
 
This example shows how to update pipeline permissions in an Azure DevOps project.
 
Configuration Example
{
    Import-DscResource -ModuleName 'AzureDevOpsDscNative'
 
    node localhost
    {
        AzDoPipelinePermission 'UpdateAzDoPipelinePermission'
        {
            Ensure = 'Present'
            ProjectName = 'MyProject'
            PipelineName = 'MyBuildPipeline'
            GroupName = '[MyProject]\Contributors'
            isInherited = $false
            Permissions = @(
                @{ Permission = 'ViewBuilds'; Access = 'Allow' }
                @{ Permission = 'QueueBuilds'; Access = 'Allow' }
                @{ Permission = 'EditBuildDefinition'; Access = 'Deny' }
            )
        }
    }
}
 
.EXAMPLE 3
 
This example shows how to remove pipeline permissions in an Azure DevOps project.
 
Configuration Example
{
    Import-DscResource -ModuleName 'AzureDevOpsDscNative'
 
    node localhost
    {
        AzDoPipelinePermission 'RemoveAzDoPipelinePermission'
        {
            Ensure = 'Absent'
            ProjectName = 'MyProject'
            PipelineName = 'MyBuildPipeline'
            GroupName = '[MyProject]\Contributors'
        }
    }
}