1. Packages
  2. Packages
  3. Azure DevOps Provider
  4. API Docs
  5. BuildDefinitionPermissions
Viewing docs for Azure DevOps v3.14.1
published on Wednesday, Apr 29, 2026 by Pulumi
azuredevops logo
Viewing docs for Azure DevOps v3.14.1
published on Wednesday, Apr 29, 2026 by Pulumi

    Manages permissions for a Build Definition

    Note Permissions can be assigned to group principals and not to single user principals.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.Project("example", {
        name: "Example Project",
        workItemTemplate: "Agile",
        versionControl: "Git",
        visibility: "private",
        description: "Managed by Pulumi",
    });
    const example_readers = azuredevops.getGroupOutput({
        projectId: example.id,
        name: "Readers",
    });
    const exampleGit = new azuredevops.Git("example", {
        projectId: example.id,
        name: "Example Repository",
        initialization: {
            initType: "Clean",
        },
    });
    const exampleBuildDefinition = new azuredevops.BuildDefinition("example", {
        projectId: example.id,
        name: "Example Build Definition",
        path: "\\ExampleFolder",
        ciTrigger: {
            useYaml: true,
        },
        repository: {
            repoType: "TfsGit",
            repoId: exampleGit.id,
            branchName: exampleGit.defaultBranch,
            ymlPath: "azure-pipelines.yml",
        },
    });
    const exampleBuildDefinitionPermissions = new azuredevops.BuildDefinitionPermissions("example", {
        projectId: example.id,
        principal: example_readers.apply(example_readers => example_readers.id),
        buildDefinitionId: exampleBuildDefinition.id,
        permissions: {
            ViewBuilds: "Allow",
            EditBuildQuality: "Deny",
            DeleteBuilds: "Deny",
            StopBuilds: "Allow",
        },
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.Project("example",
        name="Example Project",
        work_item_template="Agile",
        version_control="Git",
        visibility="private",
        description="Managed by Pulumi")
    example_readers = azuredevops.get_group_output(project_id=example.id,
        name="Readers")
    example_git = azuredevops.Git("example",
        project_id=example.id,
        name="Example Repository",
        initialization={
            "init_type": "Clean",
        })
    example_build_definition = azuredevops.BuildDefinition("example",
        project_id=example.id,
        name="Example Build Definition",
        path="\\ExampleFolder",
        ci_trigger={
            "use_yaml": True,
        },
        repository={
            "repo_type": "TfsGit",
            "repo_id": example_git.id,
            "branch_name": example_git.default_branch,
            "yml_path": "azure-pipelines.yml",
        })
    example_build_definition_permissions = azuredevops.BuildDefinitionPermissions("example",
        project_id=example.id,
        principal=example_readers.id,
        build_definition_id=example_build_definition.id,
        permissions={
            "ViewBuilds": "Allow",
            "EditBuildQuality": "Deny",
            "DeleteBuilds": "Deny",
            "StopBuilds": "Allow",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azuredevops/sdk/v3/go/azuredevops"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := azuredevops.NewProject(ctx, "example", &azuredevops.ProjectArgs{
    			Name:             pulumi.String("Example Project"),
    			WorkItemTemplate: pulumi.String("Agile"),
    			VersionControl:   pulumi.String("Git"),
    			Visibility:       pulumi.String("private"),
    			Description:      pulumi.String("Managed by Pulumi"),
    		})
    		if err != nil {
    			return err
    		}
    		example_readers := azuredevops.GetGroupOutput(ctx, azuredevops.GetGroupOutputArgs{
    			ProjectId: example.ID(),
    			Name:      pulumi.String("Readers"),
    		}, nil)
    		exampleGit, err := azuredevops.NewGit(ctx, "example", &azuredevops.GitArgs{
    			ProjectId: example.ID(),
    			Name:      pulumi.String("Example Repository"),
    			Initialization: &azuredevops.GitInitializationArgs{
    				InitType: pulumi.String("Clean"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleBuildDefinition, err := azuredevops.NewBuildDefinition(ctx, "example", &azuredevops.BuildDefinitionArgs{
    			ProjectId: example.ID(),
    			Name:      pulumi.String("Example Build Definition"),
    			Path:      pulumi.String("\\ExampleFolder"),
    			CiTrigger: &azuredevops.BuildDefinitionCiTriggerArgs{
    				UseYaml: pulumi.Bool(true),
    			},
    			Repository: &azuredevops.BuildDefinitionRepositoryArgs{
    				RepoType:   pulumi.String("TfsGit"),
    				RepoId:     exampleGit.ID(),
    				BranchName: exampleGit.DefaultBranch,
    				YmlPath:    pulumi.String("azure-pipelines.yml"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewBuildDefinitionPermissions(ctx, "example", &azuredevops.BuildDefinitionPermissionsArgs{
    			ProjectId: example.ID(),
    			Principal: pulumi.String(example_readers.ApplyT(func(example_readers azuredevops.GetGroupResult) (*string, error) {
    				return &example_readers.Id, nil
    			}).(pulumi.StringPtrOutput)),
    			BuildDefinitionId: exampleBuildDefinition.ID(),
    			Permissions: pulumi.StringMap{
    				"ViewBuilds":       pulumi.String("Allow"),
    				"EditBuildQuality": pulumi.String("Deny"),
    				"DeleteBuilds":     pulumi.String("Deny"),
    				"StopBuilds":       pulumi.String("Allow"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureDevOps = Pulumi.AzureDevOps;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new AzureDevOps.Index.Project("example", new()
        {
            Name = "Example Project",
            WorkItemTemplate = "Agile",
            VersionControl = "Git",
            Visibility = "private",
            Description = "Managed by Pulumi",
        });
    
        var example_readers = AzureDevOps.Index.GetGroup.Invoke(new()
        {
            ProjectId = example.Id,
            Name = "Readers",
        });
    
        var exampleGit = new AzureDevOps.Index.Git("example", new()
        {
            ProjectId = example.Id,
            Name = "Example Repository",
            Initialization = new AzureDevOps.Inputs.GitInitializationArgs
            {
                InitType = "Clean",
            },
        });
    
        var exampleBuildDefinition = new AzureDevOps.Index.BuildDefinition("example", new()
        {
            ProjectId = example.Id,
            Name = "Example Build Definition",
            Path = "\\ExampleFolder",
            CiTrigger = new AzureDevOps.Inputs.BuildDefinitionCiTriggerArgs
            {
                UseYaml = true,
            },
            Repository = new AzureDevOps.Inputs.BuildDefinitionRepositoryArgs
            {
                RepoType = "TfsGit",
                RepoId = exampleGit.Id,
                BranchName = exampleGit.DefaultBranch,
                YmlPath = "azure-pipelines.yml",
            },
        });
    
        var exampleBuildDefinitionPermissions = new AzureDevOps.Index.BuildDefinitionPermissions("example", new()
        {
            ProjectId = example.Id,
            Principal = example_readers.Apply(example_readers => example_readers.Apply(getGroupResult => getGroupResult.Id)),
            BuildDefinitionId = exampleBuildDefinition.Id,
            Permissions = 
            {
                { "ViewBuilds", "Allow" },
                { "EditBuildQuality", "Deny" },
                { "DeleteBuilds", "Deny" },
                { "StopBuilds", "Allow" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.Project;
    import com.pulumi.azuredevops.ProjectArgs;
    import com.pulumi.azuredevops.AzuredevopsFunctions;
    import com.pulumi.azuredevops.inputs.GetGroupArgs;
    import com.pulumi.azuredevops.Git;
    import com.pulumi.azuredevops.GitArgs;
    import com.pulumi.azuredevops.inputs.GitInitializationArgs;
    import com.pulumi.azuredevops.BuildDefinition;
    import com.pulumi.azuredevops.BuildDefinitionArgs;
    import com.pulumi.azuredevops.inputs.BuildDefinitionCiTriggerArgs;
    import com.pulumi.azuredevops.inputs.BuildDefinitionRepositoryArgs;
    import com.pulumi.azuredevops.BuildDefinitionPermissions;
    import com.pulumi.azuredevops.BuildDefinitionPermissionsArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Project("example", ProjectArgs.builder()
                .name("Example Project")
                .workItemTemplate("Agile")
                .versionControl("Git")
                .visibility("private")
                .description("Managed by Pulumi")
                .build());
    
            final var example-readers = AzuredevopsFunctions.getGroup(GetGroupArgs.builder()
                .projectId(example.id())
                .name("Readers")
                .build());
    
            var exampleGit = new Git("exampleGit", GitArgs.builder()
                .projectId(example.id())
                .name("Example Repository")
                .initialization(GitInitializationArgs.builder()
                    .initType("Clean")
                    .build())
                .build());
    
            var exampleBuildDefinition = new BuildDefinition("exampleBuildDefinition", BuildDefinitionArgs.builder()
                .projectId(example.id())
                .name("Example Build Definition")
                .path("\\ExampleFolder")
                .ciTrigger(BuildDefinitionCiTriggerArgs.builder()
                    .useYaml(true)
                    .build())
                .repository(BuildDefinitionRepositoryArgs.builder()
                    .repoType("TfsGit")
                    .repoId(exampleGit.id())
                    .branchName(exampleGit.defaultBranch())
                    .ymlPath("azure-pipelines.yml")
                    .build())
                .build());
    
            var exampleBuildDefinitionPermissions = new BuildDefinitionPermissions("exampleBuildDefinitionPermissions", BuildDefinitionPermissionsArgs.builder()
                .projectId(example.id())
                .principal(example_readers.applyValue(_example_readers -> _example_readers.id()))
                .buildDefinitionId(exampleBuildDefinition.id())
                .permissions(Map.ofEntries(
                    Map.entry("ViewBuilds", "Allow"),
                    Map.entry("EditBuildQuality", "Deny"),
                    Map.entry("DeleteBuilds", "Deny"),
                    Map.entry("StopBuilds", "Allow")
                ))
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:Project
        properties:
          name: Example Project
          workItemTemplate: Agile
          versionControl: Git
          visibility: private
          description: Managed by Pulumi
      exampleGit:
        type: azuredevops:Git
        name: example
        properties:
          projectId: ${example.id}
          name: Example Repository
          initialization:
            initType: Clean
      exampleBuildDefinition:
        type: azuredevops:BuildDefinition
        name: example
        properties:
          projectId: ${example.id}
          name: Example Build Definition
          path: \ExampleFolder
          ciTrigger:
            useYaml: true
          repository:
            repoType: TfsGit
            repoId: ${exampleGit.id}
            branchName: ${exampleGit.defaultBranch}
            ymlPath: azure-pipelines.yml
      exampleBuildDefinitionPermissions:
        type: azuredevops:BuildDefinitionPermissions
        name: example
        properties:
          projectId: ${example.id}
          principal: ${["example-readers"].id}
          buildDefinitionId: ${exampleBuildDefinition.id}
          permissions:
            ViewBuilds: Allow
            EditBuildQuality: Deny
            DeleteBuilds: Deny
            StopBuilds: Allow
    variables:
      example-readers:
        fn::invoke:
          function: azuredevops:getGroup
          arguments:
            projectId: ${example.id}
            name: Readers
    
    Example coming soon!
    

    PAT Permissions Required

    • Project & Team: vso.security_manage - Grants the ability to read, write, and manage security permissions.

    Create BuildDefinitionPermissions Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new BuildDefinitionPermissions(name: string, args: BuildDefinitionPermissionsArgs, opts?: CustomResourceOptions);
    @overload
    def BuildDefinitionPermissions(resource_name: str,
                                   args: BuildDefinitionPermissionsArgs,
                                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def BuildDefinitionPermissions(resource_name: str,
                                   opts: Optional[ResourceOptions] = None,
                                   build_definition_id: Optional[str] = None,
                                   permissions: Optional[Mapping[str, str]] = None,
                                   principal: Optional[str] = None,
                                   project_id: Optional[str] = None,
                                   replace: Optional[bool] = None)
    func NewBuildDefinitionPermissions(ctx *Context, name string, args BuildDefinitionPermissionsArgs, opts ...ResourceOption) (*BuildDefinitionPermissions, error)
    public BuildDefinitionPermissions(string name, BuildDefinitionPermissionsArgs args, CustomResourceOptions? opts = null)
    public BuildDefinitionPermissions(String name, BuildDefinitionPermissionsArgs args)
    public BuildDefinitionPermissions(String name, BuildDefinitionPermissionsArgs args, CustomResourceOptions options)
    
    type: azuredevops:BuildDefinitionPermissions
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "azuredevops_builddefinitionpermissions" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args BuildDefinitionPermissionsArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args BuildDefinitionPermissionsArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args BuildDefinitionPermissionsArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BuildDefinitionPermissionsArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BuildDefinitionPermissionsArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var buildDefinitionPermissionsResource = new AzureDevOps.BuildDefinitionPermissions("buildDefinitionPermissionsResource", new()
    {
        BuildDefinitionId = "string",
        Permissions = 
        {
            { "string", "string" },
        },
        Principal = "string",
        ProjectId = "string",
        Replace = false,
    });
    
    example, err := azuredevops.NewBuildDefinitionPermissions(ctx, "buildDefinitionPermissionsResource", &azuredevops.BuildDefinitionPermissionsArgs{
    	BuildDefinitionId: pulumi.String("string"),
    	Permissions: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Principal: pulumi.String("string"),
    	ProjectId: pulumi.String("string"),
    	Replace:   pulumi.Bool(false),
    })
    
    resource "azuredevops_builddefinitionpermissions" "buildDefinitionPermissionsResource" {
      build_definition_id = "string"
      permissions = {
        "string" = "string"
      }
      principal  = "string"
      project_id = "string"
      replace    = false
    }
    
    var buildDefinitionPermissionsResource = new BuildDefinitionPermissions("buildDefinitionPermissionsResource", BuildDefinitionPermissionsArgs.builder()
        .buildDefinitionId("string")
        .permissions(Map.of("string", "string"))
        .principal("string")
        .projectId("string")
        .replace(false)
        .build());
    
    build_definition_permissions_resource = azuredevops.BuildDefinitionPermissions("buildDefinitionPermissionsResource",
        build_definition_id="string",
        permissions={
            "string": "string",
        },
        principal="string",
        project_id="string",
        replace=False)
    
    const buildDefinitionPermissionsResource = new azuredevops.BuildDefinitionPermissions("buildDefinitionPermissionsResource", {
        buildDefinitionId: "string",
        permissions: {
            string: "string",
        },
        principal: "string",
        projectId: "string",
        replace: false,
    });
    
    type: azuredevops:BuildDefinitionPermissions
    properties:
        buildDefinitionId: string
        permissions:
            string: string
        principal: string
        projectId: string
        replace: false
    

    BuildDefinitionPermissions Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The BuildDefinitionPermissions resource accepts the following input properties:

    BuildDefinitionId string
    The id of the build definition to assign the permissions.
    Permissions Dictionary<string, string>
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    Principal string
    The group principal to assign the permissions.
    ProjectId string
    The ID of the project to assign the permissions.
    Replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    BuildDefinitionId string
    The id of the build definition to assign the permissions.
    Permissions map[string]string
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    Principal string
    The group principal to assign the permissions.
    ProjectId string
    The ID of the project to assign the permissions.
    Replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    build_definition_id string
    The id of the build definition to assign the permissions.
    permissions map(string)
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal string
    The group principal to assign the permissions.
    project_id string
    The ID of the project to assign the permissions.
    replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    buildDefinitionId String
    The id of the build definition to assign the permissions.
    permissions Map<String,String>
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal String
    The group principal to assign the permissions.
    projectId String
    The ID of the project to assign the permissions.
    replace Boolean
    Replace (true) or merge (false) the permissions. Default: true.
    buildDefinitionId string
    The id of the build definition to assign the permissions.
    permissions {[key: string]: string}
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal string
    The group principal to assign the permissions.
    projectId string
    The ID of the project to assign the permissions.
    replace boolean
    Replace (true) or merge (false) the permissions. Default: true.
    build_definition_id str
    The id of the build definition to assign the permissions.
    permissions Mapping[str, str]
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal str
    The group principal to assign the permissions.
    project_id str
    The ID of the project to assign the permissions.
    replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    buildDefinitionId String
    The id of the build definition to assign the permissions.
    permissions Map<String>
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal String
    The group principal to assign the permissions.
    projectId String
    The ID of the project to assign the permissions.
    replace Boolean
    Replace (true) or merge (false) the permissions. Default: true.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the BuildDefinitionPermissions resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing BuildDefinitionPermissions Resource

    Get an existing BuildDefinitionPermissions resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: BuildDefinitionPermissionsState, opts?: CustomResourceOptions): BuildDefinitionPermissions
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            build_definition_id: Optional[str] = None,
            permissions: Optional[Mapping[str, str]] = None,
            principal: Optional[str] = None,
            project_id: Optional[str] = None,
            replace: Optional[bool] = None) -> BuildDefinitionPermissions
    func GetBuildDefinitionPermissions(ctx *Context, name string, id IDInput, state *BuildDefinitionPermissionsState, opts ...ResourceOption) (*BuildDefinitionPermissions, error)
    public static BuildDefinitionPermissions Get(string name, Input<string> id, BuildDefinitionPermissionsState? state, CustomResourceOptions? opts = null)
    public static BuildDefinitionPermissions get(String name, Output<String> id, BuildDefinitionPermissionsState state, CustomResourceOptions options)
    resources:  _:    type: azuredevops:BuildDefinitionPermissions    get:      id: ${id}
    import {
      to = azuredevops_builddefinitionpermissions.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    BuildDefinitionId string
    The id of the build definition to assign the permissions.
    Permissions Dictionary<string, string>
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    Principal string
    The group principal to assign the permissions.
    ProjectId string
    The ID of the project to assign the permissions.
    Replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    BuildDefinitionId string
    The id of the build definition to assign the permissions.
    Permissions map[string]string
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    Principal string
    The group principal to assign the permissions.
    ProjectId string
    The ID of the project to assign the permissions.
    Replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    build_definition_id string
    The id of the build definition to assign the permissions.
    permissions map(string)
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal string
    The group principal to assign the permissions.
    project_id string
    The ID of the project to assign the permissions.
    replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    buildDefinitionId String
    The id of the build definition to assign the permissions.
    permissions Map<String,String>
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal String
    The group principal to assign the permissions.
    projectId String
    The ID of the project to assign the permissions.
    replace Boolean
    Replace (true) or merge (false) the permissions. Default: true.
    buildDefinitionId string
    The id of the build definition to assign the permissions.
    permissions {[key: string]: string}
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal string
    The group principal to assign the permissions.
    projectId string
    The ID of the project to assign the permissions.
    replace boolean
    Replace (true) or merge (false) the permissions. Default: true.
    build_definition_id str
    The id of the build definition to assign the permissions.
    permissions Mapping[str, str]
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal str
    The group principal to assign the permissions.
    project_id str
    The ID of the project to assign the permissions.
    replace bool
    Replace (true) or merge (false) the permissions. Default: true.
    buildDefinitionId String
    The id of the build definition to assign the permissions.
    permissions Map<String>
    the permissions to assign. The following permissions are available.

    PermissionDescription
    ViewBuildsView builds
    EditBuildQualityEdit build quality
    RetainIndefinitelyRetain indefinitely
    DeleteBuildsDelete builds
    ManageBuildQualitiesManage build qualities
    DestroyBuildsDestroy builds
    UpdateBuildInformationUpdate build information
    QueueBuildsQueue builds
    ManageBuildQueueManage build queue
    StopBuildsStop builds
    ViewBuildDefinitionView build pipeline
    EditBuildDefinitionEdit build pipeline
    DeleteBuildDefinitionDelete build pipeline
    OverrideBuildCheckInValidationOverride check-in validation by build
    AdministerBuildPermissionsAdminister build permissions
    CreateBuildDefinitionCreate build pipeline
    EditPipelineQueueConfigurationPermissionEdit queue build configuration
    principal String
    The group principal to assign the permissions.
    projectId String
    The ID of the project to assign the permissions.
    replace Boolean
    Replace (true) or merge (false) the permissions. Default: true.

    Import

    The resource does not support import.

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure DevOps pulumi/pulumi-azuredevops
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azuredevops Terraform Provider.
    azuredevops logo
    Viewing docs for Azure DevOps v3.14.1
    published on Wednesday, Apr 29, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.