@pulumi/pagerduty
Version:
A Pulumi package for creating and managing pagerduty cloud resources.
125 lines (124 loc) • 4.61 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Use this data source to get information about a specific [vendor](https://developer.pagerduty.com/api-reference/b3A6Mjc0ODI1OQ-list-vendors) that you can use for a service integration (e.g. Amazon Cloudwatch, Splunk, Datadog).
*
* > For the case of vendors that rely on [Change Events](https://support.pagerduty.com/docs/change-events) (e.g. Jekings CI, Github, Gitlab, ...) is important to know that those vendors are only available with [PagerDuty AIOps](https://support.pagerduty.com/docs/aiops) add-on. Therefore, they won't be accessible as result of `pagerduty.getVendor` data source without the proper entitlements.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as pagerduty from "@pulumi/pagerduty";
*
* const datadog = pagerduty.getVendor({
* name: "Datadog",
* });
* const example = new pagerduty.User("example", {
* name: "Earline Greenholt",
* email: "125.greenholt.earline@graham.name",
* teams: [examplePagerdutyTeam.id],
* });
* const foo = new pagerduty.EscalationPolicy("foo", {
* name: "Engineering Escalation Policy",
* numLoops: 2,
* rules: [{
* escalationDelayInMinutes: 10,
* targets: [{
* type: "user",
* id: example.id,
* }],
* }],
* });
* const exampleService = new pagerduty.Service("example", {
* name: "My Web App",
* autoResolveTimeout: "14400",
* acknowledgementTimeout: "600",
* escalationPolicy: examplePagerdutyEscalationPolicy.id,
* });
* const exampleServiceIntegration = new pagerduty.ServiceIntegration("example", {
* name: "Datadog Integration",
* vendor: datadog.then(datadog => datadog.id),
* service: exampleService.id,
* });
* ```
*/
export declare function getVendor(args: GetVendorArgs, opts?: pulumi.InvokeOptions): Promise<GetVendorResult>;
/**
* A collection of arguments for invoking getVendor.
*/
export interface GetVendorArgs {
/**
* The vendor name to use to find a vendor in the PagerDuty API.
*/
name: string;
}
/**
* A collection of values returned by getVendor.
*/
export interface GetVendorResult {
/**
* The ID of the found vendor.
*/
readonly id: string;
/**
* The short name of the found vendor.
*/
readonly name: string;
/**
* The generic service type for this vendor.
*/
readonly type: string;
}
/**
* Use this data source to get information about a specific [vendor](https://developer.pagerduty.com/api-reference/b3A6Mjc0ODI1OQ-list-vendors) that you can use for a service integration (e.g. Amazon Cloudwatch, Splunk, Datadog).
*
* > For the case of vendors that rely on [Change Events](https://support.pagerduty.com/docs/change-events) (e.g. Jekings CI, Github, Gitlab, ...) is important to know that those vendors are only available with [PagerDuty AIOps](https://support.pagerduty.com/docs/aiops) add-on. Therefore, they won't be accessible as result of `pagerduty.getVendor` data source without the proper entitlements.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as pagerduty from "@pulumi/pagerduty";
*
* const datadog = pagerduty.getVendor({
* name: "Datadog",
* });
* const example = new pagerduty.User("example", {
* name: "Earline Greenholt",
* email: "125.greenholt.earline@graham.name",
* teams: [examplePagerdutyTeam.id],
* });
* const foo = new pagerduty.EscalationPolicy("foo", {
* name: "Engineering Escalation Policy",
* numLoops: 2,
* rules: [{
* escalationDelayInMinutes: 10,
* targets: [{
* type: "user",
* id: example.id,
* }],
* }],
* });
* const exampleService = new pagerduty.Service("example", {
* name: "My Web App",
* autoResolveTimeout: "14400",
* acknowledgementTimeout: "600",
* escalationPolicy: examplePagerdutyEscalationPolicy.id,
* });
* const exampleServiceIntegration = new pagerduty.ServiceIntegration("example", {
* name: "Datadog Integration",
* vendor: datadog.then(datadog => datadog.id),
* service: exampleService.id,
* });
* ```
*/
export declare function getVendorOutput(args: GetVendorOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVendorResult>;
/**
* A collection of arguments for invoking getVendor.
*/
export interface GetVendorOutputArgs {
/**
* The vendor name to use to find a vendor in the PagerDuty API.
*/
name: pulumi.Input<string>;
}