UNPKG

@pulumiverse/grafana

Version:

A Pulumi package for creating and managing grafana.

123 lines (122 loc) 4.18 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Manages Grafana Saved Queries, also known as the Query Library, using the Grafana App Platform API (`queries.grafana.app/v1`). * * The datasource query stored in each target, the target's variable replacements, and a variable's value list definition are passed as raw JSON strings (use `jsonencode()`) because their shape depends on the datasource. * * * [Query Library documentation](https://grafana.com/docs/grafana/latest/explore/query-management/) * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as grafana from "@pulumiverse/grafana"; * * const example = new grafana.apps.v1.Query("example", { * metadata: { * uid: "example-saved-query", * }, * spec: { * title: "Requests per second", * description: "Prometheus rate of HTTP requests", * isVisible: true, * tags: [ * "http", * "prometheus", * ], * targets: [{ * propertiesJson: JSON.stringify({ * refId: "A", * expr: "rate(http_requests_total[$__rate_interval])", * datasource: { * type: "prometheus", * uid: "my-prometheus-uid", * }, * }), * }], * }, * }); * ``` * * ## Import * * !/bin/bash * Import an existing saved query by its UID * * ```sh * $ pulumi import grafana:apps/v1/query:Query example example-saved-query * ``` */ export declare class Query extends pulumi.CustomResource { /** * Get an existing Query 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?: QueryState, opts?: pulumi.CustomResourceOptions): Query; /** * Returns true if the given object is an instance of Query. 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 Query; /** * The metadata of the resource. */ readonly metadata: pulumi.Output<outputs.apps.v1.QueryMetadata | undefined>; /** * Options for applying the resource. */ readonly options: pulumi.Output<outputs.apps.v1.QueryOptions | undefined>; /** * The spec of the resource. */ readonly spec: pulumi.Output<outputs.apps.v1.QuerySpec | undefined>; /** * Create a Query 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?: QueryArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Query resources. */ export interface QueryState { /** * The metadata of the resource. */ metadata?: pulumi.Input<inputs.apps.v1.QueryMetadata>; /** * Options for applying the resource. */ options?: pulumi.Input<inputs.apps.v1.QueryOptions>; /** * The spec of the resource. */ spec?: pulumi.Input<inputs.apps.v1.QuerySpec>; } /** * The set of arguments for constructing a Query resource. */ export interface QueryArgs { /** * The metadata of the resource. */ metadata?: pulumi.Input<inputs.apps.v1.QueryMetadata>; /** * Options for applying the resource. */ options?: pulumi.Input<inputs.apps.v1.QueryOptions>; /** * The spec of the resource. */ spec?: pulumi.Input<inputs.apps.v1.QuerySpec>; }