@pulumi/wavefront
Version:
A Pulumi package for creating and managing wavefront cloud resources.
228 lines (227 loc) • 8.48 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* Provides a wavefront Alert Target resource. This allows alert targets to created, updated, and deleted.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as wavefront from "@pulumi/wavefront";
*
* const testTarget = new wavefront.AlertTarget("test_target", {
* name: "Terraform Test Target",
* description: "Test target",
* method: "WEBHOOK",
* recipient: "https://hooks.slack.com/services/test/me",
* contentType: "application/json",
* customHeaders: {
* Testing: "true",
* },
* template: "{}",
* triggers: [
* "ALERT_OPENED",
* "ALERT_RESOLVED",
* ],
* });
* ```
*
* ## Import
*
* Alert Targets can be imported using the `id`, e.g.:
*
* ```sh
* $ pulumi import wavefront:index/alertTarget:AlertTarget alert_target abcdEFGhijKLMNO
* ```
*/
export declare class AlertTarget extends pulumi.CustomResource {
/**
* Get an existing AlertTarget resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AlertTargetState, opts?: pulumi.CustomResourceOptions): AlertTarget;
/**
* Returns true if the given object is an instance of AlertTarget. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is AlertTarget;
/**
* The value of the `Content-Type` header of the webhook.
*/
readonly contentType: pulumi.Output<string | undefined>;
/**
* A `string->string` map specifying the custom HTTP header key/value pairs that will be
* sent in the requests with a method of `WEBHOOK`.
*/
readonly customHeaders: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* Description describing this alert target.
*/
readonly description: pulumi.Output<string>;
/**
* The subject title of an email notification target.
*/
readonly emailSubject: pulumi.Output<string | undefined>;
/**
* Determine whether the email alert content is sent as HTML or text.
*/
readonly isHtmlContent: pulumi.Output<boolean | undefined>;
/**
* The notification method used for notification target. One of `WEBHOOK`, `EMAIL`, `PAGERDUTY`.
*/
readonly method: pulumi.Output<string | undefined>;
/**
* The name of the alert target as it is displayed in Wavefront.
*/
readonly name: pulumi.Output<string>;
/**
* The end point for the notification Target. `EMAIL`: email address. `PAGERDUTY`: PagerDuty
* routing key. `WEBHOOK`: URL endpoint.
*/
readonly recipient: pulumi.Output<string>;
/**
* List of routing targets that this alert target will notify. See Route
*/
readonly routes: pulumi.Output<outputs.AlertTargetRoute[] | undefined>;
/**
* The target ID prefixed with `target:` for interpolating into a Wavefront Alert.
*/
readonly targetId: pulumi.Output<string>;
/**
* A mustache template that will form the body of the POST request, email, and summary of the PagerDuty.
*/
readonly template: pulumi.Output<string>;
/**
* A list of occurrences on which this webhook will be fired. Valid values are `ALERT_OPENED`,
* `ALERT_UPDATED`, `ALERT_RESOLVED`, `ALERT_MAINTENANCE`, `ALERT_SNOOZED`, `ALERT_NO_DATA`, `ALERT_NO_DATA_RESOLVED`, `ALERT_NO_DATA_MAINTENANCE`.
*/
readonly triggers: pulumi.Output<string[]>;
/**
* Create a AlertTarget resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: AlertTargetArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering AlertTarget resources.
*/
export interface AlertTargetState {
/**
* The value of the `Content-Type` header of the webhook.
*/
contentType?: pulumi.Input<string>;
/**
* A `string->string` map specifying the custom HTTP header key/value pairs that will be
* sent in the requests with a method of `WEBHOOK`.
*/
customHeaders?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Description describing this alert target.
*/
description?: pulumi.Input<string>;
/**
* The subject title of an email notification target.
*/
emailSubject?: pulumi.Input<string>;
/**
* Determine whether the email alert content is sent as HTML or text.
*/
isHtmlContent?: pulumi.Input<boolean>;
/**
* The notification method used for notification target. One of `WEBHOOK`, `EMAIL`, `PAGERDUTY`.
*/
method?: pulumi.Input<string>;
/**
* The name of the alert target as it is displayed in Wavefront.
*/
name?: pulumi.Input<string>;
/**
* The end point for the notification Target. `EMAIL`: email address. `PAGERDUTY`: PagerDuty
* routing key. `WEBHOOK`: URL endpoint.
*/
recipient?: pulumi.Input<string>;
/**
* List of routing targets that this alert target will notify. See Route
*/
routes?: pulumi.Input<pulumi.Input<inputs.AlertTargetRoute>[]>;
/**
* The target ID prefixed with `target:` for interpolating into a Wavefront Alert.
*/
targetId?: pulumi.Input<string>;
/**
* A mustache template that will form the body of the POST request, email, and summary of the PagerDuty.
*/
template?: pulumi.Input<string>;
/**
* A list of occurrences on which this webhook will be fired. Valid values are `ALERT_OPENED`,
* `ALERT_UPDATED`, `ALERT_RESOLVED`, `ALERT_MAINTENANCE`, `ALERT_SNOOZED`, `ALERT_NO_DATA`, `ALERT_NO_DATA_RESOLVED`, `ALERT_NO_DATA_MAINTENANCE`.
*/
triggers?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* The set of arguments for constructing a AlertTarget resource.
*/
export interface AlertTargetArgs {
/**
* The value of the `Content-Type` header of the webhook.
*/
contentType?: pulumi.Input<string>;
/**
* A `string->string` map specifying the custom HTTP header key/value pairs that will be
* sent in the requests with a method of `WEBHOOK`.
*/
customHeaders?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Description describing this alert target.
*/
description: pulumi.Input<string>;
/**
* The subject title of an email notification target.
*/
emailSubject?: pulumi.Input<string>;
/**
* Determine whether the email alert content is sent as HTML or text.
*/
isHtmlContent?: pulumi.Input<boolean>;
/**
* The notification method used for notification target. One of `WEBHOOK`, `EMAIL`, `PAGERDUTY`.
*/
method?: pulumi.Input<string>;
/**
* The name of the alert target as it is displayed in Wavefront.
*/
name?: pulumi.Input<string>;
/**
* The end point for the notification Target. `EMAIL`: email address. `PAGERDUTY`: PagerDuty
* routing key. `WEBHOOK`: URL endpoint.
*/
recipient: pulumi.Input<string>;
/**
* List of routing targets that this alert target will notify. See Route
*/
routes?: pulumi.Input<pulumi.Input<inputs.AlertTargetRoute>[]>;
/**
* A mustache template that will form the body of the POST request, email, and summary of the PagerDuty.
*/
template: pulumi.Input<string>;
/**
* A list of occurrences on which this webhook will be fired. Valid values are `ALERT_OPENED`,
* `ALERT_UPDATED`, `ALERT_RESOLVED`, `ALERT_MAINTENANCE`, `ALERT_SNOOZED`, `ALERT_NO_DATA`, `ALERT_NO_DATA_RESOLVED`, `ALERT_NO_DATA_MAINTENANCE`.
*/
triggers: pulumi.Input<pulumi.Input<string>[]>;
}