Show / Hide Table of Contents

Class Extension

An extension can be associated with a service.

Example Usage

using Pulumi;
using Pagerduty = Pulumi.Pagerduty;

class MyStack : Stack
{
public MyStack()
{
    var webhook = Output.Create(Pagerduty.GetExtensionSchema.InvokeAsync(new Pagerduty.GetExtensionSchemaArgs
    {
        Name = "Generic V2 Webhook",
    }));
    var exampleUser = new Pagerduty.User("exampleUser", new Pagerduty.UserArgs
    {
        Email = "howard.james@example.domain",
        Teams = 
        {
            pagerduty_team.Example.Id,
        },
    });
    var foo = new Pagerduty.EscalationPolicy("foo", new Pagerduty.EscalationPolicyArgs
    {
        NumLoops = 2,
        Rules = 
        {
            new Pagerduty.Inputs.EscalationPolicyRuleArgs
            {
                EscalationDelayInMinutes = 10,
                Target = 
                {

                    {
                        { "id", exampleUser.Id },
                        { "type", "user" },
                    },
                },
            },
        },
    });
    var exampleService = new Pagerduty.Service("exampleService", new Pagerduty.ServiceArgs
    {
        AcknowledgementTimeout = 600,
        AutoResolveTimeout = 14400,
        EscalationPolicy = pagerduty_escalation_policy.Example.Id,
    });
    var slack = new Pagerduty.Extension("slack", new Pagerduty.ExtensionArgs
    {
        Config = @"{
""restrict"": ""any"",
""notify_types"": {
""resolve"": false,
""acknowledge"": false,
""assignments"": false
},
""access_token"": ""XXX""
}

",
        EndpointUrl = "https://generic_webhook_url/XXXXXX/BBBBBB",
        ExtensionObjects = 
        {
            exampleService.Id,
        },
        ExtensionSchema = webhook.Apply(webhook => webhook.Id),
    });
}

}
Inheritance
System.Object
Pulumi.Resource
Pulumi.CustomResource
Extension
Inherited Members
Pulumi.CustomResource.Id
Pulumi.Resource.GetResourceType()
Pulumi.Resource.GetResourceName()
Pulumi.Resource.Urn
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: Pulumi.Pagerduty
Assembly: Pulumi.Pagerduty.dll
Syntax
public class Extension : CustomResource

Constructors

View Source

Extension(String, ExtensionArgs, CustomResourceOptions)

Create a Extension resource with the given unique name, arguments, and options.

Declaration
public Extension(string name, ExtensionArgs args, CustomResourceOptions options = null)
Parameters
Type Name Description
System.String name

The unique name of the resource

ExtensionArgs args

The arguments used to populate this resource's properties

Pulumi.CustomResourceOptions options

A bag of options that control this resource's behavior

Properties

View Source

Config

The configuration of the service extension as string containing plain JSON-encoded data.

Declaration
public Output<string> Config { get; }
Property Value
Type Description
Pulumi.Output<System.String>
View Source

EndpointUrl

The url of the extension.
Note: The endpoint URL is Optional API wise in most cases. But in some cases it is a Required parameter. For example, pagerduty..getExtensionSchema named Generic V2 Webhook doesn't accept pagerduty..Extension with no endpoint_url, but one with named Slack accepts.

Declaration
public Output<string> EndpointUrl { get; }
Property Value
Type Description
Pulumi.Output<System.String>
View Source

ExtensionObjects

This is the objects for which the extension applies (An array of service ids).

Declaration
public Output<ImmutableArray<string>> ExtensionObjects { get; }
Property Value
Type Description
Pulumi.Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

ExtensionSchema

This is the schema for this extension.

Declaration
public Output<string> ExtensionSchema { get; }
Property Value
Type Description
Pulumi.Output<System.String>
View Source

HtmlUrl

URL at which the entity is uniquely displayed in the Web app

Declaration
public Output<string> HtmlUrl { get; }
Property Value
Type Description
Pulumi.Output<System.String>
View Source

Name

The name of the service extension.

Declaration
public Output<string> Name { get; }
Property Value
Type Description
Pulumi.Output<System.String>
View Source

Type

Declaration
public Output<string> Type { get; }
Property Value
Type Description
Pulumi.Output<System.String>

Methods

View Source

Get(String, Input<String>, ExtensionState, CustomResourceOptions)

Get an existing Extension resource's state with the given name, ID, and optional extra properties used to qualify the lookup.

Declaration
public static Extension Get(string name, Input<string> id, ExtensionState state = null, CustomResourceOptions options = null)
Parameters
Type Name Description
System.String name

The unique name of the resulting resource.

Pulumi.Input<System.String> id

The unique provider ID of the resource to lookup.

ExtensionState state

Any extra arguments used during the lookup.

Pulumi.CustomResourceOptions options

A bag of options that control this resource's behavior

Returns
Type Description
Extension
  • View Source
Back to top Copyright 2016-2020, Pulumi Corporation.