1. Packages
  2. Rootly
  3. API Docs
  4. Functionality
Rootly v1.1.1 published on Thursday, Jan 11, 2024 by Rootly

rootly.Functionality

Explore with Pulumi AI

rootly logo
Rootly v1.1.1 published on Thursday, Jan 11, 2024 by Rootly

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Rootly = Pulumi.Rootly;
    
    return await Deployment.RunAsync(() => 
    {
        var addItemsToCard = new Rootly.Functionality("addItemsToCard", new()
        {
            Color = "#800080",
            NotifyEmails = new[]
            {
                "foo@acme.com",
                "bar@acme.com",
            },
            SlackAliases = new[]
            {
                new Rootly.Inputs.FunctionalitySlackAliasArgs
                {
                    Id = "S0614TZR7",
                    Name = "Alias 1",
                },
            },
            SlackChannels = new[]
            {
                new Rootly.Inputs.FunctionalitySlackChannelArgs
                {
                    Id = "C06A4RZR9",
                    Name = "Channel 1",
                },
                new Rootly.Inputs.FunctionalitySlackChannelArgs
                {
                    Id = "C02T4RYR2",
                    Name = "Channel 2",
                },
            },
        });
    
        var loggingIn = new Rootly.Functionality("loggingIn", new()
        {
            Color = "#800080",
            NotifyEmails = new[]
            {
                "foo@acme.com",
                "bar@acme.com",
            },
            SlackAliases = new[]
            {
                new Rootly.Inputs.FunctionalitySlackAliasArgs
                {
                    Id = "S0614TZR7",
                    Name = "Alias 1",
                },
            },
            SlackChannels = new[]
            {
                new Rootly.Inputs.FunctionalitySlackChannelArgs
                {
                    Id = "C06A4RZR9",
                    Name = "Channel 1",
                },
                new Rootly.Inputs.FunctionalitySlackChannelArgs
                {
                    Id = "C02T4RYR2",
                    Name = "Channel 2",
                },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-rootly/sdk/go/rootly"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := rootly.NewFunctionality(ctx, "addItemsToCard", &rootly.FunctionalityArgs{
    			Color: pulumi.String("#800080"),
    			NotifyEmails: pulumi.StringArray{
    				pulumi.String("foo@acme.com"),
    				pulumi.String("bar@acme.com"),
    			},
    			SlackAliases: rootly.FunctionalitySlackAliasArray{
    				&rootly.FunctionalitySlackAliasArgs{
    					Id:   pulumi.String("S0614TZR7"),
    					Name: pulumi.String("Alias 1"),
    				},
    			},
    			SlackChannels: rootly.FunctionalitySlackChannelArray{
    				&rootly.FunctionalitySlackChannelArgs{
    					Id:   pulumi.String("C06A4RZR9"),
    					Name: pulumi.String("Channel 1"),
    				},
    				&rootly.FunctionalitySlackChannelArgs{
    					Id:   pulumi.String("C02T4RYR2"),
    					Name: pulumi.String("Channel 2"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = rootly.NewFunctionality(ctx, "loggingIn", &rootly.FunctionalityArgs{
    			Color: pulumi.String("#800080"),
    			NotifyEmails: pulumi.StringArray{
    				pulumi.String("foo@acme.com"),
    				pulumi.String("bar@acme.com"),
    			},
    			SlackAliases: rootly.FunctionalitySlackAliasArray{
    				&rootly.FunctionalitySlackAliasArgs{
    					Id:   pulumi.String("S0614TZR7"),
    					Name: pulumi.String("Alias 1"),
    				},
    			},
    			SlackChannels: rootly.FunctionalitySlackChannelArray{
    				&rootly.FunctionalitySlackChannelArgs{
    					Id:   pulumi.String("C06A4RZR9"),
    					Name: pulumi.String("Channel 1"),
    				},
    				&rootly.FunctionalitySlackChannelArgs{
    					Id:   pulumi.String("C02T4RYR2"),
    					Name: pulumi.String("Channel 2"),
    				},
    			},
    		})
    		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.rootly.Functionality;
    import com.pulumi.rootly.FunctionalityArgs;
    import com.pulumi.rootly.inputs.FunctionalitySlackAliasArgs;
    import com.pulumi.rootly.inputs.FunctionalitySlackChannelArgs;
    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 addItemsToCard = new Functionality("addItemsToCard", FunctionalityArgs.builder()        
                .color("#800080")
                .notifyEmails(            
                    "foo@acme.com",
                    "bar@acme.com")
                .slackAliases(FunctionalitySlackAliasArgs.builder()
                    .id("S0614TZR7")
                    .name("Alias 1")
                    .build())
                .slackChannels(            
                    FunctionalitySlackChannelArgs.builder()
                        .id("C06A4RZR9")
                        .name("Channel 1")
                        .build(),
                    FunctionalitySlackChannelArgs.builder()
                        .id("C02T4RYR2")
                        .name("Channel 2")
                        .build())
                .build());
    
            var loggingIn = new Functionality("loggingIn", FunctionalityArgs.builder()        
                .color("#800080")
                .notifyEmails(            
                    "foo@acme.com",
                    "bar@acme.com")
                .slackAliases(FunctionalitySlackAliasArgs.builder()
                    .id("S0614TZR7")
                    .name("Alias 1")
                    .build())
                .slackChannels(            
                    FunctionalitySlackChannelArgs.builder()
                        .id("C06A4RZR9")
                        .name("Channel 1")
                        .build(),
                    FunctionalitySlackChannelArgs.builder()
                        .id("C02T4RYR2")
                        .name("Channel 2")
                        .build())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_rootly as rootly
    
    add_items_to_card = rootly.Functionality("addItemsToCard",
        color="#800080",
        notify_emails=[
            "foo@acme.com",
            "bar@acme.com",
        ],
        slack_aliases=[rootly.FunctionalitySlackAliasArgs(
            id="S0614TZR7",
            name="Alias 1",
        )],
        slack_channels=[
            rootly.FunctionalitySlackChannelArgs(
                id="C06A4RZR9",
                name="Channel 1",
            ),
            rootly.FunctionalitySlackChannelArgs(
                id="C02T4RYR2",
                name="Channel 2",
            ),
        ])
    logging_in = rootly.Functionality("loggingIn",
        color="#800080",
        notify_emails=[
            "foo@acme.com",
            "bar@acme.com",
        ],
        slack_aliases=[rootly.FunctionalitySlackAliasArgs(
            id="S0614TZR7",
            name="Alias 1",
        )],
        slack_channels=[
            rootly.FunctionalitySlackChannelArgs(
                id="C06A4RZR9",
                name="Channel 1",
            ),
            rootly.FunctionalitySlackChannelArgs(
                id="C02T4RYR2",
                name="Channel 2",
            ),
        ])
    
    import * as pulumi from "@pulumi/pulumi";
    import * as rootly from "@pulumi/rootly";
    
    const addItemsToCard = new rootly.Functionality("addItemsToCard", {
        color: "#800080",
        notifyEmails: [
            "foo@acme.com",
            "bar@acme.com",
        ],
        slackAliases: [{
            id: "S0614TZR7",
            name: "Alias 1",
        }],
        slackChannels: [
            {
                id: "C06A4RZR9",
                name: "Channel 1",
            },
            {
                id: "C02T4RYR2",
                name: "Channel 2",
            },
        ],
    });
    const loggingIn = new rootly.Functionality("loggingIn", {
        color: "#800080",
        notifyEmails: [
            "foo@acme.com",
            "bar@acme.com",
        ],
        slackAliases: [{
            id: "S0614TZR7",
            name: "Alias 1",
        }],
        slackChannels: [
            {
                id: "C06A4RZR9",
                name: "Channel 1",
            },
            {
                id: "C02T4RYR2",
                name: "Channel 2",
            },
        ],
    });
    
    resources:
      addItemsToCard:
        type: rootly:Functionality
        properties:
          color: '#800080'
          notifyEmails:
            - foo@acme.com
            - bar@acme.com
          slackAliases:
            - id: S0614TZR7
              name: Alias 1
          slackChannels:
            - id: C06A4RZR9
              name: Channel 1
            - id: C02T4RYR2
              name: Channel 2
      loggingIn:
        type: rootly:Functionality
        properties:
          color: '#800080'
          notifyEmails:
            - foo@acme.com
            - bar@acme.com
          slackAliases:
            - id: S0614TZR7
              name: Alias 1
          slackChannels:
            - id: C06A4RZR9
              name: Channel 1
            - id: C02T4RYR2
              name: Channel 2
    

    Create Functionality Resource

    new Functionality(name: string, args?: FunctionalityArgs, opts?: CustomResourceOptions);
    @overload
    def Functionality(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      color: Optional[str] = None,
                      description: Optional[str] = None,
                      environment_ids: Optional[Sequence[str]] = None,
                      name: Optional[str] = None,
                      notify_emails: Optional[Sequence[str]] = None,
                      owners_group_ids: Optional[Sequence[str]] = None,
                      owners_user_ids: Optional[Sequence[int]] = None,
                      position: Optional[int] = None,
                      public_description: Optional[str] = None,
                      service_ids: Optional[Sequence[str]] = None,
                      slack_aliases: Optional[Sequence[FunctionalitySlackAliasArgs]] = None,
                      slack_channels: Optional[Sequence[FunctionalitySlackChannelArgs]] = None,
                      slug: Optional[str] = None)
    @overload
    def Functionality(resource_name: str,
                      args: Optional[FunctionalityArgs] = None,
                      opts: Optional[ResourceOptions] = None)
    func NewFunctionality(ctx *Context, name string, args *FunctionalityArgs, opts ...ResourceOption) (*Functionality, error)
    public Functionality(string name, FunctionalityArgs? args = null, CustomResourceOptions? opts = null)
    public Functionality(String name, FunctionalityArgs args)
    public Functionality(String name, FunctionalityArgs args, CustomResourceOptions options)
    
    type: rootly:Functionality
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args FunctionalityArgs
    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 FunctionalityArgs
    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 FunctionalityArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args FunctionalityArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args FunctionalityArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

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

    Color string
    The hex color of the functionality
    Description string
    The description of the functionality
    EnvironmentIds List<string>
    Environments associated with this functionality
    Name string
    The name of the functionality
    NotifyEmails List<string>
    Emails attached to the functionality
    OwnersGroupIds List<string>
    Owner Teams associated with this functionality
    OwnersUserIds List<int>
    Owner Users associated with this service
    Position int
    Position of the functionality
    PublicDescription string
    The public description of the functionality
    ServiceIds List<string>
    Services associated with this functionality
    SlackAliases List<FunctionalitySlackAlias>
    Slack Aliases associated with this service
    SlackChannels List<FunctionalitySlackChannel>
    Slack Channels associated with this service
    Slug string
    The slug of the functionality
    Color string
    The hex color of the functionality
    Description string
    The description of the functionality
    EnvironmentIds []string
    Environments associated with this functionality
    Name string
    The name of the functionality
    NotifyEmails []string
    Emails attached to the functionality
    OwnersGroupIds []string
    Owner Teams associated with this functionality
    OwnersUserIds []int
    Owner Users associated with this service
    Position int
    Position of the functionality
    PublicDescription string
    The public description of the functionality
    ServiceIds []string
    Services associated with this functionality
    SlackAliases []FunctionalitySlackAliasArgs
    Slack Aliases associated with this service
    SlackChannels []FunctionalitySlackChannelArgs
    Slack Channels associated with this service
    Slug string
    The slug of the functionality
    color String
    The hex color of the functionality
    description String
    The description of the functionality
    environmentIds List<String>
    Environments associated with this functionality
    name String
    The name of the functionality
    notifyEmails List<String>
    Emails attached to the functionality
    ownersGroupIds List<String>
    Owner Teams associated with this functionality
    ownersUserIds List<Integer>
    Owner Users associated with this service
    position Integer
    Position of the functionality
    publicDescription String
    The public description of the functionality
    serviceIds List<String>
    Services associated with this functionality
    slackAliases List<FunctionalitySlackAlias>
    Slack Aliases associated with this service
    slackChannels List<FunctionalitySlackChannel>
    Slack Channels associated with this service
    slug String
    The slug of the functionality
    color string
    The hex color of the functionality
    description string
    The description of the functionality
    environmentIds string[]
    Environments associated with this functionality
    name string
    The name of the functionality
    notifyEmails string[]
    Emails attached to the functionality
    ownersGroupIds string[]
    Owner Teams associated with this functionality
    ownersUserIds number[]
    Owner Users associated with this service
    position number
    Position of the functionality
    publicDescription string
    The public description of the functionality
    serviceIds string[]
    Services associated with this functionality
    slackAliases FunctionalitySlackAlias[]
    Slack Aliases associated with this service
    slackChannels FunctionalitySlackChannel[]
    Slack Channels associated with this service
    slug string
    The slug of the functionality
    color str
    The hex color of the functionality
    description str
    The description of the functionality
    environment_ids Sequence[str]
    Environments associated with this functionality
    name str
    The name of the functionality
    notify_emails Sequence[str]
    Emails attached to the functionality
    owners_group_ids Sequence[str]
    Owner Teams associated with this functionality
    owners_user_ids Sequence[int]
    Owner Users associated with this service
    position int
    Position of the functionality
    public_description str
    The public description of the functionality
    service_ids Sequence[str]
    Services associated with this functionality
    slack_aliases Sequence[FunctionalitySlackAliasArgs]
    Slack Aliases associated with this service
    slack_channels Sequence[FunctionalitySlackChannelArgs]
    Slack Channels associated with this service
    slug str
    The slug of the functionality
    color String
    The hex color of the functionality
    description String
    The description of the functionality
    environmentIds List<String>
    Environments associated with this functionality
    name String
    The name of the functionality
    notifyEmails List<String>
    Emails attached to the functionality
    ownersGroupIds List<String>
    Owner Teams associated with this functionality
    ownersUserIds List<Number>
    Owner Users associated with this service
    position Number
    Position of the functionality
    publicDescription String
    The public description of the functionality
    serviceIds List<String>
    Services associated with this functionality
    slackAliases List<Property Map>
    Slack Aliases associated with this service
    slackChannels List<Property Map>
    Slack Channels associated with this service
    slug String
    The slug of the functionality

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Functionality 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 Functionality Resource

    Get an existing Functionality 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?: FunctionalityState, opts?: CustomResourceOptions): Functionality
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            color: Optional[str] = None,
            description: Optional[str] = None,
            environment_ids: Optional[Sequence[str]] = None,
            name: Optional[str] = None,
            notify_emails: Optional[Sequence[str]] = None,
            owners_group_ids: Optional[Sequence[str]] = None,
            owners_user_ids: Optional[Sequence[int]] = None,
            position: Optional[int] = None,
            public_description: Optional[str] = None,
            service_ids: Optional[Sequence[str]] = None,
            slack_aliases: Optional[Sequence[FunctionalitySlackAliasArgs]] = None,
            slack_channels: Optional[Sequence[FunctionalitySlackChannelArgs]] = None,
            slug: Optional[str] = None) -> Functionality
    func GetFunctionality(ctx *Context, name string, id IDInput, state *FunctionalityState, opts ...ResourceOption) (*Functionality, error)
    public static Functionality Get(string name, Input<string> id, FunctionalityState? state, CustomResourceOptions? opts = null)
    public static Functionality get(String name, Output<String> id, FunctionalityState 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:
    Color string
    The hex color of the functionality
    Description string
    The description of the functionality
    EnvironmentIds List<string>
    Environments associated with this functionality
    Name string
    The name of the functionality
    NotifyEmails List<string>
    Emails attached to the functionality
    OwnersGroupIds List<string>
    Owner Teams associated with this functionality
    OwnersUserIds List<int>
    Owner Users associated with this service
    Position int
    Position of the functionality
    PublicDescription string
    The public description of the functionality
    ServiceIds List<string>
    Services associated with this functionality
    SlackAliases List<FunctionalitySlackAlias>
    Slack Aliases associated with this service
    SlackChannels List<FunctionalitySlackChannel>
    Slack Channels associated with this service
    Slug string
    The slug of the functionality
    Color string
    The hex color of the functionality
    Description string
    The description of the functionality
    EnvironmentIds []string
    Environments associated with this functionality
    Name string
    The name of the functionality
    NotifyEmails []string
    Emails attached to the functionality
    OwnersGroupIds []string
    Owner Teams associated with this functionality
    OwnersUserIds []int
    Owner Users associated with this service
    Position int
    Position of the functionality
    PublicDescription string
    The public description of the functionality
    ServiceIds []string
    Services associated with this functionality
    SlackAliases []FunctionalitySlackAliasArgs
    Slack Aliases associated with this service
    SlackChannels []FunctionalitySlackChannelArgs
    Slack Channels associated with this service
    Slug string
    The slug of the functionality
    color String
    The hex color of the functionality
    description String
    The description of the functionality
    environmentIds List<String>
    Environments associated with this functionality
    name String
    The name of the functionality
    notifyEmails List<String>
    Emails attached to the functionality
    ownersGroupIds List<String>
    Owner Teams associated with this functionality
    ownersUserIds List<Integer>
    Owner Users associated with this service
    position Integer
    Position of the functionality
    publicDescription String
    The public description of the functionality
    serviceIds List<String>
    Services associated with this functionality
    slackAliases List<FunctionalitySlackAlias>
    Slack Aliases associated with this service
    slackChannels List<FunctionalitySlackChannel>
    Slack Channels associated with this service
    slug String
    The slug of the functionality
    color string
    The hex color of the functionality
    description string
    The description of the functionality
    environmentIds string[]
    Environments associated with this functionality
    name string
    The name of the functionality
    notifyEmails string[]
    Emails attached to the functionality
    ownersGroupIds string[]
    Owner Teams associated with this functionality
    ownersUserIds number[]
    Owner Users associated with this service
    position number
    Position of the functionality
    publicDescription string
    The public description of the functionality
    serviceIds string[]
    Services associated with this functionality
    slackAliases FunctionalitySlackAlias[]
    Slack Aliases associated with this service
    slackChannels FunctionalitySlackChannel[]
    Slack Channels associated with this service
    slug string
    The slug of the functionality
    color str
    The hex color of the functionality
    description str
    The description of the functionality
    environment_ids Sequence[str]
    Environments associated with this functionality
    name str
    The name of the functionality
    notify_emails Sequence[str]
    Emails attached to the functionality
    owners_group_ids Sequence[str]
    Owner Teams associated with this functionality
    owners_user_ids Sequence[int]
    Owner Users associated with this service
    position int
    Position of the functionality
    public_description str
    The public description of the functionality
    service_ids Sequence[str]
    Services associated with this functionality
    slack_aliases Sequence[FunctionalitySlackAliasArgs]
    Slack Aliases associated with this service
    slack_channels Sequence[FunctionalitySlackChannelArgs]
    Slack Channels associated with this service
    slug str
    The slug of the functionality
    color String
    The hex color of the functionality
    description String
    The description of the functionality
    environmentIds List<String>
    Environments associated with this functionality
    name String
    The name of the functionality
    notifyEmails List<String>
    Emails attached to the functionality
    ownersGroupIds List<String>
    Owner Teams associated with this functionality
    ownersUserIds List<Number>
    Owner Users associated with this service
    position Number
    Position of the functionality
    publicDescription String
    The public description of the functionality
    serviceIds List<String>
    Services associated with this functionality
    slackAliases List<Property Map>
    Slack Aliases associated with this service
    slackChannels List<Property Map>
    Slack Channels associated with this service
    slug String
    The slug of the functionality

    Supporting Types

    FunctionalitySlackAlias, FunctionalitySlackAliasArgs

    Id string
    Name string
    Id string
    Name string
    id String
    name String
    id string
    name string
    id str
    name str
    id String
    name String

    FunctionalitySlackChannel, FunctionalitySlackChannelArgs

    Id string
    Name string
    Id string
    Name string
    id String
    name String
    id string
    name string
    id str
    name str
    id String
    name String

    Package Details

    Repository
    rootly rootlyhq/pulumi-rootly
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the rootly Terraform Provider.
    rootly logo
    Rootly v1.1.1 published on Thursday, Jan 11, 2024 by Rootly