1. Packages
  2. Azure DevOps Provider
  3. API Docs
  4. WorkitemtrackingprocessRule
Viewing docs for Azure DevOps v3.14.0
published on Tuesday, Mar 24, 2026 by Pulumi
azuredevops logo
Viewing docs for Azure DevOps v3.14.0
published on Tuesday, Mar 24, 2026 by Pulumi

    Manages a rule for a work item type in a process. Rules define conditions and actions that are triggered during work item lifecycle events.

    Example Usage

    Basic Rule

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.WorkitemtrackingprocessProcess("example", {
        name: "example-process",
        parentProcessTypeId: "adcc42ab-9882-485e-a3ed-7678f01f66bc",
    });
    const exampleWorkitemtrackingprocessWorkitemtype = new azuredevops.WorkitemtrackingprocessWorkitemtype("example", {
        processId: example.id,
        name: "example",
    });
    const exampleWorkitemtrackingprocessRule = new azuredevops.WorkitemtrackingprocessRule("example", {
        processId: example.id,
        workItemTypeId: exampleWorkitemtrackingprocessWorkitemtype.referenceName,
        name: "Require Title When New",
        conditions: [{
            conditionType: "when",
            field: "System.State",
            value: "New",
        }],
        actions: [{
            actionType: "makeRequired",
            targetField: "System.Title",
        }],
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.WorkitemtrackingprocessProcess("example",
        name="example-process",
        parent_process_type_id="adcc42ab-9882-485e-a3ed-7678f01f66bc")
    example_workitemtrackingprocess_workitemtype = azuredevops.WorkitemtrackingprocessWorkitemtype("example",
        process_id=example.id,
        name="example")
    example_workitemtrackingprocess_rule = azuredevops.WorkitemtrackingprocessRule("example",
        process_id=example.id,
        work_item_type_id=example_workitemtrackingprocess_workitemtype.reference_name,
        name="Require Title When New",
        conditions=[{
            "condition_type": "when",
            "field": "System.State",
            "value": "New",
        }],
        actions=[{
            "action_type": "makeRequired",
            "target_field": "System.Title",
        }])
    
    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.NewWorkitemtrackingprocessProcess(ctx, "example", &azuredevops.WorkitemtrackingprocessProcessArgs{
    			Name:                pulumi.String("example-process"),
    			ParentProcessTypeId: pulumi.String("adcc42ab-9882-485e-a3ed-7678f01f66bc"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleWorkitemtrackingprocessWorkitemtype, err := azuredevops.NewWorkitemtrackingprocessWorkitemtype(ctx, "example", &azuredevops.WorkitemtrackingprocessWorkitemtypeArgs{
    			ProcessId: example.ID(),
    			Name:      pulumi.String("example"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewWorkitemtrackingprocessRule(ctx, "example", &azuredevops.WorkitemtrackingprocessRuleArgs{
    			ProcessId:      example.ID(),
    			WorkItemTypeId: exampleWorkitemtrackingprocessWorkitemtype.ReferenceName,
    			Name:           pulumi.String("Require Title When New"),
    			Conditions: azuredevops.WorkitemtrackingprocessRuleConditionArray{
    				&azuredevops.WorkitemtrackingprocessRuleConditionArgs{
    					ConditionType: pulumi.String("when"),
    					Field:         pulumi.String("System.State"),
    					Value:         pulumi.String("New"),
    				},
    			},
    			Actions: azuredevops.WorkitemtrackingprocessRuleActionArray{
    				&azuredevops.WorkitemtrackingprocessRuleActionArgs{
    					ActionType:  pulumi.String("makeRequired"),
    					TargetField: pulumi.String("System.Title"),
    				},
    			},
    		})
    		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.WorkitemtrackingprocessProcess("example", new()
        {
            Name = "example-process",
            ParentProcessTypeId = "adcc42ab-9882-485e-a3ed-7678f01f66bc",
        });
    
        var exampleWorkitemtrackingprocessWorkitemtype = new AzureDevOps.WorkitemtrackingprocessWorkitemtype("example", new()
        {
            ProcessId = example.Id,
            Name = "example",
        });
    
        var exampleWorkitemtrackingprocessRule = new AzureDevOps.WorkitemtrackingprocessRule("example", new()
        {
            ProcessId = example.Id,
            WorkItemTypeId = exampleWorkitemtrackingprocessWorkitemtype.ReferenceName,
            Name = "Require Title When New",
            Conditions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleConditionArgs
                {
                    ConditionType = "when",
                    Field = "System.State",
                    Value = "New",
                },
            },
            Actions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleActionArgs
                {
                    ActionType = "makeRequired",
                    TargetField = "System.Title",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.WorkitemtrackingprocessProcess;
    import com.pulumi.azuredevops.WorkitemtrackingprocessProcessArgs;
    import com.pulumi.azuredevops.WorkitemtrackingprocessWorkitemtype;
    import com.pulumi.azuredevops.WorkitemtrackingprocessWorkitemtypeArgs;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRule;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRuleArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleConditionArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleActionArgs;
    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 WorkitemtrackingprocessProcess("example", WorkitemtrackingprocessProcessArgs.builder()
                .name("example-process")
                .parentProcessTypeId("adcc42ab-9882-485e-a3ed-7678f01f66bc")
                .build());
    
            var exampleWorkitemtrackingprocessWorkitemtype = new WorkitemtrackingprocessWorkitemtype("exampleWorkitemtrackingprocessWorkitemtype", WorkitemtrackingprocessWorkitemtypeArgs.builder()
                .processId(example.id())
                .name("example")
                .build());
    
            var exampleWorkitemtrackingprocessRule = new WorkitemtrackingprocessRule("exampleWorkitemtrackingprocessRule", WorkitemtrackingprocessRuleArgs.builder()
                .processId(example.id())
                .workItemTypeId(exampleWorkitemtrackingprocessWorkitemtype.referenceName())
                .name("Require Title When New")
                .conditions(WorkitemtrackingprocessRuleConditionArgs.builder()
                    .conditionType("when")
                    .field("System.State")
                    .value("New")
                    .build())
                .actions(WorkitemtrackingprocessRuleActionArgs.builder()
                    .actionType("makeRequired")
                    .targetField("System.Title")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:WorkitemtrackingprocessProcess
        properties:
          name: example-process
          parentProcessTypeId: adcc42ab-9882-485e-a3ed-7678f01f66bc
      exampleWorkitemtrackingprocessWorkitemtype:
        type: azuredevops:WorkitemtrackingprocessWorkitemtype
        name: example
        properties:
          processId: ${example.id}
          name: example
      exampleWorkitemtrackingprocessRule:
        type: azuredevops:WorkitemtrackingprocessRule
        name: example
        properties:
          processId: ${example.id}
          workItemTypeId: ${exampleWorkitemtrackingprocessWorkitemtype.referenceName}
          name: Require Title When New
          conditions:
            - conditionType: when
              field: System.State
              value: New
          actions:
            - actionType: makeRequired
              targetField: System.Title
    

    Group Membership Condition

    The whenCurrentUserIsMemberOfGroup and whenCurrentUserIsNotMemberOfGroup conditions require a group entitlement ID.

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.GroupEntitlement("example", {displayName: "example-group"});
    const groupMembership = new azuredevops.WorkitemtrackingprocessRule("group_membership", {
        processId: exampleAzuredevopsWorkitemtrackingprocessProcess.id,
        workItemTypeId: exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName,
        name: "Require Title for Group Members",
        conditions: [{
            conditionType: "whenCurrentUserIsMemberOfGroup",
            value: example.id,
        }],
        actions: [{
            actionType: "makeRequired",
            targetField: "System.Title",
        }],
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.GroupEntitlement("example", display_name="example-group")
    group_membership = azuredevops.WorkitemtrackingprocessRule("group_membership",
        process_id=example_azuredevops_workitemtrackingprocess_process["id"],
        work_item_type_id=example_azuredevops_workitemtrackingprocess_workitemtype["referenceName"],
        name="Require Title for Group Members",
        conditions=[{
            "condition_type": "whenCurrentUserIsMemberOfGroup",
            "value": example.id,
        }],
        actions=[{
            "action_type": "makeRequired",
            "target_field": "System.Title",
        }])
    
    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.NewGroupEntitlement(ctx, "example", &azuredevops.GroupEntitlementArgs{
    			DisplayName: pulumi.String("example-group"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewWorkitemtrackingprocessRule(ctx, "group_membership", &azuredevops.WorkitemtrackingprocessRuleArgs{
    			ProcessId:      pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessProcess.Id),
    			WorkItemTypeId: pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.ReferenceName),
    			Name:           pulumi.String("Require Title for Group Members"),
    			Conditions: azuredevops.WorkitemtrackingprocessRuleConditionArray{
    				&azuredevops.WorkitemtrackingprocessRuleConditionArgs{
    					ConditionType: pulumi.String("whenCurrentUserIsMemberOfGroup"),
    					Value:         example.ID(),
    				},
    			},
    			Actions: azuredevops.WorkitemtrackingprocessRuleActionArray{
    				&azuredevops.WorkitemtrackingprocessRuleActionArgs{
    					ActionType:  pulumi.String("makeRequired"),
    					TargetField: pulumi.String("System.Title"),
    				},
    			},
    		})
    		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.GroupEntitlement("example", new()
        {
            DisplayName = "example-group",
        });
    
        var groupMembership = new AzureDevOps.WorkitemtrackingprocessRule("group_membership", new()
        {
            ProcessId = exampleAzuredevopsWorkitemtrackingprocessProcess.Id,
            WorkItemTypeId = exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.ReferenceName,
            Name = "Require Title for Group Members",
            Conditions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleConditionArgs
                {
                    ConditionType = "whenCurrentUserIsMemberOfGroup",
                    Value = example.Id,
                },
            },
            Actions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleActionArgs
                {
                    ActionType = "makeRequired",
                    TargetField = "System.Title",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.GroupEntitlement;
    import com.pulumi.azuredevops.GroupEntitlementArgs;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRule;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRuleArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleConditionArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleActionArgs;
    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 GroupEntitlement("example", GroupEntitlementArgs.builder()
                .displayName("example-group")
                .build());
    
            var groupMembership = new WorkitemtrackingprocessRule("groupMembership", WorkitemtrackingprocessRuleArgs.builder()
                .processId(exampleAzuredevopsWorkitemtrackingprocessProcess.id())
                .workItemTypeId(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName())
                .name("Require Title for Group Members")
                .conditions(WorkitemtrackingprocessRuleConditionArgs.builder()
                    .conditionType("whenCurrentUserIsMemberOfGroup")
                    .value(example.id())
                    .build())
                .actions(WorkitemtrackingprocessRuleActionArgs.builder()
                    .actionType("makeRequired")
                    .targetField("System.Title")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:GroupEntitlement
        properties:
          displayName: example-group
      groupMembership:
        type: azuredevops:WorkitemtrackingprocessRule
        name: group_membership
        properties:
          processId: ${exampleAzuredevopsWorkitemtrackingprocessProcess.id}
          workItemTypeId: ${exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName}
          name: Require Title for Group Members
          conditions:
            - conditionType: whenCurrentUserIsMemberOfGroup
              value: ${example.id}
          actions:
            - actionType: makeRequired
              targetField: System.Title
    

    Disallow Value Action

    The disallowValue action must target System.State and be paired with a whenWas condition on System.State.

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const disallowValue = new azuredevops.WorkitemtrackingprocessRule("disallow_value", {
        processId: example.id,
        workItemTypeId: exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName,
        name: "Prevent Closing from New",
        conditions: [{
            conditionType: "whenWas",
            field: "System.State",
            value: "New",
        }],
        actions: [{
            actionType: "disallowValue",
            targetField: "System.State",
            value: "Closed",
        }],
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    disallow_value = azuredevops.WorkitemtrackingprocessRule("disallow_value",
        process_id=example["id"],
        work_item_type_id=example_azuredevops_workitemtrackingprocess_workitemtype["referenceName"],
        name="Prevent Closing from New",
        conditions=[{
            "condition_type": "whenWas",
            "field": "System.State",
            "value": "New",
        }],
        actions=[{
            "action_type": "disallowValue",
            "target_field": "System.State",
            "value": "Closed",
        }])
    
    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 {
    		_, err := azuredevops.NewWorkitemtrackingprocessRule(ctx, "disallow_value", &azuredevops.WorkitemtrackingprocessRuleArgs{
    			ProcessId:      pulumi.Any(example.Id),
    			WorkItemTypeId: pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.ReferenceName),
    			Name:           pulumi.String("Prevent Closing from New"),
    			Conditions: azuredevops.WorkitemtrackingprocessRuleConditionArray{
    				&azuredevops.WorkitemtrackingprocessRuleConditionArgs{
    					ConditionType: pulumi.String("whenWas"),
    					Field:         pulumi.String("System.State"),
    					Value:         pulumi.String("New"),
    				},
    			},
    			Actions: azuredevops.WorkitemtrackingprocessRuleActionArray{
    				&azuredevops.WorkitemtrackingprocessRuleActionArgs{
    					ActionType:  pulumi.String("disallowValue"),
    					TargetField: pulumi.String("System.State"),
    					Value:       pulumi.String("Closed"),
    				},
    			},
    		})
    		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 disallowValue = new AzureDevOps.WorkitemtrackingprocessRule("disallow_value", new()
        {
            ProcessId = example.Id,
            WorkItemTypeId = exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.ReferenceName,
            Name = "Prevent Closing from New",
            Conditions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleConditionArgs
                {
                    ConditionType = "whenWas",
                    Field = "System.State",
                    Value = "New",
                },
            },
            Actions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleActionArgs
                {
                    ActionType = "disallowValue",
                    TargetField = "System.State",
                    Value = "Closed",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRule;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRuleArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleConditionArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleActionArgs;
    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 disallowValue = new WorkitemtrackingprocessRule("disallowValue", WorkitemtrackingprocessRuleArgs.builder()
                .processId(example.id())
                .workItemTypeId(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName())
                .name("Prevent Closing from New")
                .conditions(WorkitemtrackingprocessRuleConditionArgs.builder()
                    .conditionType("whenWas")
                    .field("System.State")
                    .value("New")
                    .build())
                .actions(WorkitemtrackingprocessRuleActionArgs.builder()
                    .actionType("disallowValue")
                    .targetField("System.State")
                    .value("Closed")
                    .build())
                .build());
    
        }
    }
    
    resources:
      disallowValue:
        type: azuredevops:WorkitemtrackingprocessRule
        name: disallow_value
        properties:
          processId: ${example.id}
          workItemTypeId: ${exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName}
          name: Prevent Closing from New
          conditions:
            - conditionType: whenWas
              field: System.State
              value: New
          actions:
            - actionType: disallowValue
              targetField: System.State
              value: Closed
    

    Hide Target Field Action

    The hideTargetField action requires group membership conditions.

    import * as pulumi from "@pulumi/pulumi";
    import * as azuredevops from "@pulumi/azuredevops";
    
    const example = new azuredevops.GroupEntitlement("example", {displayName: "example-group"});
    const custom = new azuredevops.WorkitemtrackingField("custom", {
        name: "Custom Field",
        referenceName: "Custom.Field",
        type: "string",
    });
    const customWorkitemtrackingprocessField = new azuredevops.WorkitemtrackingprocessField("custom", {
        processId: exampleAzuredevopsWorkitemtrackingprocessProcess.id,
        workItemTypeId: exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.id,
        fieldId: custom.id,
    });
    const hideField = new azuredevops.WorkitemtrackingprocessRule("hide_field", {
        processId: exampleAzuredevopsWorkitemtrackingprocessProcess.id,
        workItemTypeId: exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName,
        name: "Hide Custom Field for Non-Members",
        conditions: [{
            conditionType: "whenCurrentUserIsNotMemberOfGroup",
            value: example.id,
        }],
        actions: [{
            actionType: "hideTargetField",
            targetField: customWorkitemtrackingprocessField.fieldId,
        }],
    });
    
    import pulumi
    import pulumi_azuredevops as azuredevops
    
    example = azuredevops.GroupEntitlement("example", display_name="example-group")
    custom = azuredevops.WorkitemtrackingField("custom",
        name="Custom Field",
        reference_name="Custom.Field",
        type="string")
    custom_workitemtrackingprocess_field = azuredevops.WorkitemtrackingprocessField("custom",
        process_id=example_azuredevops_workitemtrackingprocess_process["id"],
        work_item_type_id=example_azuredevops_workitemtrackingprocess_workitemtype["id"],
        field_id=custom.id)
    hide_field = azuredevops.WorkitemtrackingprocessRule("hide_field",
        process_id=example_azuredevops_workitemtrackingprocess_process["id"],
        work_item_type_id=example_azuredevops_workitemtrackingprocess_workitemtype["referenceName"],
        name="Hide Custom Field for Non-Members",
        conditions=[{
            "condition_type": "whenCurrentUserIsNotMemberOfGroup",
            "value": example.id,
        }],
        actions=[{
            "action_type": "hideTargetField",
            "target_field": custom_workitemtrackingprocess_field.field_id,
        }])
    
    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.NewGroupEntitlement(ctx, "example", &azuredevops.GroupEntitlementArgs{
    			DisplayName: pulumi.String("example-group"),
    		})
    		if err != nil {
    			return err
    		}
    		custom, err := azuredevops.NewWorkitemtrackingField(ctx, "custom", &azuredevops.WorkitemtrackingFieldArgs{
    			Name:          pulumi.String("Custom Field"),
    			ReferenceName: pulumi.String("Custom.Field"),
    			Type:          pulumi.String("string"),
    		})
    		if err != nil {
    			return err
    		}
    		customWorkitemtrackingprocessField, err := azuredevops.NewWorkitemtrackingprocessField(ctx, "custom", &azuredevops.WorkitemtrackingprocessFieldArgs{
    			ProcessId:      pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessProcess.Id),
    			WorkItemTypeId: pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.Id),
    			FieldId:        custom.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = azuredevops.NewWorkitemtrackingprocessRule(ctx, "hide_field", &azuredevops.WorkitemtrackingprocessRuleArgs{
    			ProcessId:      pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessProcess.Id),
    			WorkItemTypeId: pulumi.Any(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.ReferenceName),
    			Name:           pulumi.String("Hide Custom Field for Non-Members"),
    			Conditions: azuredevops.WorkitemtrackingprocessRuleConditionArray{
    				&azuredevops.WorkitemtrackingprocessRuleConditionArgs{
    					ConditionType: pulumi.String("whenCurrentUserIsNotMemberOfGroup"),
    					Value:         example.ID(),
    				},
    			},
    			Actions: azuredevops.WorkitemtrackingprocessRuleActionArray{
    				&azuredevops.WorkitemtrackingprocessRuleActionArgs{
    					ActionType:  pulumi.String("hideTargetField"),
    					TargetField: customWorkitemtrackingprocessField.FieldId,
    				},
    			},
    		})
    		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.GroupEntitlement("example", new()
        {
            DisplayName = "example-group",
        });
    
        var custom = new AzureDevOps.WorkitemtrackingField("custom", new()
        {
            Name = "Custom Field",
            ReferenceName = "Custom.Field",
            Type = "string",
        });
    
        var customWorkitemtrackingprocessField = new AzureDevOps.WorkitemtrackingprocessField("custom", new()
        {
            ProcessId = exampleAzuredevopsWorkitemtrackingprocessProcess.Id,
            WorkItemTypeId = exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.Id,
            FieldId = custom.Id,
        });
    
        var hideField = new AzureDevOps.WorkitemtrackingprocessRule("hide_field", new()
        {
            ProcessId = exampleAzuredevopsWorkitemtrackingprocessProcess.Id,
            WorkItemTypeId = exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.ReferenceName,
            Name = "Hide Custom Field for Non-Members",
            Conditions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleConditionArgs
                {
                    ConditionType = "whenCurrentUserIsNotMemberOfGroup",
                    Value = example.Id,
                },
            },
            Actions = new[]
            {
                new AzureDevOps.Inputs.WorkitemtrackingprocessRuleActionArgs
                {
                    ActionType = "hideTargetField",
                    TargetField = customWorkitemtrackingprocessField.FieldId,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azuredevops.GroupEntitlement;
    import com.pulumi.azuredevops.GroupEntitlementArgs;
    import com.pulumi.azuredevops.WorkitemtrackingField;
    import com.pulumi.azuredevops.WorkitemtrackingFieldArgs;
    import com.pulumi.azuredevops.WorkitemtrackingprocessField;
    import com.pulumi.azuredevops.WorkitemtrackingprocessFieldArgs;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRule;
    import com.pulumi.azuredevops.WorkitemtrackingprocessRuleArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleConditionArgs;
    import com.pulumi.azuredevops.inputs.WorkitemtrackingprocessRuleActionArgs;
    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 GroupEntitlement("example", GroupEntitlementArgs.builder()
                .displayName("example-group")
                .build());
    
            var custom = new WorkitemtrackingField("custom", WorkitemtrackingFieldArgs.builder()
                .name("Custom Field")
                .referenceName("Custom.Field")
                .type("string")
                .build());
    
            var customWorkitemtrackingprocessField = new WorkitemtrackingprocessField("customWorkitemtrackingprocessField", WorkitemtrackingprocessFieldArgs.builder()
                .processId(exampleAzuredevopsWorkitemtrackingprocessProcess.id())
                .workItemTypeId(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.id())
                .fieldId(custom.id())
                .build());
    
            var hideField = new WorkitemtrackingprocessRule("hideField", WorkitemtrackingprocessRuleArgs.builder()
                .processId(exampleAzuredevopsWorkitemtrackingprocessProcess.id())
                .workItemTypeId(exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName())
                .name("Hide Custom Field for Non-Members")
                .conditions(WorkitemtrackingprocessRuleConditionArgs.builder()
                    .conditionType("whenCurrentUserIsNotMemberOfGroup")
                    .value(example.id())
                    .build())
                .actions(WorkitemtrackingprocessRuleActionArgs.builder()
                    .actionType("hideTargetField")
                    .targetField(customWorkitemtrackingprocessField.fieldId())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azuredevops:GroupEntitlement
        properties:
          displayName: example-group
      custom:
        type: azuredevops:WorkitemtrackingField
        properties:
          name: Custom Field
          referenceName: Custom.Field
          type: string
      customWorkitemtrackingprocessField:
        type: azuredevops:WorkitemtrackingprocessField
        name: custom
        properties:
          processId: ${exampleAzuredevopsWorkitemtrackingprocessProcess.id}
          workItemTypeId: ${exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.id}
          fieldId: ${custom.id}
      hideField:
        type: azuredevops:WorkitemtrackingprocessRule
        name: hide_field
        properties:
          processId: ${exampleAzuredevopsWorkitemtrackingprocessProcess.id}
          workItemTypeId: ${exampleAzuredevopsWorkitemtrackingprocessWorkitemtype.referenceName}
          name: Hide Custom Field for Non-Members
          conditions:
            - conditionType: whenCurrentUserIsNotMemberOfGroup
              value: ${example.id}
          actions:
            - actionType: hideTargetField
              targetField: ${customWorkitemtrackingprocessField.fieldId}
    

    Create WorkitemtrackingprocessRule Resource

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

    Constructor syntax

    new WorkitemtrackingprocessRule(name: string, args: WorkitemtrackingprocessRuleArgs, opts?: CustomResourceOptions);
    @overload
    def WorkitemtrackingprocessRule(resource_name: str,
                                    args: WorkitemtrackingprocessRuleArgs,
                                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def WorkitemtrackingprocessRule(resource_name: str,
                                    opts: Optional[ResourceOptions] = None,
                                    actions: Optional[Sequence[WorkitemtrackingprocessRuleActionArgs]] = None,
                                    conditions: Optional[Sequence[WorkitemtrackingprocessRuleConditionArgs]] = None,
                                    process_id: Optional[str] = None,
                                    work_item_type_id: Optional[str] = None,
                                    is_enabled: Optional[bool] = None,
                                    name: Optional[str] = None)
    func NewWorkitemtrackingprocessRule(ctx *Context, name string, args WorkitemtrackingprocessRuleArgs, opts ...ResourceOption) (*WorkitemtrackingprocessRule, error)
    public WorkitemtrackingprocessRule(string name, WorkitemtrackingprocessRuleArgs args, CustomResourceOptions? opts = null)
    public WorkitemtrackingprocessRule(String name, WorkitemtrackingprocessRuleArgs args)
    public WorkitemtrackingprocessRule(String name, WorkitemtrackingprocessRuleArgs args, CustomResourceOptions options)
    
    type: azuredevops:WorkitemtrackingprocessRule
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args WorkitemtrackingprocessRuleArgs
    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 WorkitemtrackingprocessRuleArgs
    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 WorkitemtrackingprocessRuleArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args WorkitemtrackingprocessRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args WorkitemtrackingprocessRuleArgs
    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 workitemtrackingprocessRuleResource = new AzureDevOps.WorkitemtrackingprocessRule("workitemtrackingprocessRuleResource", new()
    {
        Actions = new[]
        {
            new AzureDevOps.Inputs.WorkitemtrackingprocessRuleActionArgs
            {
                ActionType = "string",
                TargetField = "string",
                Value = "string",
            },
        },
        Conditions = new[]
        {
            new AzureDevOps.Inputs.WorkitemtrackingprocessRuleConditionArgs
            {
                ConditionType = "string",
                Field = "string",
                Value = "string",
            },
        },
        ProcessId = "string",
        WorkItemTypeId = "string",
        IsEnabled = false,
        Name = "string",
    });
    
    example, err := azuredevops.NewWorkitemtrackingprocessRule(ctx, "workitemtrackingprocessRuleResource", &azuredevops.WorkitemtrackingprocessRuleArgs{
    	Actions: azuredevops.WorkitemtrackingprocessRuleActionArray{
    		&azuredevops.WorkitemtrackingprocessRuleActionArgs{
    			ActionType:  pulumi.String("string"),
    			TargetField: pulumi.String("string"),
    			Value:       pulumi.String("string"),
    		},
    	},
    	Conditions: azuredevops.WorkitemtrackingprocessRuleConditionArray{
    		&azuredevops.WorkitemtrackingprocessRuleConditionArgs{
    			ConditionType: pulumi.String("string"),
    			Field:         pulumi.String("string"),
    			Value:         pulumi.String("string"),
    		},
    	},
    	ProcessId:      pulumi.String("string"),
    	WorkItemTypeId: pulumi.String("string"),
    	IsEnabled:      pulumi.Bool(false),
    	Name:           pulumi.String("string"),
    })
    
    var workitemtrackingprocessRuleResource = new WorkitemtrackingprocessRule("workitemtrackingprocessRuleResource", WorkitemtrackingprocessRuleArgs.builder()
        .actions(WorkitemtrackingprocessRuleActionArgs.builder()
            .actionType("string")
            .targetField("string")
            .value("string")
            .build())
        .conditions(WorkitemtrackingprocessRuleConditionArgs.builder()
            .conditionType("string")
            .field("string")
            .value("string")
            .build())
        .processId("string")
        .workItemTypeId("string")
        .isEnabled(false)
        .name("string")
        .build());
    
    workitemtrackingprocess_rule_resource = azuredevops.WorkitemtrackingprocessRule("workitemtrackingprocessRuleResource",
        actions=[{
            "action_type": "string",
            "target_field": "string",
            "value": "string",
        }],
        conditions=[{
            "condition_type": "string",
            "field": "string",
            "value": "string",
        }],
        process_id="string",
        work_item_type_id="string",
        is_enabled=False,
        name="string")
    
    const workitemtrackingprocessRuleResource = new azuredevops.WorkitemtrackingprocessRule("workitemtrackingprocessRuleResource", {
        actions: [{
            actionType: "string",
            targetField: "string",
            value: "string",
        }],
        conditions: [{
            conditionType: "string",
            field: "string",
            value: "string",
        }],
        processId: "string",
        workItemTypeId: "string",
        isEnabled: false,
        name: "string",
    });
    
    type: azuredevops:WorkitemtrackingprocessRule
    properties:
        actions:
            - actionType: string
              targetField: string
              value: string
        conditions:
            - conditionType: string
              field: string
              value: string
        isEnabled: false
        name: string
        processId: string
        workItemTypeId: string
    

    WorkitemtrackingprocessRule 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 WorkitemtrackingprocessRule resource accepts the following input properties:

    Actions List<Pulumi.AzureDevOps.Inputs.WorkitemtrackingprocessRuleAction>
    One or more action blocks as defined below.
    Conditions List<Pulumi.AzureDevOps.Inputs.WorkitemtrackingprocessRuleCondition>
    One or more condition blocks as defined below.
    ProcessId string
    The ID of the process. Changing this forces a new rule to be created.
    WorkItemTypeId string
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    IsEnabled bool
    Indicates if the rule is enabled. Default: true
    Name string
    Name of the rule.
    Actions []WorkitemtrackingprocessRuleActionArgs
    One or more action blocks as defined below.
    Conditions []WorkitemtrackingprocessRuleConditionArgs
    One or more condition blocks as defined below.
    ProcessId string
    The ID of the process. Changing this forces a new rule to be created.
    WorkItemTypeId string
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    IsEnabled bool
    Indicates if the rule is enabled. Default: true
    Name string
    Name of the rule.
    actions List<WorkitemtrackingprocessRuleAction>
    One or more action blocks as defined below.
    conditions List<WorkitemtrackingprocessRuleCondition>
    One or more condition blocks as defined below.
    processId String
    The ID of the process. Changing this forces a new rule to be created.
    workItemTypeId String
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    isEnabled Boolean
    Indicates if the rule is enabled. Default: true
    name String
    Name of the rule.
    actions WorkitemtrackingprocessRuleAction[]
    One or more action blocks as defined below.
    conditions WorkitemtrackingprocessRuleCondition[]
    One or more condition blocks as defined below.
    processId string
    The ID of the process. Changing this forces a new rule to be created.
    workItemTypeId string
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    isEnabled boolean
    Indicates if the rule is enabled. Default: true
    name string
    Name of the rule.
    actions Sequence[WorkitemtrackingprocessRuleActionArgs]
    One or more action blocks as defined below.
    conditions Sequence[WorkitemtrackingprocessRuleConditionArgs]
    One or more condition blocks as defined below.
    process_id str
    The ID of the process. Changing this forces a new rule to be created.
    work_item_type_id str
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    is_enabled bool
    Indicates if the rule is enabled. Default: true
    name str
    Name of the rule.
    actions List<Property Map>
    One or more action blocks as defined below.
    conditions List<Property Map>
    One or more condition blocks as defined below.
    processId String
    The ID of the process. Changing this forces a new rule to be created.
    workItemTypeId String
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    isEnabled Boolean
    Indicates if the rule is enabled. Default: true
    name String
    Name of the rule.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Url string
    URL of the rule resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    Url string
    URL of the rule resource.
    id String
    The provider-assigned unique ID for this managed resource.
    url String
    URL of the rule resource.
    id string
    The provider-assigned unique ID for this managed resource.
    url string
    URL of the rule resource.
    id str
    The provider-assigned unique ID for this managed resource.
    url str
    URL of the rule resource.
    id String
    The provider-assigned unique ID for this managed resource.
    url String
    URL of the rule resource.

    Look up Existing WorkitemtrackingprocessRule Resource

    Get an existing WorkitemtrackingprocessRule 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?: WorkitemtrackingprocessRuleState, opts?: CustomResourceOptions): WorkitemtrackingprocessRule
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            actions: Optional[Sequence[WorkitemtrackingprocessRuleActionArgs]] = None,
            conditions: Optional[Sequence[WorkitemtrackingprocessRuleConditionArgs]] = None,
            is_enabled: Optional[bool] = None,
            name: Optional[str] = None,
            process_id: Optional[str] = None,
            url: Optional[str] = None,
            work_item_type_id: Optional[str] = None) -> WorkitemtrackingprocessRule
    func GetWorkitemtrackingprocessRule(ctx *Context, name string, id IDInput, state *WorkitemtrackingprocessRuleState, opts ...ResourceOption) (*WorkitemtrackingprocessRule, error)
    public static WorkitemtrackingprocessRule Get(string name, Input<string> id, WorkitemtrackingprocessRuleState? state, CustomResourceOptions? opts = null)
    public static WorkitemtrackingprocessRule get(String name, Output<String> id, WorkitemtrackingprocessRuleState state, CustomResourceOptions options)
    resources:  _:    type: azuredevops:WorkitemtrackingprocessRule    get:      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:
    Actions List<Pulumi.AzureDevOps.Inputs.WorkitemtrackingprocessRuleAction>
    One or more action blocks as defined below.
    Conditions List<Pulumi.AzureDevOps.Inputs.WorkitemtrackingprocessRuleCondition>
    One or more condition blocks as defined below.
    IsEnabled bool
    Indicates if the rule is enabled. Default: true
    Name string
    Name of the rule.
    ProcessId string
    The ID of the process. Changing this forces a new rule to be created.
    Url string
    URL of the rule resource.
    WorkItemTypeId string
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    Actions []WorkitemtrackingprocessRuleActionArgs
    One or more action blocks as defined below.
    Conditions []WorkitemtrackingprocessRuleConditionArgs
    One or more condition blocks as defined below.
    IsEnabled bool
    Indicates if the rule is enabled. Default: true
    Name string
    Name of the rule.
    ProcessId string
    The ID of the process. Changing this forces a new rule to be created.
    Url string
    URL of the rule resource.
    WorkItemTypeId string
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    actions List<WorkitemtrackingprocessRuleAction>
    One or more action blocks as defined below.
    conditions List<WorkitemtrackingprocessRuleCondition>
    One or more condition blocks as defined below.
    isEnabled Boolean
    Indicates if the rule is enabled. Default: true
    name String
    Name of the rule.
    processId String
    The ID of the process. Changing this forces a new rule to be created.
    url String
    URL of the rule resource.
    workItemTypeId String
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    actions WorkitemtrackingprocessRuleAction[]
    One or more action blocks as defined below.
    conditions WorkitemtrackingprocessRuleCondition[]
    One or more condition blocks as defined below.
    isEnabled boolean
    Indicates if the rule is enabled. Default: true
    name string
    Name of the rule.
    processId string
    The ID of the process. Changing this forces a new rule to be created.
    url string
    URL of the rule resource.
    workItemTypeId string
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    actions Sequence[WorkitemtrackingprocessRuleActionArgs]
    One or more action blocks as defined below.
    conditions Sequence[WorkitemtrackingprocessRuleConditionArgs]
    One or more condition blocks as defined below.
    is_enabled bool
    Indicates if the rule is enabled. Default: true
    name str
    Name of the rule.
    process_id str
    The ID of the process. Changing this forces a new rule to be created.
    url str
    URL of the rule resource.
    work_item_type_id str
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.
    actions List<Property Map>
    One or more action blocks as defined below.
    conditions List<Property Map>
    One or more condition blocks as defined below.
    isEnabled Boolean
    Indicates if the rule is enabled. Default: true
    name String
    Name of the rule.
    processId String
    The ID of the process. Changing this forces a new rule to be created.
    url String
    URL of the rule resource.
    workItemTypeId String
    The ID (reference name) of the work item type. Changing this forces a new rule to be created.

    Supporting Types

    WorkitemtrackingprocessRuleAction, WorkitemtrackingprocessRuleActionArgs

    ActionType string
    Type of action. Valid values: makeRequired, makeReadOnly, setDefaultValue, setDefaultFromClock, setDefaultFromField, copyValue, copyFromClock, copyFromCurrentUser, copyFromField, setValueToEmpty, copyFromServerClock, copyFromServerCurrentUser, hideTargetField, disallowValue.
    TargetField string
    Field (reference name) to act on.
    Value string
    Value to set on the target field.
    ActionType string
    Type of action. Valid values: makeRequired, makeReadOnly, setDefaultValue, setDefaultFromClock, setDefaultFromField, copyValue, copyFromClock, copyFromCurrentUser, copyFromField, setValueToEmpty, copyFromServerClock, copyFromServerCurrentUser, hideTargetField, disallowValue.
    TargetField string
    Field (reference name) to act on.
    Value string
    Value to set on the target field.
    actionType String
    Type of action. Valid values: makeRequired, makeReadOnly, setDefaultValue, setDefaultFromClock, setDefaultFromField, copyValue, copyFromClock, copyFromCurrentUser, copyFromField, setValueToEmpty, copyFromServerClock, copyFromServerCurrentUser, hideTargetField, disallowValue.
    targetField String
    Field (reference name) to act on.
    value String
    Value to set on the target field.
    actionType string
    Type of action. Valid values: makeRequired, makeReadOnly, setDefaultValue, setDefaultFromClock, setDefaultFromField, copyValue, copyFromClock, copyFromCurrentUser, copyFromField, setValueToEmpty, copyFromServerClock, copyFromServerCurrentUser, hideTargetField, disallowValue.
    targetField string
    Field (reference name) to act on.
    value string
    Value to set on the target field.
    action_type str
    Type of action. Valid values: makeRequired, makeReadOnly, setDefaultValue, setDefaultFromClock, setDefaultFromField, copyValue, copyFromClock, copyFromCurrentUser, copyFromField, setValueToEmpty, copyFromServerClock, copyFromServerCurrentUser, hideTargetField, disallowValue.
    target_field str
    Field (reference name) to act on.
    value str
    Value to set on the target field.
    actionType String
    Type of action. Valid values: makeRequired, makeReadOnly, setDefaultValue, setDefaultFromClock, setDefaultFromField, copyValue, copyFromClock, copyFromCurrentUser, copyFromField, setValueToEmpty, copyFromServerClock, copyFromServerCurrentUser, hideTargetField, disallowValue.
    targetField String
    Field (reference name) to act on.
    value String
    Value to set on the target field.

    WorkitemtrackingprocessRuleCondition, WorkitemtrackingprocessRuleConditionArgs

    ConditionType string
    Type of condition. Valid values: when, whenNot, whenChanged, whenNotChanged, whenWas, whenCurrentUserIsMemberOfGroup, whenCurrentUserIsNotMemberOfGroup.
    Field string
    Field reference name for the condition. Required for most condition types.
    Value string
    Value to match for the condition.
    ConditionType string
    Type of condition. Valid values: when, whenNot, whenChanged, whenNotChanged, whenWas, whenCurrentUserIsMemberOfGroup, whenCurrentUserIsNotMemberOfGroup.
    Field string
    Field reference name for the condition. Required for most condition types.
    Value string
    Value to match for the condition.
    conditionType String
    Type of condition. Valid values: when, whenNot, whenChanged, whenNotChanged, whenWas, whenCurrentUserIsMemberOfGroup, whenCurrentUserIsNotMemberOfGroup.
    field String
    Field reference name for the condition. Required for most condition types.
    value String
    Value to match for the condition.
    conditionType string
    Type of condition. Valid values: when, whenNot, whenChanged, whenNotChanged, whenWas, whenCurrentUserIsMemberOfGroup, whenCurrentUserIsNotMemberOfGroup.
    field string
    Field reference name for the condition. Required for most condition types.
    value string
    Value to match for the condition.
    condition_type str
    Type of condition. Valid values: when, whenNot, whenChanged, whenNotChanged, whenWas, whenCurrentUserIsMemberOfGroup, whenCurrentUserIsNotMemberOfGroup.
    field str
    Field reference name for the condition. Required for most condition types.
    value str
    Value to match for the condition.
    conditionType String
    Type of condition. Valid values: when, whenNot, whenChanged, whenNotChanged, whenWas, whenCurrentUserIsMemberOfGroup, whenCurrentUserIsNotMemberOfGroup.
    field String
    Field reference name for the condition. Required for most condition types.
    value String
    Value to match for the condition.

    Import

    Rules can be imported using the complete resource id process_id/work_item_type_id/rule_id, e.g.

    $ pulumi import azuredevops:index/workitemtrackingprocessRule:WorkitemtrackingprocessRule example 00000000-0000-0000-0000-000000000000/MyProcess.CustomWorkItemType/11111111-1111-1111-1111-111111111111
    

    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.0
    published on Tuesday, Mar 24, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.