1. Packages
  2. Harness
  3. API Docs
  4. platform
  5. Usergroup
Harness v0.0.6 published on Saturday, Jul 1, 2023 by lbrlabs

harness.platform.Usergroup

Explore with Pulumi AI

harness logo
Harness v0.0.6 published on Saturday, Jul 1, 2023 by lbrlabs

    Resource for creating a Harness User Group. Linking SSO providers with User Groups:

        The following fields need to be populated for LDAP SSO Providers:
    	
        - linked_sso_id
    	
        - linked_sso_display_name
    	
        - sso_group_id
    	
        - sso_group_name
    	
        - linked_sso_type
    	
        - sso_linked
    	
        The following fields need to be populated for SAML SSO Providers:
    	
        - linked_sso_id
    	
        - linked_sso_display_name
    	
        - sso_group_name
    	
        - sso_group_id // same as sso_group_name
    	
        - linked_sso_type
    	
        - sso_linked
    

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Harness = Lbrlabs.PulumiPackage.Harness;
    
    return await Deployment.RunAsync(() => 
    {
        var ssoTypeSaml = new Harness.Platform.Usergroup("ssoTypeSaml", new()
        {
            ExternallyManaged = false,
            Identifier = "identifier",
            LinkedSsoDisplayName = "linked_sso_display_name",
            LinkedSsoId = "linked_sso_id",
            LinkedSsoType = "SAML",
            NotificationConfigs = new[]
            {
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    SlackWebhookUrl = "https://google.com",
                    Type = "SLACK",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    GroupEmail = "email@email.com",
                    SendEmailToAllUsers = true,
                    Type = "EMAIL",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    MicrosoftTeamsWebhookUrl = "https://google.com",
                    Type = "MSTEAMS",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    PagerDutyKey = "pagerDutyKey",
                    Type = "PAGERDUTY",
                },
            },
            OrgId = "org_id",
            ProjectId = "project_id",
            SsoGroupId = "sso_group_name",
            SsoGroupName = "sso_group_name",
            SsoLinked = true,
            Users = new[]
            {
                "user_id",
            },
        });
    
        var ssoTypeLdap = new Harness.Platform.Usergroup("ssoTypeLdap", new()
        {
            ExternallyManaged = false,
            Identifier = "identifier",
            LinkedSsoDisplayName = "linked_sso_display_name",
            LinkedSsoId = "linked_sso_id",
            LinkedSsoType = "LDAP",
            NotificationConfigs = new[]
            {
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    SlackWebhookUrl = "https://google.com",
                    Type = "SLACK",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    GroupEmail = "email@email.com",
                    SendEmailToAllUsers = true,
                    Type = "EMAIL",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    MicrosoftTeamsWebhookUrl = "https://google.com",
                    Type = "MSTEAMS",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    PagerDutyKey = "pagerDutyKey",
                    Type = "PAGERDUTY",
                },
            },
            OrgId = "org_id",
            ProjectId = "project_id",
            SsoGroupId = "sso_group_id",
            SsoGroupName = "sso_group_name",
            SsoLinked = true,
            Users = new[]
            {
                "user_id",
            },
        });
    
        // Create user group by adding user emails
        var example = new Harness.Platform.Usergroup("example", new()
        {
            ExternallyManaged = false,
            Identifier = "identifier",
            LinkedSsoDisplayName = "linked_sso_display_name",
            LinkedSsoId = "linked_sso_id",
            LinkedSsoType = "SAML",
            NotificationConfigs = new[]
            {
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    SlackWebhookUrl = "https://google.com",
                    Type = "SLACK",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    GroupEmail = "email@email.com",
                    SendEmailToAllUsers = true,
                    Type = "EMAIL",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    MicrosoftTeamsWebhookUrl = "https://google.com",
                    Type = "MSTEAMS",
                },
                new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
                {
                    PagerDutyKey = "pagerDutyKey",
                    Type = "PAGERDUTY",
                },
            },
            OrgId = "org_id",
            ProjectId = "project_id",
            SsoGroupId = "sso_group_name",
            SsoGroupName = "sso_group_name",
            SsoLinked = true,
            UserEmails = new[]
            {
                "user@email.com",
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/lbrlabs/pulumi-harness/sdk/go/harness/platform"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := platform.NewUsergroup(ctx, "ssoTypeSaml", &platform.UsergroupArgs{
    			ExternallyManaged:    pulumi.Bool(false),
    			Identifier:           pulumi.String("identifier"),
    			LinkedSsoDisplayName: pulumi.String("linked_sso_display_name"),
    			LinkedSsoId:          pulumi.String("linked_sso_id"),
    			LinkedSsoType:        pulumi.String("SAML"),
    			NotificationConfigs: platform.UsergroupNotificationConfigArray{
    				&platform.UsergroupNotificationConfigArgs{
    					SlackWebhookUrl: pulumi.String("https://google.com"),
    					Type:            pulumi.String("SLACK"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					GroupEmail:          pulumi.String("email@email.com"),
    					SendEmailToAllUsers: pulumi.Bool(true),
    					Type:                pulumi.String("EMAIL"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					MicrosoftTeamsWebhookUrl: pulumi.String("https://google.com"),
    					Type:                     pulumi.String("MSTEAMS"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					PagerDutyKey: pulumi.String("pagerDutyKey"),
    					Type:         pulumi.String("PAGERDUTY"),
    				},
    			},
    			OrgId:        pulumi.String("org_id"),
    			ProjectId:    pulumi.String("project_id"),
    			SsoGroupId:   pulumi.String("sso_group_name"),
    			SsoGroupName: pulumi.String("sso_group_name"),
    			SsoLinked:    pulumi.Bool(true),
    			Users: pulumi.StringArray{
    				pulumi.String("user_id"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = platform.NewUsergroup(ctx, "ssoTypeLdap", &platform.UsergroupArgs{
    			ExternallyManaged:    pulumi.Bool(false),
    			Identifier:           pulumi.String("identifier"),
    			LinkedSsoDisplayName: pulumi.String("linked_sso_display_name"),
    			LinkedSsoId:          pulumi.String("linked_sso_id"),
    			LinkedSsoType:        pulumi.String("LDAP"),
    			NotificationConfigs: platform.UsergroupNotificationConfigArray{
    				&platform.UsergroupNotificationConfigArgs{
    					SlackWebhookUrl: pulumi.String("https://google.com"),
    					Type:            pulumi.String("SLACK"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					GroupEmail:          pulumi.String("email@email.com"),
    					SendEmailToAllUsers: pulumi.Bool(true),
    					Type:                pulumi.String("EMAIL"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					MicrosoftTeamsWebhookUrl: pulumi.String("https://google.com"),
    					Type:                     pulumi.String("MSTEAMS"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					PagerDutyKey: pulumi.String("pagerDutyKey"),
    					Type:         pulumi.String("PAGERDUTY"),
    				},
    			},
    			OrgId:        pulumi.String("org_id"),
    			ProjectId:    pulumi.String("project_id"),
    			SsoGroupId:   pulumi.String("sso_group_id"),
    			SsoGroupName: pulumi.String("sso_group_name"),
    			SsoLinked:    pulumi.Bool(true),
    			Users: pulumi.StringArray{
    				pulumi.String("user_id"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = platform.NewUsergroup(ctx, "example", &platform.UsergroupArgs{
    			ExternallyManaged:    pulumi.Bool(false),
    			Identifier:           pulumi.String("identifier"),
    			LinkedSsoDisplayName: pulumi.String("linked_sso_display_name"),
    			LinkedSsoId:          pulumi.String("linked_sso_id"),
    			LinkedSsoType:        pulumi.String("SAML"),
    			NotificationConfigs: platform.UsergroupNotificationConfigArray{
    				&platform.UsergroupNotificationConfigArgs{
    					SlackWebhookUrl: pulumi.String("https://google.com"),
    					Type:            pulumi.String("SLACK"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					GroupEmail:          pulumi.String("email@email.com"),
    					SendEmailToAllUsers: pulumi.Bool(true),
    					Type:                pulumi.String("EMAIL"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					MicrosoftTeamsWebhookUrl: pulumi.String("https://google.com"),
    					Type:                     pulumi.String("MSTEAMS"),
    				},
    				&platform.UsergroupNotificationConfigArgs{
    					PagerDutyKey: pulumi.String("pagerDutyKey"),
    					Type:         pulumi.String("PAGERDUTY"),
    				},
    			},
    			OrgId:        pulumi.String("org_id"),
    			ProjectId:    pulumi.String("project_id"),
    			SsoGroupId:   pulumi.String("sso_group_name"),
    			SsoGroupName: pulumi.String("sso_group_name"),
    			SsoLinked:    pulumi.Bool(true),
    			UserEmails: pulumi.StringArray{
    				pulumi.String("user@email.com"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.harness.platform.Usergroup;
    import com.pulumi.harness.platform.UsergroupArgs;
    import com.pulumi.harness.platform.inputs.UsergroupNotificationConfigArgs;
    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 ssoTypeSaml = new Usergroup("ssoTypeSaml", UsergroupArgs.builder()        
                .externallyManaged(false)
                .identifier("identifier")
                .linkedSsoDisplayName("linked_sso_display_name")
                .linkedSsoId("linked_sso_id")
                .linkedSsoType("SAML")
                .notificationConfigs(            
                    UsergroupNotificationConfigArgs.builder()
                        .slackWebhookUrl("https://google.com")
                        .type("SLACK")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .groupEmail("email@email.com")
                        .sendEmailToAllUsers(true)
                        .type("EMAIL")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .microsoftTeamsWebhookUrl("https://google.com")
                        .type("MSTEAMS")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .pagerDutyKey("pagerDutyKey")
                        .type("PAGERDUTY")
                        .build())
                .orgId("org_id")
                .projectId("project_id")
                .ssoGroupId("sso_group_name")
                .ssoGroupName("sso_group_name")
                .ssoLinked(true)
                .users("user_id")
                .build());
    
            var ssoTypeLdap = new Usergroup("ssoTypeLdap", UsergroupArgs.builder()        
                .externallyManaged(false)
                .identifier("identifier")
                .linkedSsoDisplayName("linked_sso_display_name")
                .linkedSsoId("linked_sso_id")
                .linkedSsoType("LDAP")
                .notificationConfigs(            
                    UsergroupNotificationConfigArgs.builder()
                        .slackWebhookUrl("https://google.com")
                        .type("SLACK")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .groupEmail("email@email.com")
                        .sendEmailToAllUsers(true)
                        .type("EMAIL")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .microsoftTeamsWebhookUrl("https://google.com")
                        .type("MSTEAMS")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .pagerDutyKey("pagerDutyKey")
                        .type("PAGERDUTY")
                        .build())
                .orgId("org_id")
                .projectId("project_id")
                .ssoGroupId("sso_group_id")
                .ssoGroupName("sso_group_name")
                .ssoLinked(true)
                .users("user_id")
                .build());
    
            var example = new Usergroup("example", UsergroupArgs.builder()        
                .externallyManaged(false)
                .identifier("identifier")
                .linkedSsoDisplayName("linked_sso_display_name")
                .linkedSsoId("linked_sso_id")
                .linkedSsoType("SAML")
                .notificationConfigs(            
                    UsergroupNotificationConfigArgs.builder()
                        .slackWebhookUrl("https://google.com")
                        .type("SLACK")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .groupEmail("email@email.com")
                        .sendEmailToAllUsers(true)
                        .type("EMAIL")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .microsoftTeamsWebhookUrl("https://google.com")
                        .type("MSTEAMS")
                        .build(),
                    UsergroupNotificationConfigArgs.builder()
                        .pagerDutyKey("pagerDutyKey")
                        .type("PAGERDUTY")
                        .build())
                .orgId("org_id")
                .projectId("project_id")
                .ssoGroupId("sso_group_name")
                .ssoGroupName("sso_group_name")
                .ssoLinked(true)
                .userEmails("user@email.com")
                .build());
    
        }
    }
    
    import pulumi
    import lbrlabs_pulumi_harness as harness
    
    sso_type_saml = harness.platform.Usergroup("ssoTypeSaml",
        externally_managed=False,
        identifier="identifier",
        linked_sso_display_name="linked_sso_display_name",
        linked_sso_id="linked_sso_id",
        linked_sso_type="SAML",
        notification_configs=[
            harness.platform.UsergroupNotificationConfigArgs(
                slack_webhook_url="https://google.com",
                type="SLACK",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                group_email="email@email.com",
                send_email_to_all_users=True,
                type="EMAIL",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                microsoft_teams_webhook_url="https://google.com",
                type="MSTEAMS",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                pager_duty_key="pagerDutyKey",
                type="PAGERDUTY",
            ),
        ],
        org_id="org_id",
        project_id="project_id",
        sso_group_id="sso_group_name",
        sso_group_name="sso_group_name",
        sso_linked=True,
        users=["user_id"])
    sso_type_ldap = harness.platform.Usergroup("ssoTypeLdap",
        externally_managed=False,
        identifier="identifier",
        linked_sso_display_name="linked_sso_display_name",
        linked_sso_id="linked_sso_id",
        linked_sso_type="LDAP",
        notification_configs=[
            harness.platform.UsergroupNotificationConfigArgs(
                slack_webhook_url="https://google.com",
                type="SLACK",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                group_email="email@email.com",
                send_email_to_all_users=True,
                type="EMAIL",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                microsoft_teams_webhook_url="https://google.com",
                type="MSTEAMS",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                pager_duty_key="pagerDutyKey",
                type="PAGERDUTY",
            ),
        ],
        org_id="org_id",
        project_id="project_id",
        sso_group_id="sso_group_id",
        sso_group_name="sso_group_name",
        sso_linked=True,
        users=["user_id"])
    # Create user group by adding user emails
    example = harness.platform.Usergroup("example",
        externally_managed=False,
        identifier="identifier",
        linked_sso_display_name="linked_sso_display_name",
        linked_sso_id="linked_sso_id",
        linked_sso_type="SAML",
        notification_configs=[
            harness.platform.UsergroupNotificationConfigArgs(
                slack_webhook_url="https://google.com",
                type="SLACK",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                group_email="email@email.com",
                send_email_to_all_users=True,
                type="EMAIL",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                microsoft_teams_webhook_url="https://google.com",
                type="MSTEAMS",
            ),
            harness.platform.UsergroupNotificationConfigArgs(
                pager_duty_key="pagerDutyKey",
                type="PAGERDUTY",
            ),
        ],
        org_id="org_id",
        project_id="project_id",
        sso_group_id="sso_group_name",
        sso_group_name="sso_group_name",
        sso_linked=True,
        user_emails=["user@email.com"])
    
    import * as pulumi from "@pulumi/pulumi";
    import * as harness from "@lbrlabs/pulumi-harness";
    
    const ssoTypeSaml = new harness.platform.Usergroup("ssoTypeSaml", {
        externallyManaged: false,
        identifier: "identifier",
        linkedSsoDisplayName: "linked_sso_display_name",
        linkedSsoId: "linked_sso_id",
        linkedSsoType: "SAML",
        notificationConfigs: [
            {
                slackWebhookUrl: "https://google.com",
                type: "SLACK",
            },
            {
                groupEmail: "email@email.com",
                sendEmailToAllUsers: true,
                type: "EMAIL",
            },
            {
                microsoftTeamsWebhookUrl: "https://google.com",
                type: "MSTEAMS",
            },
            {
                pagerDutyKey: "pagerDutyKey",
                type: "PAGERDUTY",
            },
        ],
        orgId: "org_id",
        projectId: "project_id",
        ssoGroupId: "sso_group_name",
        ssoGroupName: "sso_group_name",
        ssoLinked: true,
        users: ["user_id"],
    });
    const ssoTypeLdap = new harness.platform.Usergroup("ssoTypeLdap", {
        externallyManaged: false,
        identifier: "identifier",
        linkedSsoDisplayName: "linked_sso_display_name",
        linkedSsoId: "linked_sso_id",
        linkedSsoType: "LDAP",
        notificationConfigs: [
            {
                slackWebhookUrl: "https://google.com",
                type: "SLACK",
            },
            {
                groupEmail: "email@email.com",
                sendEmailToAllUsers: true,
                type: "EMAIL",
            },
            {
                microsoftTeamsWebhookUrl: "https://google.com",
                type: "MSTEAMS",
            },
            {
                pagerDutyKey: "pagerDutyKey",
                type: "PAGERDUTY",
            },
        ],
        orgId: "org_id",
        projectId: "project_id",
        ssoGroupId: "sso_group_id",
        ssoGroupName: "sso_group_name",
        ssoLinked: true,
        users: ["user_id"],
    });
    // Create user group by adding user emails
    const example = new harness.platform.Usergroup("example", {
        externallyManaged: false,
        identifier: "identifier",
        linkedSsoDisplayName: "linked_sso_display_name",
        linkedSsoId: "linked_sso_id",
        linkedSsoType: "SAML",
        notificationConfigs: [
            {
                slackWebhookUrl: "https://google.com",
                type: "SLACK",
            },
            {
                groupEmail: "email@email.com",
                sendEmailToAllUsers: true,
                type: "EMAIL",
            },
            {
                microsoftTeamsWebhookUrl: "https://google.com",
                type: "MSTEAMS",
            },
            {
                pagerDutyKey: "pagerDutyKey",
                type: "PAGERDUTY",
            },
        ],
        orgId: "org_id",
        projectId: "project_id",
        ssoGroupId: "sso_group_name",
        ssoGroupName: "sso_group_name",
        ssoLinked: true,
        userEmails: ["user@email.com"],
    });
    
    resources:
      ssoTypeSaml:
        type: harness:platform:Usergroup
        properties:
          externallyManaged: false
          identifier: identifier
          linkedSsoDisplayName: linked_sso_display_name
          linkedSsoId: linked_sso_id
          linkedSsoType: SAML
          notificationConfigs:
            - slackWebhookUrl: https://google.com
              type: SLACK
            - groupEmail: email@email.com
              sendEmailToAllUsers: true
              type: EMAIL
            - microsoftTeamsWebhookUrl: https://google.com
              type: MSTEAMS
            - pagerDutyKey: pagerDutyKey
              type: PAGERDUTY
          orgId: org_id
          projectId: project_id
          ssoGroupId: sso_group_name
          # When sso linked type is saml sso_group_id is same as sso_group_name
          ssoGroupName: sso_group_name
          ssoLinked: true
          users:
            - user_id
      ssoTypeLdap:
        type: harness:platform:Usergroup
        properties:
          externallyManaged: false
          identifier: identifier
          linkedSsoDisplayName: linked_sso_display_name
          linkedSsoId: linked_sso_id
          linkedSsoType: LDAP
          notificationConfigs:
            - slackWebhookUrl: https://google.com
              type: SLACK
            - groupEmail: email@email.com
              sendEmailToAllUsers: true
              type: EMAIL
            - microsoftTeamsWebhookUrl: https://google.com
              type: MSTEAMS
            - pagerDutyKey: pagerDutyKey
              type: PAGERDUTY
          orgId: org_id
          projectId: project_id
          ssoGroupId: sso_group_id
          ssoGroupName: sso_group_name
          ssoLinked: true
          users:
            - user_id
      # Create user group by adding user emails
      example:
        type: harness:platform:Usergroup
        properties:
          externallyManaged: false
          identifier: identifier
          linkedSsoDisplayName: linked_sso_display_name
          linkedSsoId: linked_sso_id
          linkedSsoType: SAML
          notificationConfigs:
            - slackWebhookUrl: https://google.com
              type: SLACK
            - groupEmail: email@email.com
              sendEmailToAllUsers: true
              type: EMAIL
            - microsoftTeamsWebhookUrl: https://google.com
              type: MSTEAMS
            - pagerDutyKey: pagerDutyKey
              type: PAGERDUTY
          orgId: org_id
          projectId: project_id
          ssoGroupId: sso_group_name
          # When sso linked type is saml sso_group_id is same as sso_group_name
          ssoGroupName: sso_group_name
          ssoLinked: true
          userEmails:
            - user@email.com
    

    Create Usergroup Resource

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

    Constructor syntax

    new Usergroup(name: string, args: UsergroupArgs, opts?: CustomResourceOptions);
    @overload
    def Usergroup(resource_name: str,
                  args: UsergroupArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Usergroup(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  identifier: Optional[str] = None,
                  org_id: Optional[str] = None,
                  project_id: Optional[str] = None,
                  linked_sso_display_name: Optional[str] = None,
                  linked_sso_id: Optional[str] = None,
                  linked_sso_type: Optional[str] = None,
                  name: Optional[str] = None,
                  externally_managed: Optional[bool] = None,
                  description: Optional[str] = None,
                  notification_configs: Optional[Sequence[UsergroupNotificationConfigArgs]] = None,
                  sso_group_id: Optional[str] = None,
                  sso_group_name: Optional[str] = None,
                  sso_linked: Optional[bool] = None,
                  tags: Optional[Sequence[str]] = None,
                  user_emails: Optional[Sequence[str]] = None,
                  users: Optional[Sequence[str]] = None)
    func NewUsergroup(ctx *Context, name string, args UsergroupArgs, opts ...ResourceOption) (*Usergroup, error)
    public Usergroup(string name, UsergroupArgs args, CustomResourceOptions? opts = null)
    public Usergroup(String name, UsergroupArgs args)
    public Usergroup(String name, UsergroupArgs args, CustomResourceOptions options)
    
    type: harness:platform:Usergroup
    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 UsergroupArgs
    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 UsergroupArgs
    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 UsergroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args UsergroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args UsergroupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

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

    var usergroupResource = new Harness.Platform.Usergroup("usergroupResource", new()
    {
        Identifier = "string",
        OrgId = "string",
        ProjectId = "string",
        LinkedSsoDisplayName = "string",
        LinkedSsoId = "string",
        LinkedSsoType = "string",
        Name = "string",
        ExternallyManaged = false,
        Description = "string",
        NotificationConfigs = new[]
        {
            new Harness.Platform.Inputs.UsergroupNotificationConfigArgs
            {
                GroupEmail = "string",
                MicrosoftTeamsWebhookUrl = "string",
                PagerDutyKey = "string",
                SendEmailToAllUsers = false,
                SlackWebhookUrl = "string",
                Type = "string",
            },
        },
        SsoGroupId = "string",
        SsoGroupName = "string",
        SsoLinked = false,
        Tags = new[]
        {
            "string",
        },
        UserEmails = new[]
        {
            "string",
        },
        Users = new[]
        {
            "string",
        },
    });
    
    example, err := platform.NewUsergroup(ctx, "usergroupResource", &platform.UsergroupArgs{
    	Identifier:           pulumi.String("string"),
    	OrgId:                pulumi.String("string"),
    	ProjectId:            pulumi.String("string"),
    	LinkedSsoDisplayName: pulumi.String("string"),
    	LinkedSsoId:          pulumi.String("string"),
    	LinkedSsoType:        pulumi.String("string"),
    	Name:                 pulumi.String("string"),
    	ExternallyManaged:    pulumi.Bool(false),
    	Description:          pulumi.String("string"),
    	NotificationConfigs: platform.UsergroupNotificationConfigArray{
    		&platform.UsergroupNotificationConfigArgs{
    			GroupEmail:               pulumi.String("string"),
    			MicrosoftTeamsWebhookUrl: pulumi.String("string"),
    			PagerDutyKey:             pulumi.String("string"),
    			SendEmailToAllUsers:      pulumi.Bool(false),
    			SlackWebhookUrl:          pulumi.String("string"),
    			Type:                     pulumi.String("string"),
    		},
    	},
    	SsoGroupId:   pulumi.String("string"),
    	SsoGroupName: pulumi.String("string"),
    	SsoLinked:    pulumi.Bool(false),
    	Tags: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	UserEmails: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Users: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var usergroupResource = new Usergroup("usergroupResource", UsergroupArgs.builder()        
        .identifier("string")
        .orgId("string")
        .projectId("string")
        .linkedSsoDisplayName("string")
        .linkedSsoId("string")
        .linkedSsoType("string")
        .name("string")
        .externallyManaged(false)
        .description("string")
        .notificationConfigs(UsergroupNotificationConfigArgs.builder()
            .groupEmail("string")
            .microsoftTeamsWebhookUrl("string")
            .pagerDutyKey("string")
            .sendEmailToAllUsers(false)
            .slackWebhookUrl("string")
            .type("string")
            .build())
        .ssoGroupId("string")
        .ssoGroupName("string")
        .ssoLinked(false)
        .tags("string")
        .userEmails("string")
        .users("string")
        .build());
    
    usergroup_resource = harness.platform.Usergroup("usergroupResource",
        identifier="string",
        org_id="string",
        project_id="string",
        linked_sso_display_name="string",
        linked_sso_id="string",
        linked_sso_type="string",
        name="string",
        externally_managed=False,
        description="string",
        notification_configs=[harness.platform.UsergroupNotificationConfigArgs(
            group_email="string",
            microsoft_teams_webhook_url="string",
            pager_duty_key="string",
            send_email_to_all_users=False,
            slack_webhook_url="string",
            type="string",
        )],
        sso_group_id="string",
        sso_group_name="string",
        sso_linked=False,
        tags=["string"],
        user_emails=["string"],
        users=["string"])
    
    const usergroupResource = new harness.platform.Usergroup("usergroupResource", {
        identifier: "string",
        orgId: "string",
        projectId: "string",
        linkedSsoDisplayName: "string",
        linkedSsoId: "string",
        linkedSsoType: "string",
        name: "string",
        externallyManaged: false,
        description: "string",
        notificationConfigs: [{
            groupEmail: "string",
            microsoftTeamsWebhookUrl: "string",
            pagerDutyKey: "string",
            sendEmailToAllUsers: false,
            slackWebhookUrl: "string",
            type: "string",
        }],
        ssoGroupId: "string",
        ssoGroupName: "string",
        ssoLinked: false,
        tags: ["string"],
        userEmails: ["string"],
        users: ["string"],
    });
    
    type: harness:platform:Usergroup
    properties:
        description: string
        externallyManaged: false
        identifier: string
        linkedSsoDisplayName: string
        linkedSsoId: string
        linkedSsoType: string
        name: string
        notificationConfigs:
            - groupEmail: string
              microsoftTeamsWebhookUrl: string
              pagerDutyKey: string
              sendEmailToAllUsers: false
              slackWebhookUrl: string
              type: string
        orgId: string
        projectId: string
        ssoGroupId: string
        ssoGroupName: string
        ssoLinked: false
        tags:
            - string
        userEmails:
            - string
        users:
            - string
    

    Usergroup Resource Properties

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

    Inputs

    The Usergroup resource accepts the following input properties:

    Identifier string
    Unique identifier of the resource.
    Description string
    Description of the resource.
    ExternallyManaged bool
    Whether the user group is externally managed.
    LinkedSsoDisplayName string
    Name of the linked SSO.
    LinkedSsoId string
    The SSO account ID that the user group is linked to.
    LinkedSsoType string
    Type of linked SSO.
    Name string
    Name of the resource.
    NotificationConfigs List<Lbrlabs.PulumiPackage.Harness.Platform.Inputs.UsergroupNotificationConfig>
    List of notification settings.
    OrgId string
    Unique identifier of the organization.
    ProjectId string
    Unique identifier of the project.
    SsoGroupId string
    Identifier of the userGroup in SSO.
    SsoGroupName string
    Name of the SSO userGroup.
    SsoLinked bool
    Whether sso is linked or not.
    Tags List<string>
    Tags to associate with the resource.
    UserEmails List<string>
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    Users List<string>
    List of users in the UserGroup. Either provide list of users or list of user emails.
    Identifier string
    Unique identifier of the resource.
    Description string
    Description of the resource.
    ExternallyManaged bool
    Whether the user group is externally managed.
    LinkedSsoDisplayName string
    Name of the linked SSO.
    LinkedSsoId string
    The SSO account ID that the user group is linked to.
    LinkedSsoType string
    Type of linked SSO.
    Name string
    Name of the resource.
    NotificationConfigs []UsergroupNotificationConfigArgs
    List of notification settings.
    OrgId string
    Unique identifier of the organization.
    ProjectId string
    Unique identifier of the project.
    SsoGroupId string
    Identifier of the userGroup in SSO.
    SsoGroupName string
    Name of the SSO userGroup.
    SsoLinked bool
    Whether sso is linked or not.
    Tags []string
    Tags to associate with the resource.
    UserEmails []string
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    Users []string
    List of users in the UserGroup. Either provide list of users or list of user emails.
    identifier String
    Unique identifier of the resource.
    description String
    Description of the resource.
    externallyManaged Boolean
    Whether the user group is externally managed.
    linkedSsoDisplayName String
    Name of the linked SSO.
    linkedSsoId String
    The SSO account ID that the user group is linked to.
    linkedSsoType String
    Type of linked SSO.
    name String
    Name of the resource.
    notificationConfigs List<UsergroupNotificationConfig>
    List of notification settings.
    orgId String
    Unique identifier of the organization.
    projectId String
    Unique identifier of the project.
    ssoGroupId String
    Identifier of the userGroup in SSO.
    ssoGroupName String
    Name of the SSO userGroup.
    ssoLinked Boolean
    Whether sso is linked or not.
    tags List<String>
    Tags to associate with the resource.
    userEmails List<String>
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users List<String>
    List of users in the UserGroup. Either provide list of users or list of user emails.
    identifier string
    Unique identifier of the resource.
    description string
    Description of the resource.
    externallyManaged boolean
    Whether the user group is externally managed.
    linkedSsoDisplayName string
    Name of the linked SSO.
    linkedSsoId string
    The SSO account ID that the user group is linked to.
    linkedSsoType string
    Type of linked SSO.
    name string
    Name of the resource.
    notificationConfigs UsergroupNotificationConfig[]
    List of notification settings.
    orgId string
    Unique identifier of the organization.
    projectId string
    Unique identifier of the project.
    ssoGroupId string
    Identifier of the userGroup in SSO.
    ssoGroupName string
    Name of the SSO userGroup.
    ssoLinked boolean
    Whether sso is linked or not.
    tags string[]
    Tags to associate with the resource.
    userEmails string[]
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users string[]
    List of users in the UserGroup. Either provide list of users or list of user emails.
    identifier str
    Unique identifier of the resource.
    description str
    Description of the resource.
    externally_managed bool
    Whether the user group is externally managed.
    linked_sso_display_name str
    Name of the linked SSO.
    linked_sso_id str
    The SSO account ID that the user group is linked to.
    linked_sso_type str
    Type of linked SSO.
    name str
    Name of the resource.
    notification_configs Sequence[UsergroupNotificationConfigArgs]
    List of notification settings.
    org_id str
    Unique identifier of the organization.
    project_id str
    Unique identifier of the project.
    sso_group_id str
    Identifier of the userGroup in SSO.
    sso_group_name str
    Name of the SSO userGroup.
    sso_linked bool
    Whether sso is linked or not.
    tags Sequence[str]
    Tags to associate with the resource.
    user_emails Sequence[str]
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users Sequence[str]
    List of users in the UserGroup. Either provide list of users or list of user emails.
    identifier String
    Unique identifier of the resource.
    description String
    Description of the resource.
    externallyManaged Boolean
    Whether the user group is externally managed.
    linkedSsoDisplayName String
    Name of the linked SSO.
    linkedSsoId String
    The SSO account ID that the user group is linked to.
    linkedSsoType String
    Type of linked SSO.
    name String
    Name of the resource.
    notificationConfigs List<Property Map>
    List of notification settings.
    orgId String
    Unique identifier of the organization.
    projectId String
    Unique identifier of the project.
    ssoGroupId String
    Identifier of the userGroup in SSO.
    ssoGroupName String
    Name of the SSO userGroup.
    ssoLinked Boolean
    Whether sso is linked or not.
    tags List<String>
    Tags to associate with the resource.
    userEmails List<String>
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users List<String>
    List of users in the UserGroup. Either provide list of users or list of user emails.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Usergroup 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 str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing Usergroup Resource

    Get an existing Usergroup 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?: UsergroupState, opts?: CustomResourceOptions): Usergroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            description: Optional[str] = None,
            externally_managed: Optional[bool] = None,
            identifier: Optional[str] = None,
            linked_sso_display_name: Optional[str] = None,
            linked_sso_id: Optional[str] = None,
            linked_sso_type: Optional[str] = None,
            name: Optional[str] = None,
            notification_configs: Optional[Sequence[UsergroupNotificationConfigArgs]] = None,
            org_id: Optional[str] = None,
            project_id: Optional[str] = None,
            sso_group_id: Optional[str] = None,
            sso_group_name: Optional[str] = None,
            sso_linked: Optional[bool] = None,
            tags: Optional[Sequence[str]] = None,
            user_emails: Optional[Sequence[str]] = None,
            users: Optional[Sequence[str]] = None) -> Usergroup
    func GetUsergroup(ctx *Context, name string, id IDInput, state *UsergroupState, opts ...ResourceOption) (*Usergroup, error)
    public static Usergroup Get(string name, Input<string> id, UsergroupState? state, CustomResourceOptions? opts = null)
    public static Usergroup get(String name, Output<String> id, UsergroupState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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
    Description of the resource.
    ExternallyManaged bool
    Whether the user group is externally managed.
    Identifier string
    Unique identifier of the resource.
    LinkedSsoDisplayName string
    Name of the linked SSO.
    LinkedSsoId string
    The SSO account ID that the user group is linked to.
    LinkedSsoType string
    Type of linked SSO.
    Name string
    Name of the resource.
    NotificationConfigs List<Lbrlabs.PulumiPackage.Harness.Platform.Inputs.UsergroupNotificationConfig>
    List of notification settings.
    OrgId string
    Unique identifier of the organization.
    ProjectId string
    Unique identifier of the project.
    SsoGroupId string
    Identifier of the userGroup in SSO.
    SsoGroupName string
    Name of the SSO userGroup.
    SsoLinked bool
    Whether sso is linked or not.
    Tags List<string>
    Tags to associate with the resource.
    UserEmails List<string>
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    Users List<string>
    List of users in the UserGroup. Either provide list of users or list of user emails.
    Description string
    Description of the resource.
    ExternallyManaged bool
    Whether the user group is externally managed.
    Identifier string
    Unique identifier of the resource.
    LinkedSsoDisplayName string
    Name of the linked SSO.
    LinkedSsoId string
    The SSO account ID that the user group is linked to.
    LinkedSsoType string
    Type of linked SSO.
    Name string
    Name of the resource.
    NotificationConfigs []UsergroupNotificationConfigArgs
    List of notification settings.
    OrgId string
    Unique identifier of the organization.
    ProjectId string
    Unique identifier of the project.
    SsoGroupId string
    Identifier of the userGroup in SSO.
    SsoGroupName string
    Name of the SSO userGroup.
    SsoLinked bool
    Whether sso is linked or not.
    Tags []string
    Tags to associate with the resource.
    UserEmails []string
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    Users []string
    List of users in the UserGroup. Either provide list of users or list of user emails.
    description String
    Description of the resource.
    externallyManaged Boolean
    Whether the user group is externally managed.
    identifier String
    Unique identifier of the resource.
    linkedSsoDisplayName String
    Name of the linked SSO.
    linkedSsoId String
    The SSO account ID that the user group is linked to.
    linkedSsoType String
    Type of linked SSO.
    name String
    Name of the resource.
    notificationConfigs List<UsergroupNotificationConfig>
    List of notification settings.
    orgId String
    Unique identifier of the organization.
    projectId String
    Unique identifier of the project.
    ssoGroupId String
    Identifier of the userGroup in SSO.
    ssoGroupName String
    Name of the SSO userGroup.
    ssoLinked Boolean
    Whether sso is linked or not.
    tags List<String>
    Tags to associate with the resource.
    userEmails List<String>
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users List<String>
    List of users in the UserGroup. Either provide list of users or list of user emails.
    description string
    Description of the resource.
    externallyManaged boolean
    Whether the user group is externally managed.
    identifier string
    Unique identifier of the resource.
    linkedSsoDisplayName string
    Name of the linked SSO.
    linkedSsoId string
    The SSO account ID that the user group is linked to.
    linkedSsoType string
    Type of linked SSO.
    name string
    Name of the resource.
    notificationConfigs UsergroupNotificationConfig[]
    List of notification settings.
    orgId string
    Unique identifier of the organization.
    projectId string
    Unique identifier of the project.
    ssoGroupId string
    Identifier of the userGroup in SSO.
    ssoGroupName string
    Name of the SSO userGroup.
    ssoLinked boolean
    Whether sso is linked or not.
    tags string[]
    Tags to associate with the resource.
    userEmails string[]
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users string[]
    List of users in the UserGroup. Either provide list of users or list of user emails.
    description str
    Description of the resource.
    externally_managed bool
    Whether the user group is externally managed.
    identifier str
    Unique identifier of the resource.
    linked_sso_display_name str
    Name of the linked SSO.
    linked_sso_id str
    The SSO account ID that the user group is linked to.
    linked_sso_type str
    Type of linked SSO.
    name str
    Name of the resource.
    notification_configs Sequence[UsergroupNotificationConfigArgs]
    List of notification settings.
    org_id str
    Unique identifier of the organization.
    project_id str
    Unique identifier of the project.
    sso_group_id str
    Identifier of the userGroup in SSO.
    sso_group_name str
    Name of the SSO userGroup.
    sso_linked bool
    Whether sso is linked or not.
    tags Sequence[str]
    Tags to associate with the resource.
    user_emails Sequence[str]
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users Sequence[str]
    List of users in the UserGroup. Either provide list of users or list of user emails.
    description String
    Description of the resource.
    externallyManaged Boolean
    Whether the user group is externally managed.
    identifier String
    Unique identifier of the resource.
    linkedSsoDisplayName String
    Name of the linked SSO.
    linkedSsoId String
    The SSO account ID that the user group is linked to.
    linkedSsoType String
    Type of linked SSO.
    name String
    Name of the resource.
    notificationConfigs List<Property Map>
    List of notification settings.
    orgId String
    Unique identifier of the organization.
    projectId String
    Unique identifier of the project.
    ssoGroupId String
    Identifier of the userGroup in SSO.
    ssoGroupName String
    Name of the SSO userGroup.
    ssoLinked Boolean
    Whether sso is linked or not.
    tags List<String>
    Tags to associate with the resource.
    userEmails List<String>
    List of user emails in the UserGroup. Either provide list of users or list of user emails.
    users List<String>
    List of users in the UserGroup. Either provide list of users or list of user emails.

    Supporting Types

    UsergroupNotificationConfig, UsergroupNotificationConfigArgs

    GroupEmail string
    Group email.
    MicrosoftTeamsWebhookUrl string
    Url of Microsoft teams webhook.
    PagerDutyKey string
    Pager duty key.
    SendEmailToAllUsers bool
    Send email to all the group members.
    SlackWebhookUrl string
    Url of slack webhook.
    Type string
    Can be one of EMAIL, SLACK, PAGERDUTY, MSTEAMS.
    GroupEmail string
    Group email.
    MicrosoftTeamsWebhookUrl string
    Url of Microsoft teams webhook.
    PagerDutyKey string
    Pager duty key.
    SendEmailToAllUsers bool
    Send email to all the group members.
    SlackWebhookUrl string
    Url of slack webhook.
    Type string
    Can be one of EMAIL, SLACK, PAGERDUTY, MSTEAMS.
    groupEmail String
    Group email.
    microsoftTeamsWebhookUrl String
    Url of Microsoft teams webhook.
    pagerDutyKey String
    Pager duty key.
    sendEmailToAllUsers Boolean
    Send email to all the group members.
    slackWebhookUrl String
    Url of slack webhook.
    type String
    Can be one of EMAIL, SLACK, PAGERDUTY, MSTEAMS.
    groupEmail string
    Group email.
    microsoftTeamsWebhookUrl string
    Url of Microsoft teams webhook.
    pagerDutyKey string
    Pager duty key.
    sendEmailToAllUsers boolean
    Send email to all the group members.
    slackWebhookUrl string
    Url of slack webhook.
    type string
    Can be one of EMAIL, SLACK, PAGERDUTY, MSTEAMS.
    group_email str
    Group email.
    microsoft_teams_webhook_url str
    Url of Microsoft teams webhook.
    pager_duty_key str
    Pager duty key.
    send_email_to_all_users bool
    Send email to all the group members.
    slack_webhook_url str
    Url of slack webhook.
    type str
    Can be one of EMAIL, SLACK, PAGERDUTY, MSTEAMS.
    groupEmail String
    Group email.
    microsoftTeamsWebhookUrl String
    Url of Microsoft teams webhook.
    pagerDutyKey String
    Pager duty key.
    sendEmailToAllUsers Boolean
    Send email to all the group members.
    slackWebhookUrl String
    Url of slack webhook.
    type String
    Can be one of EMAIL, SLACK, PAGERDUTY, MSTEAMS.

    Import

    Import account level user group

     $ pulumi import harness:platform/usergroup:Usergroup example <usergroup_id>
    

    Import org level user group

     $ pulumi import harness:platform/usergroup:Usergroup example <ord_id>/<usergroup_id>
    

    Import project level user group

     $ pulumi import harness:platform/usergroup:Usergroup example <org_id>/<project_id>/<usergroup_id>
    

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

    Package Details

    Repository
    harness lbrlabs/pulumi-harness
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the harness Terraform Provider.
    harness logo
    Harness v0.0.6 published on Saturday, Jul 1, 2023 by lbrlabs