1. Packages
  2. Pagerduty Provider
  3. API Docs
  4. EventOrchestration
PagerDuty v4.17.0 published on Wednesday, Nov 20, 2024 by Pulumi

pagerduty.EventOrchestration

Explore with Pulumi AI

pagerduty logo
PagerDuty v4.17.0 published on Wednesday, Nov 20, 2024 by Pulumi

    Event Orchestrations allow you define a set of Event Rules, so that when you ingest events using the Orchestration’s Routing Key your events will be routed to the correct Global and/or Service Orchestration, based on the event’s content.

    Example of configuring an Event Orchestration

    import * as pulumi from "@pulumi/pulumi";
    import * as pagerduty from "@pulumi/pagerduty";
    
    const engineering = new pagerduty.Team("engineering", {name: "Engineering"});
    const myMonitor = new pagerduty.EventOrchestration("my_monitor", {
        name: "My Monitoring Orchestration",
        description: "Send events to a pair of services",
        team: engineering.id,
    });
    
    import pulumi
    import pulumi_pagerduty as pagerduty
    
    engineering = pagerduty.Team("engineering", name="Engineering")
    my_monitor = pagerduty.EventOrchestration("my_monitor",
        name="My Monitoring Orchestration",
        description="Send events to a pair of services",
        team=engineering.id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-pagerduty/sdk/v4/go/pagerduty"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		engineering, err := pagerduty.NewTeam(ctx, "engineering", &pagerduty.TeamArgs{
    			Name: pulumi.String("Engineering"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = pagerduty.NewEventOrchestration(ctx, "my_monitor", &pagerduty.EventOrchestrationArgs{
    			Name:        pulumi.String("My Monitoring Orchestration"),
    			Description: pulumi.String("Send events to a pair of services"),
    			Team:        engineering.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Pagerduty = Pulumi.Pagerduty;
    
    return await Deployment.RunAsync(() => 
    {
        var engineering = new Pagerduty.Team("engineering", new()
        {
            Name = "Engineering",
        });
    
        var myMonitor = new Pagerduty.EventOrchestration("my_monitor", new()
        {
            Name = "My Monitoring Orchestration",
            Description = "Send events to a pair of services",
            Team = engineering.Id,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.pagerduty.Team;
    import com.pulumi.pagerduty.TeamArgs;
    import com.pulumi.pagerduty.EventOrchestration;
    import com.pulumi.pagerduty.EventOrchestrationArgs;
    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 engineering = new Team("engineering", TeamArgs.builder()
                .name("Engineering")
                .build());
    
            var myMonitor = new EventOrchestration("myMonitor", EventOrchestrationArgs.builder()
                .name("My Monitoring Orchestration")
                .description("Send events to a pair of services")
                .team(engineering.id())
                .build());
    
        }
    }
    
    resources:
      engineering:
        type: pagerduty:Team
        properties:
          name: Engineering
      myMonitor:
        type: pagerduty:EventOrchestration
        name: my_monitor
        properties:
          name: My Monitoring Orchestration
          description: Send events to a pair of services
          team: ${engineering.id}
    

    Create EventOrchestration Resource

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

    Constructor syntax

    new EventOrchestration(name: string, args?: EventOrchestrationArgs, opts?: CustomResourceOptions);
    @overload
    def EventOrchestration(resource_name: str,
                           args: Optional[EventOrchestrationArgs] = None,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def EventOrchestration(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           description: Optional[str] = None,
                           integrations: Optional[Sequence[EventOrchestrationIntegrationArgs]] = None,
                           name: Optional[str] = None,
                           team: Optional[str] = None)
    func NewEventOrchestration(ctx *Context, name string, args *EventOrchestrationArgs, opts ...ResourceOption) (*EventOrchestration, error)
    public EventOrchestration(string name, EventOrchestrationArgs? args = null, CustomResourceOptions? opts = null)
    public EventOrchestration(String name, EventOrchestrationArgs args)
    public EventOrchestration(String name, EventOrchestrationArgs args, CustomResourceOptions options)
    
    type: pagerduty:EventOrchestration
    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 EventOrchestrationArgs
    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 EventOrchestrationArgs
    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 EventOrchestrationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args EventOrchestrationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args EventOrchestrationArgs
    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 eventOrchestrationResource = new Pagerduty.EventOrchestration("eventOrchestrationResource", new()
    {
        Description = "string",
        Integrations = new[]
        {
            new Pagerduty.Inputs.EventOrchestrationIntegrationArgs
            {
                Id = "string",
                Label = "string",
                Parameters = new[]
                {
                    new Pagerduty.Inputs.EventOrchestrationIntegrationParameterArgs
                    {
                        RoutingKey = "string",
                        Type = "string",
                    },
                },
            },
        },
        Name = "string",
        Team = "string",
    });
    
    example, err := pagerduty.NewEventOrchestration(ctx, "eventOrchestrationResource", &pagerduty.EventOrchestrationArgs{
    	Description: pulumi.String("string"),
    	Integrations: pagerduty.EventOrchestrationIntegrationTypeArray{
    		&pagerduty.EventOrchestrationIntegrationTypeArgs{
    			Id:    pulumi.String("string"),
    			Label: pulumi.String("string"),
    			Parameters: pagerduty.EventOrchestrationIntegrationParameterArray{
    				&pagerduty.EventOrchestrationIntegrationParameterArgs{
    					RoutingKey: pulumi.String("string"),
    					Type:       pulumi.String("string"),
    				},
    			},
    		},
    	},
    	Name: pulumi.String("string"),
    	Team: pulumi.String("string"),
    })
    
    var eventOrchestrationResource = new EventOrchestration("eventOrchestrationResource", EventOrchestrationArgs.builder()
        .description("string")
        .integrations(EventOrchestrationIntegrationArgs.builder()
            .id("string")
            .label("string")
            .parameters(EventOrchestrationIntegrationParameterArgs.builder()
                .routingKey("string")
                .type("string")
                .build())
            .build())
        .name("string")
        .team("string")
        .build());
    
    event_orchestration_resource = pagerduty.EventOrchestration("eventOrchestrationResource",
        description="string",
        integrations=[{
            "id": "string",
            "label": "string",
            "parameters": [{
                "routing_key": "string",
                "type": "string",
            }],
        }],
        name="string",
        team="string")
    
    const eventOrchestrationResource = new pagerduty.EventOrchestration("eventOrchestrationResource", {
        description: "string",
        integrations: [{
            id: "string",
            label: "string",
            parameters: [{
                routingKey: "string",
                type: "string",
            }],
        }],
        name: "string",
        team: "string",
    });
    
    type: pagerduty:EventOrchestration
    properties:
        description: string
        integrations:
            - id: string
              label: string
              parameters:
                - routingKey: string
                  type: string
        name: string
        team: string
    

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

    Description string
    A human-friendly description of the Event Orchestration.
    Integrations List<EventOrchestrationIntegration>
    An integration for the Event Orchestration.
    Name string
    Name of the Event Orchestration.
    Team string
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    Description string
    A human-friendly description of the Event Orchestration.
    Integrations []EventOrchestrationIntegrationTypeArgs
    An integration for the Event Orchestration.
    Name string
    Name of the Event Orchestration.
    Team string
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description String
    A human-friendly description of the Event Orchestration.
    integrations List<EventOrchestrationIntegration>
    An integration for the Event Orchestration.
    name String
    Name of the Event Orchestration.
    team String
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description string
    A human-friendly description of the Event Orchestration.
    integrations EventOrchestrationIntegration[]
    An integration for the Event Orchestration.
    name string
    Name of the Event Orchestration.
    team string
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description str
    A human-friendly description of the Event Orchestration.
    integrations Sequence[EventOrchestrationIntegrationArgs]
    An integration for the Event Orchestration.
    name str
    Name of the Event Orchestration.
    team str
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description String
    A human-friendly description of the Event Orchestration.
    integrations List<Property Map>
    An integration for the Event Orchestration.
    name String
    Name of the Event Orchestration.
    team String
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Routes int
    Id string
    The provider-assigned unique ID for this managed resource.
    Routes int
    id String
    The provider-assigned unique ID for this managed resource.
    routes Integer
    id string
    The provider-assigned unique ID for this managed resource.
    routes number
    id str
    The provider-assigned unique ID for this managed resource.
    routes int
    id String
    The provider-assigned unique ID for this managed resource.
    routes Number

    Look up Existing EventOrchestration Resource

    Get an existing EventOrchestration 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?: EventOrchestrationState, opts?: CustomResourceOptions): EventOrchestration
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            description: Optional[str] = None,
            integrations: Optional[Sequence[EventOrchestrationIntegrationArgs]] = None,
            name: Optional[str] = None,
            routes: Optional[int] = None,
            team: Optional[str] = None) -> EventOrchestration
    func GetEventOrchestration(ctx *Context, name string, id IDInput, state *EventOrchestrationState, opts ...ResourceOption) (*EventOrchestration, error)
    public static EventOrchestration Get(string name, Input<string> id, EventOrchestrationState? state, CustomResourceOptions? opts = null)
    public static EventOrchestration get(String name, Output<String> id, EventOrchestrationState 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
    A human-friendly description of the Event Orchestration.
    Integrations List<EventOrchestrationIntegration>
    An integration for the Event Orchestration.
    Name string
    Name of the Event Orchestration.
    Routes int
    Team string
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    Description string
    A human-friendly description of the Event Orchestration.
    Integrations []EventOrchestrationIntegrationTypeArgs
    An integration for the Event Orchestration.
    Name string
    Name of the Event Orchestration.
    Routes int
    Team string
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description String
    A human-friendly description of the Event Orchestration.
    integrations List<EventOrchestrationIntegration>
    An integration for the Event Orchestration.
    name String
    Name of the Event Orchestration.
    routes Integer
    team String
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description string
    A human-friendly description of the Event Orchestration.
    integrations EventOrchestrationIntegration[]
    An integration for the Event Orchestration.
    name string
    Name of the Event Orchestration.
    routes number
    team string
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description str
    A human-friendly description of the Event Orchestration.
    integrations Sequence[EventOrchestrationIntegrationArgs]
    An integration for the Event Orchestration.
    name str
    Name of the Event Orchestration.
    routes int
    team str
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.
    description String
    A human-friendly description of the Event Orchestration.
    integrations List<Property Map>
    An integration for the Event Orchestration.
    name String
    Name of the Event Orchestration.
    routes Number
    team String
    ID of the team that owns the Event Orchestration. If none is specified, only admins have access.

    Supporting Types

    EventOrchestrationIntegration, EventOrchestrationIntegrationArgs

    id String
    ID of the integration
    label String
    parameters List<Property Map>

    EventOrchestrationIntegrationParameter, EventOrchestrationIntegrationParameterArgs

    RoutingKey string
    Routing key that routes to this Orchestration.
    Type string
    Type of the routing key. global is the default type.
    RoutingKey string
    Routing key that routes to this Orchestration.
    Type string
    Type of the routing key. global is the default type.
    routingKey String
    Routing key that routes to this Orchestration.
    type String
    Type of the routing key. global is the default type.
    routingKey string
    Routing key that routes to this Orchestration.
    type string
    Type of the routing key. global is the default type.
    routing_key str
    Routing key that routes to this Orchestration.
    type str
    Type of the routing key. global is the default type.
    routingKey String
    Routing key that routes to this Orchestration.
    type String
    Type of the routing key. global is the default type.

    Import

    EventOrchestrations can be imported using the id, e.g.

    $ pulumi import pagerduty:index/eventOrchestration:EventOrchestration main 19acac92-027a-4ea0-b06c-bbf516519601
    

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

    Package Details

    Repository
    PagerDuty pulumi/pulumi-pagerduty
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the pagerduty Terraform Provider.
    pagerduty logo
    PagerDuty v4.17.0 published on Wednesday, Nov 20, 2024 by Pulumi