@pulumiverse/grafana
Version:
A Pulumi package for creating and managing grafana.
135 lines • 5.95 kB
JavaScript
;
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.ContactPoint = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* Manages Grafana Alerting contact points.
*
* * Official documentation
* * [HTTP API](https://grafana.com/docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/alerting_provisioning/#contact-points)
*
* This resource requires Grafana 9.1.0 or later.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as grafana from "@pulumiverse/grafana";
*
* const myContactPoint = new grafana.alerting.ContactPoint("my_contact_point", {
* name: "My Contact Point",
* emails: [{
* addresses: [
* "one@company.org",
* "two@company.org",
* ],
* message: "{{ len .Alerts.Firing }} firing.",
* subject: "{{ template \"default.title\" .}}",
* singleEmail: true,
* disableResolveMessage: false,
* }],
* });
* ```
*
* ## Import
*
* ```sh
* terraform import grafana_contact_point.name "{{ name }}"
* terraform import grafana_contact_point.name "{{ orgID }}:{{ name }}"
* ```
*/
class ContactPoint extends pulumi.CustomResource {
/**
* Get an existing ContactPoint 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, id, state, opts) {
return new ContactPoint(name, state, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of ContactPoint. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ContactPoint.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["alertmanagers"] = state?.alertmanagers;
resourceInputs["dingdings"] = state?.dingdings;
resourceInputs["disableProvenance"] = state?.disableProvenance;
resourceInputs["discords"] = state?.discords;
resourceInputs["emails"] = state?.emails;
resourceInputs["googlechats"] = state?.googlechats;
resourceInputs["jiras"] = state?.jiras;
resourceInputs["kafkas"] = state?.kafkas;
resourceInputs["lines"] = state?.lines;
resourceInputs["name"] = state?.name;
resourceInputs["oncalls"] = state?.oncalls;
resourceInputs["opsgenies"] = state?.opsgenies;
resourceInputs["orgId"] = state?.orgId;
resourceInputs["pagerduties"] = state?.pagerduties;
resourceInputs["pushovers"] = state?.pushovers;
resourceInputs["sensugos"] = state?.sensugos;
resourceInputs["slacks"] = state?.slacks;
resourceInputs["sns"] = state?.sns;
resourceInputs["teams"] = state?.teams;
resourceInputs["telegrams"] = state?.telegrams;
resourceInputs["threemas"] = state?.threemas;
resourceInputs["victorops"] = state?.victorops;
resourceInputs["webexes"] = state?.webexes;
resourceInputs["webhooks"] = state?.webhooks;
resourceInputs["wecoms"] = state?.wecoms;
}
else {
const args = argsOrState;
resourceInputs["alertmanagers"] = args?.alertmanagers;
resourceInputs["dingdings"] = args?.dingdings;
resourceInputs["disableProvenance"] = args?.disableProvenance;
resourceInputs["discords"] = args?.discords;
resourceInputs["emails"] = args?.emails;
resourceInputs["googlechats"] = args?.googlechats;
resourceInputs["jiras"] = args?.jiras;
resourceInputs["kafkas"] = args?.kafkas;
resourceInputs["lines"] = args?.lines;
resourceInputs["name"] = args?.name;
resourceInputs["oncalls"] = args?.oncalls;
resourceInputs["opsgenies"] = args?.opsgenies;
resourceInputs["orgId"] = args?.orgId;
resourceInputs["pagerduties"] = args?.pagerduties;
resourceInputs["pushovers"] = args?.pushovers;
resourceInputs["sensugos"] = args?.sensugos;
resourceInputs["slacks"] = args?.slacks;
resourceInputs["sns"] = args?.sns;
resourceInputs["teams"] = args?.teams;
resourceInputs["telegrams"] = args?.telegrams;
resourceInputs["threemas"] = args?.threemas;
resourceInputs["victorops"] = args?.victorops;
resourceInputs["webexes"] = args?.webexes;
resourceInputs["webhooks"] = args?.webhooks;
resourceInputs["wecoms"] = args?.wecoms;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "grafana:index/contactPoint:ContactPoint" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(ContactPoint.__pulumiType, name, resourceInputs, opts);
}
}
exports.ContactPoint = ContactPoint;
/** @internal */
ContactPoint.__pulumiType = 'grafana:alerting/contactPoint:ContactPoint';
//# sourceMappingURL=contactPoint.js.map