UNPKG

@pulumiverse/grafana

Version:

A Pulumi package for creating and managing grafana.

166 lines (165 loc) 7.61 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * * [Official documentation](https://grafana.com/docs/grafana/latest/administration/team-management/) * * [HTTP API](https://grafana.com/docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/team/) * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as grafana from "@pulumiverse/grafana"; * * const viewer = new grafana.oss.User("viewer", { * name: "Viewer", * email: "viewer@example.com", * login: "viewer", * password: "my-password", * }); * const test_team = new grafana.oss.Team("test-team", { * name: "Test Team", * email: "teamemail@example.com", * members: [viewer.email], * }); * ``` * * ## Import * * ```sh * terraform import grafana_team.name "{{ id }}" * terraform import grafana_team.name "{{ orgID }}:{{ id }}" * ``` */ export declare class Team extends pulumi.CustomResource { /** * Get an existing Team 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?: TeamState, opts?: pulumi.CustomResourceOptions): Team; /** * Returns true if the given object is an instance of Team. 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 Team; /** * An email address for the team. */ readonly email: pulumi.Output<string>; /** * Ignores team members that have been added to team by [Team Sync](https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-team-sync/). Team Sync can be provisioned using [grafana.enterprise.TeamExternalGroup resource](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/team_external_group). */ readonly ignoreExternallySyncedMembers: pulumi.Output<boolean>; /** * A set of email addresses corresponding to users who should be given membership to the team. Note: users specified here must already exist in Grafana. */ readonly members: pulumi.Output<string[]>; /** * The display name for the Grafana team created. */ readonly name: pulumi.Output<string>; /** * The Organization ID. If not set, the default organization is used for basic authentication, or the one that owns your service account for token authentication. */ readonly orgId: pulumi.Output<string>; readonly preferences: pulumi.Output<outputs.oss.TeamPreferences | undefined>; /** * The team id assigned to this team by Grafana. */ readonly teamId: pulumi.Output<number>; /** * Sync external auth provider groups with this Grafana team. Only available in Grafana Enterprise. * * [Official documentation](https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-team-sync/) * * [HTTP API](https://grafana.com/docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/team_sync/) */ readonly teamSync: pulumi.Output<outputs.oss.TeamTeamSync | undefined>; /** * The team uid assigned to this team by Grafana. */ readonly teamUid: pulumi.Output<string>; /** * Create a Team 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?: TeamArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Team resources. */ export interface TeamState { /** * An email address for the team. */ email?: pulumi.Input<string>; /** * Ignores team members that have been added to team by [Team Sync](https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-team-sync/). Team Sync can be provisioned using [grafana.enterprise.TeamExternalGroup resource](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/team_external_group). */ ignoreExternallySyncedMembers?: pulumi.Input<boolean>; /** * A set of email addresses corresponding to users who should be given membership to the team. Note: users specified here must already exist in Grafana. */ members?: pulumi.Input<pulumi.Input<string>[]>; /** * The display name for the Grafana team created. */ name?: pulumi.Input<string>; /** * The Organization ID. If not set, the default organization is used for basic authentication, or the one that owns your service account for token authentication. */ orgId?: pulumi.Input<string>; preferences?: pulumi.Input<inputs.oss.TeamPreferences>; /** * The team id assigned to this team by Grafana. */ teamId?: pulumi.Input<number>; /** * Sync external auth provider groups with this Grafana team. Only available in Grafana Enterprise. * * [Official documentation](https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-team-sync/) * * [HTTP API](https://grafana.com/docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/team_sync/) */ teamSync?: pulumi.Input<inputs.oss.TeamTeamSync>; /** * The team uid assigned to this team by Grafana. */ teamUid?: pulumi.Input<string>; } /** * The set of arguments for constructing a Team resource. */ export interface TeamArgs { /** * An email address for the team. */ email?: pulumi.Input<string>; /** * Ignores team members that have been added to team by [Team Sync](https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-team-sync/). Team Sync can be provisioned using [grafana.enterprise.TeamExternalGroup resource](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/team_external_group). */ ignoreExternallySyncedMembers?: pulumi.Input<boolean>; /** * A set of email addresses corresponding to users who should be given membership to the team. Note: users specified here must already exist in Grafana. */ members?: pulumi.Input<pulumi.Input<string>[]>; /** * The display name for the Grafana team created. */ name?: pulumi.Input<string>; /** * The Organization ID. If not set, the default organization is used for basic authentication, or the one that owns your service account for token authentication. */ orgId?: pulumi.Input<string>; preferences?: pulumi.Input<inputs.oss.TeamPreferences>; /** * Sync external auth provider groups with this Grafana team. Only available in Grafana Enterprise. * * [Official documentation](https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-team-sync/) * * [HTTP API](https://grafana.com/docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/team_sync/) */ teamSync?: pulumi.Input<inputs.oss.TeamTeamSync>; }