UNPKG

@grafana/alerting

Version:

Grafana Alerting Library – Build vertical integrations on top of the industry-leading alerting solution

82 lines (77 loc) 2.79 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var faker = require('@faker-js/faker'); var fishery = require('fishery'); var v0alpha1 = require('@grafana/api-clients/rtkq/notifications.alerting/v0alpha1'); var util = require('../../../../../mocks/util.cjs'); var common = require('./common.cjs'); "use strict"; const ListReceiverApiResponseFactory = fishery.Factory.define(() => ({ kind: "ReceiverList", apiVersion: `${v0alpha1.API_GROUP}/${v0alpha1.API_VERSION}`, metadata: { resourceVersion: util.generateResourceVersion() }, items: ContactPointFactory.buildList(5) })); const ContactPointFactory = fishery.Factory.define(() => { const title = util.generateTitle(); return { kind: "Receiver", apiVersion: `${v0alpha1.API_GROUP}/${v0alpha1.API_VERSION}`, metadata: { name: btoa(title), namespace: util.DEFAULT_NAMESPACE, uid: util.generateUID(), resourceVersion: util.generateResourceVersion(), annotations: ContactPointMetadataAnnotationsFactory.build() }, spec: ContactPointSpecFactory.build({ title }), status: {} }; }); const ContactPointSpecFactory = fishery.Factory.define(() => ({ title: util.generateTitle(), // use two unique random integrations by default integrations: faker.faker.helpers.uniqueArray(IntegrationUnion, 2).map((integration) => integration.build()) })); const GenericIntegrationFactory = fishery.Factory.define(() => ({ type: "generic", version: "1", disableResolveMessage: false, settings: { foo: "bar" } })); const EmailIntegrationFactory = fishery.Factory.define(() => ({ type: "email", version: "1", secureFields: {}, settings: { addresses: faker.faker.internet.email() } })); const SlackIntegrationFactory = fishery.Factory.define(() => ({ type: "slack", version: "1", secureFields: { token: true }, settings: { mentionChannel: "#alerts" } })); const IntegrationUnion = [EmailIntegrationFactory, SlackIntegrationFactory]; const ContactPointMetadataAnnotationsFactory = fishery.Factory.define(() => ({ "grafana.com/access/canReadSecrets": "true", "grafana.com/inUse/routes": "1", "grafana.com/inUse/rules": "1", "grafana.com/canUse": "true", ...common.AlertingEntityMetadataAnnotationsFactory.build() })); exports.ContactPointFactory = ContactPointFactory; exports.ContactPointMetadataAnnotationsFactory = ContactPointMetadataAnnotationsFactory; exports.ContactPointSpecFactory = ContactPointSpecFactory; exports.EmailIntegrationFactory = EmailIntegrationFactory; exports.GenericIntegrationFactory = GenericIntegrationFactory; exports.ListReceiverApiResponseFactory = ListReceiverApiResponseFactory; exports.SlackIntegrationFactory = SlackIntegrationFactory; //# sourceMappingURL=Receivers.cjs.map