1. Packages
  2. Strata Cloud Manager Provider
  3. API Docs
  4. DynamicUserGroup
Strata Cloud Manager v0.4.3 published on Saturday, Nov 8, 2025 by Pulumi
scm logo
Strata Cloud Manager v0.4.3 published on Saturday, Nov 8, 2025 by Pulumi

    DynamicUserGroup resource

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as scm from "@pulumi/scm";
    
    // First, create the tags that will be used in the dynamic user group's filter.
    const scmDugTag1 = new scm.Tag("scm_dug_tag_1", {
        folder: "All",
        name: "scm_dug_tag_1",
        color: "Red",
    });
    const scmDugTag2 = new scm.Tag("scm_dug_tag_2", {
        folder: "All",
        name: "scm_dug_tag_2",
        color: "Blue",
    });
    const scmDugTag3 = new scm.Tag("scm_dug_tag_3", {
        folder: "All",
        name: "scm_dug_tag_3",
        color: "Green",
    });
    // Create the dynamic user group that references the tags above.
    const scmDug1 = new scm.DynamicUserGroup("scm_dug_1", {
        folder: "Shared",
        name: "scm_dug_1",
        description: "DUG created for Terraform",
        filter: pulumi.interpolate`'${scmDugTag1.name}' or '${scmDugTag2.name}' and '${scmDugTag3.name}'`,
        tags: [scmDugTag1.name],
    }, {
        dependsOn: [
            scmDugTag1,
            scmDugTag2,
            scmDugTag3,
        ],
    });
    
    import pulumi
    import pulumi_scm as scm
    
    # First, create the tags that will be used in the dynamic user group's filter.
    scm_dug_tag1 = scm.Tag("scm_dug_tag_1",
        folder="All",
        name="scm_dug_tag_1",
        color="Red")
    scm_dug_tag2 = scm.Tag("scm_dug_tag_2",
        folder="All",
        name="scm_dug_tag_2",
        color="Blue")
    scm_dug_tag3 = scm.Tag("scm_dug_tag_3",
        folder="All",
        name="scm_dug_tag_3",
        color="Green")
    # Create the dynamic user group that references the tags above.
    scm_dug1 = scm.DynamicUserGroup("scm_dug_1",
        folder="Shared",
        name="scm_dug_1",
        description="DUG created for Terraform",
        filter=pulumi.Output.all(
            scmDugTag1Name=scm_dug_tag1.name,
            scmDugTag2Name=scm_dug_tag2.name,
            scmDugTag3Name=scm_dug_tag3.name
    ).apply(lambda resolved_outputs: f"'{resolved_outputs['scmDugTag1Name']}' or '{resolved_outputs['scmDugTag2Name']}' and '{resolved_outputs['scmDugTag3Name']}'")
    ,
        tags=[scm_dug_tag1.name],
        opts = pulumi.ResourceOptions(depends_on=[
                scm_dug_tag1,
                scm_dug_tag2,
                scm_dug_tag3,
            ]))
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-scm/sdk/go/scm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// First, create the tags that will be used in the dynamic user group's filter.
    		scmDugTag1, err := scm.NewTag(ctx, "scm_dug_tag_1", &scm.TagArgs{
    			Folder: pulumi.String("All"),
    			Name:   pulumi.String("scm_dug_tag_1"),
    			Color:  pulumi.String("Red"),
    		})
    		if err != nil {
    			return err
    		}
    		scmDugTag2, err := scm.NewTag(ctx, "scm_dug_tag_2", &scm.TagArgs{
    			Folder: pulumi.String("All"),
    			Name:   pulumi.String("scm_dug_tag_2"),
    			Color:  pulumi.String("Blue"),
    		})
    		if err != nil {
    			return err
    		}
    		scmDugTag3, err := scm.NewTag(ctx, "scm_dug_tag_3", &scm.TagArgs{
    			Folder: pulumi.String("All"),
    			Name:   pulumi.String("scm_dug_tag_3"),
    			Color:  pulumi.String("Green"),
    		})
    		if err != nil {
    			return err
    		}
    		// Create the dynamic user group that references the tags above.
    		_, err = scm.NewDynamicUserGroup(ctx, "scm_dug_1", &scm.DynamicUserGroupArgs{
    			Folder:      pulumi.String("Shared"),
    			Name:        pulumi.String("scm_dug_1"),
    			Description: pulumi.String("DUG created for Terraform"),
    			Filter: pulumi.All(scmDugTag1.Name, scmDugTag2.Name, scmDugTag3.Name).ApplyT(func(_args []interface{}) (string, error) {
    				scmDugTag1Name := _args[0].(string)
    				scmDugTag2Name := _args[1].(string)
    				scmDugTag3Name := _args[2].(string)
    				return fmt.Sprintf("'%v' or '%v' and '%v'", scmDugTag1Name, scmDugTag2Name, scmDugTag3Name), nil
    			}).(pulumi.StringOutput),
    			Tags: pulumi.StringArray{
    				scmDugTag1.Name,
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			scmDugTag1,
    			scmDugTag2,
    			scmDugTag3,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scm = Pulumi.Scm;
    
    return await Deployment.RunAsync(() => 
    {
        // First, create the tags that will be used in the dynamic user group's filter.
        var scmDugTag1 = new Scm.Tag("scm_dug_tag_1", new()
        {
            Folder = "All",
            Name = "scm_dug_tag_1",
            Color = "Red",
        });
    
        var scmDugTag2 = new Scm.Tag("scm_dug_tag_2", new()
        {
            Folder = "All",
            Name = "scm_dug_tag_2",
            Color = "Blue",
        });
    
        var scmDugTag3 = new Scm.Tag("scm_dug_tag_3", new()
        {
            Folder = "All",
            Name = "scm_dug_tag_3",
            Color = "Green",
        });
    
        // Create the dynamic user group that references the tags above.
        var scmDug1 = new Scm.DynamicUserGroup("scm_dug_1", new()
        {
            Folder = "Shared",
            Name = "scm_dug_1",
            Description = "DUG created for Terraform",
            Filter = Output.Tuple(scmDugTag1.Name, scmDugTag2.Name, scmDugTag3.Name).Apply(values =>
            {
                var scmDugTag1Name = values.Item1;
                var scmDugTag2Name = values.Item2;
                var scmDugTag3Name = values.Item3;
                return $"'{scmDugTag1Name}' or '{scmDugTag2Name}' and '{scmDugTag3Name}'";
            }),
            Tags = new[]
            {
                scmDugTag1.Name,
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                scmDugTag1,
                scmDugTag2,
                scmDugTag3,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scm.Tag;
    import com.pulumi.scm.TagArgs;
    import com.pulumi.scm.DynamicUserGroup;
    import com.pulumi.scm.DynamicUserGroupArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            // First, create the tags that will be used in the dynamic user group's filter.
            var scmDugTag1 = new Tag("scmDugTag1", TagArgs.builder()
                .folder("All")
                .name("scm_dug_tag_1")
                .color("Red")
                .build());
    
            var scmDugTag2 = new Tag("scmDugTag2", TagArgs.builder()
                .folder("All")
                .name("scm_dug_tag_2")
                .color("Blue")
                .build());
    
            var scmDugTag3 = new Tag("scmDugTag3", TagArgs.builder()
                .folder("All")
                .name("scm_dug_tag_3")
                .color("Green")
                .build());
    
            // Create the dynamic user group that references the tags above.
            var scmDug1 = new DynamicUserGroup("scmDug1", DynamicUserGroupArgs.builder()
                .folder("Shared")
                .name("scm_dug_1")
                .description("DUG created for Terraform")
                .filter(Output.tuple(scmDugTag1.name(), scmDugTag2.name(), scmDugTag3.name()).applyValue(values -> {
                    var scmDugTag1Name = values.t1;
                    var scmDugTag2Name = values.t2;
                    var scmDugTag3Name = values.t3;
                    return String.format("'%s' or '%s' and '%s'", scmDugTag1Name,scmDugTag2Name,scmDugTag3Name);
                }))
                .tags(scmDugTag1.name())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        scmDugTag1,
                        scmDugTag2,
                        scmDugTag3)
                    .build());
    
        }
    }
    
    resources:
      # First, create the tags that will be used in the dynamic user group's filter.
      scmDugTag1:
        type: scm:Tag
        name: scm_dug_tag_1
        properties:
          folder: All
          name: scm_dug_tag_1
          color: Red
      scmDugTag2:
        type: scm:Tag
        name: scm_dug_tag_2
        properties:
          folder: All
          name: scm_dug_tag_2
          color: Blue
      scmDugTag3:
        type: scm:Tag
        name: scm_dug_tag_3
        properties:
          folder: All
          name: scm_dug_tag_3
          color: Green
      # Create the dynamic user group that references the tags above.
      scmDug1:
        type: scm:DynamicUserGroup
        name: scm_dug_1
        properties:
          folder: Shared
          name: scm_dug_1
          description: DUG created for Terraform
          filter: '''${scmDugTag1.name}'' or ''${scmDugTag2.name}'' and ''${scmDugTag3.name}'''
          tags:
            - ${scmDugTag1.name}
        options:
          dependsOn:
            - ${scmDugTag1}
            - ${scmDugTag2}
            - ${scmDugTag3}
    

    Create DynamicUserGroup Resource

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

    Constructor syntax

    new DynamicUserGroup(name: string, args: DynamicUserGroupArgs, opts?: CustomResourceOptions);
    @overload
    def DynamicUserGroup(resource_name: str,
                         args: DynamicUserGroupArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def DynamicUserGroup(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         filter: Optional[str] = None,
                         description: Optional[str] = None,
                         device: Optional[str] = None,
                         folder: Optional[str] = None,
                         name: Optional[str] = None,
                         snippet: Optional[str] = None,
                         tags: Optional[Sequence[str]] = None)
    func NewDynamicUserGroup(ctx *Context, name string, args DynamicUserGroupArgs, opts ...ResourceOption) (*DynamicUserGroup, error)
    public DynamicUserGroup(string name, DynamicUserGroupArgs args, CustomResourceOptions? opts = null)
    public DynamicUserGroup(String name, DynamicUserGroupArgs args)
    public DynamicUserGroup(String name, DynamicUserGroupArgs args, CustomResourceOptions options)
    
    type: scm:DynamicUserGroup
    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 DynamicUserGroupArgs
    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 DynamicUserGroupArgs
    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 DynamicUserGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DynamicUserGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DynamicUserGroupArgs
    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 dynamicUserGroupResource = new Scm.DynamicUserGroup("dynamicUserGroupResource", new()
    {
        Filter = "string",
        Description = "string",
        Device = "string",
        Folder = "string",
        Name = "string",
        Snippet = "string",
        Tags = new[]
        {
            "string",
        },
    });
    
    example, err := scm.NewDynamicUserGroup(ctx, "dynamicUserGroupResource", &scm.DynamicUserGroupArgs{
    	Filter:      pulumi.String("string"),
    	Description: pulumi.String("string"),
    	Device:      pulumi.String("string"),
    	Folder:      pulumi.String("string"),
    	Name:        pulumi.String("string"),
    	Snippet:     pulumi.String("string"),
    	Tags: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var dynamicUserGroupResource = new DynamicUserGroup("dynamicUserGroupResource", DynamicUserGroupArgs.builder()
        .filter("string")
        .description("string")
        .device("string")
        .folder("string")
        .name("string")
        .snippet("string")
        .tags("string")
        .build());
    
    dynamic_user_group_resource = scm.DynamicUserGroup("dynamicUserGroupResource",
        filter="string",
        description="string",
        device="string",
        folder="string",
        name="string",
        snippet="string",
        tags=["string"])
    
    const dynamicUserGroupResource = new scm.DynamicUserGroup("dynamicUserGroupResource", {
        filter: "string",
        description: "string",
        device: "string",
        folder: "string",
        name: "string",
        snippet: "string",
        tags: ["string"],
    });
    
    type: scm:DynamicUserGroup
    properties:
        description: string
        device: string
        filter: string
        folder: string
        name: string
        snippet: string
        tags:
            - string
    

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

    Filter string
    The tag-based filter for the dynamic user group
    Description string
    The description of the dynamic address group
    Device string
    The device in which the resource is defined
    Folder string
    The folder in which the resource is defined
    Name string
    The name of the dynamic address group
    Snippet string
    The snippet in which the resource is defined
    Tags List<string>
    Tags associated with the dynamic user group
    Filter string
    The tag-based filter for the dynamic user group
    Description string
    The description of the dynamic address group
    Device string
    The device in which the resource is defined
    Folder string
    The folder in which the resource is defined
    Name string
    The name of the dynamic address group
    Snippet string
    The snippet in which the resource is defined
    Tags []string
    Tags associated with the dynamic user group
    filter String
    The tag-based filter for the dynamic user group
    description String
    The description of the dynamic address group
    device String
    The device in which the resource is defined
    folder String
    The folder in which the resource is defined
    name String
    The name of the dynamic address group
    snippet String
    The snippet in which the resource is defined
    tags List<String>
    Tags associated with the dynamic user group
    filter string
    The tag-based filter for the dynamic user group
    description string
    The description of the dynamic address group
    device string
    The device in which the resource is defined
    folder string
    The folder in which the resource is defined
    name string
    The name of the dynamic address group
    snippet string
    The snippet in which the resource is defined
    tags string[]
    Tags associated with the dynamic user group
    filter str
    The tag-based filter for the dynamic user group
    description str
    The description of the dynamic address group
    device str
    The device in which the resource is defined
    folder str
    The folder in which the resource is defined
    name str
    The name of the dynamic address group
    snippet str
    The snippet in which the resource is defined
    tags Sequence[str]
    Tags associated with the dynamic user group
    filter String
    The tag-based filter for the dynamic user group
    description String
    The description of the dynamic address group
    device String
    The device in which the resource is defined
    folder String
    The folder in which the resource is defined
    name String
    The name of the dynamic address group
    snippet String
    The snippet in which the resource is defined
    tags List<String>
    Tags associated with the dynamic user group

    Outputs

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

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

    Look up Existing DynamicUserGroup Resource

    Get an existing DynamicUserGroup 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?: DynamicUserGroupState, opts?: CustomResourceOptions): DynamicUserGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            description: Optional[str] = None,
            device: Optional[str] = None,
            filter: Optional[str] = None,
            folder: Optional[str] = None,
            name: Optional[str] = None,
            snippet: Optional[str] = None,
            tags: Optional[Sequence[str]] = None,
            tfid: Optional[str] = None) -> DynamicUserGroup
    func GetDynamicUserGroup(ctx *Context, name string, id IDInput, state *DynamicUserGroupState, opts ...ResourceOption) (*DynamicUserGroup, error)
    public static DynamicUserGroup Get(string name, Input<string> id, DynamicUserGroupState? state, CustomResourceOptions? opts = null)
    public static DynamicUserGroup get(String name, Output<String> id, DynamicUserGroupState state, CustomResourceOptions options)
    resources:  _:    type: scm:DynamicUserGroup    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:
    Description string
    The description of the dynamic address group
    Device string
    The device in which the resource is defined
    Filter string
    The tag-based filter for the dynamic user group
    Folder string
    The folder in which the resource is defined
    Name string
    The name of the dynamic address group
    Snippet string
    The snippet in which the resource is defined
    Tags List<string>
    Tags associated with the dynamic user group
    Tfid string
    Description string
    The description of the dynamic address group
    Device string
    The device in which the resource is defined
    Filter string
    The tag-based filter for the dynamic user group
    Folder string
    The folder in which the resource is defined
    Name string
    The name of the dynamic address group
    Snippet string
    The snippet in which the resource is defined
    Tags []string
    Tags associated with the dynamic user group
    Tfid string
    description String
    The description of the dynamic address group
    device String
    The device in which the resource is defined
    filter String
    The tag-based filter for the dynamic user group
    folder String
    The folder in which the resource is defined
    name String
    The name of the dynamic address group
    snippet String
    The snippet in which the resource is defined
    tags List<String>
    Tags associated with the dynamic user group
    tfid String
    description string
    The description of the dynamic address group
    device string
    The device in which the resource is defined
    filter string
    The tag-based filter for the dynamic user group
    folder string
    The folder in which the resource is defined
    name string
    The name of the dynamic address group
    snippet string
    The snippet in which the resource is defined
    tags string[]
    Tags associated with the dynamic user group
    tfid string
    description str
    The description of the dynamic address group
    device str
    The device in which the resource is defined
    filter str
    The tag-based filter for the dynamic user group
    folder str
    The folder in which the resource is defined
    name str
    The name of the dynamic address group
    snippet str
    The snippet in which the resource is defined
    tags Sequence[str]
    Tags associated with the dynamic user group
    tfid str
    description String
    The description of the dynamic address group
    device String
    The device in which the resource is defined
    filter String
    The tag-based filter for the dynamic user group
    folder String
    The folder in which the resource is defined
    name String
    The name of the dynamic address group
    snippet String
    The snippet in which the resource is defined
    tags List<String>
    Tags associated with the dynamic user group
    tfid String

    Package Details

    Repository
    scm pulumi/pulumi-scm
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the scm Terraform Provider.
    scm logo
    Strata Cloud Manager v0.4.3 published on Saturday, Nov 8, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate