@pulumi/signalfx
Version:
A Pulumi package for creating and managing SignalFx resources.
216 lines (215 loc) • 10.5 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* In the Splunk Observability Cloud web UI, a [dashboard group](https://developers.signalfx.com/dashboard_groups_reference.html) is a collection of dashboards.
*
* Dashboard groups cannot be accessed directly. You can access them through a dashboard within a group.
*
* > **NOTE** When you want to change or remove write permissions for a user other than yourself regarding dashboard groups, use a session token of an administrator to authenticate the Splunk Observability Cloud provider. See [Operations that require a session token for an administrator](https://dev.splunk.com/observability/docs/administration/authtokens#Operations-that-require-a-session-token-for-an-administrator).
*
* ## Example
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as signalfx from "@pulumi/signalfx";
*
* const mydashboardgroup0 = new signalfx.DashboardGroup("mydashboardgroup0", {
* name: "My team dashboard group",
* description: "Cool dashboard group",
* authorizedWriterTeams: [mycoolteam.id],
* authorizedWriterUsers: ["abc123"],
* });
* ```
*
* ## Example with permissions
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as signalfx from "@pulumi/signalfx";
*
* const mydashboardgroupWithpermissions = new signalfx.DashboardGroup("mydashboardgroup_withpermissions", {
* name: "My team dashboard group",
* description: "Cool dashboard group",
* permissions: [
* {
* principalId: "abc123",
* principalType: "ORG",
* actions: ["READ"],
* },
* {
* principalId: "abc456",
* principalType: "USER",
* actions: [
* "READ",
* "WRITE",
* ],
* },
* ],
* });
* ```
*
* ## Example With mirrored dashboards
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as signalfx from "@pulumi/signalfx";
*
* const mydashboardgroupWithmirrors = new signalfx.DashboardGroup("mydashboardgroup_withmirrors", {
* name: "My team dashboard group",
* description: "Cool dashboard group",
* dashboards: [{
* dashboardId: gcDashboard.id,
* nameOverride: "GC For My Service",
* descriptionOverride: "Garbage Collection dashboard maintained by JVM team",
* filterOverrides: [{
* property: "service",
* values: ["myservice"],
* negated: false,
* }],
* variableOverrides: [{
* property: "region",
* values: ["us-west1"],
* valuesSuggesteds: [
* "us-west-1",
* "us-east-1",
* ],
* }],
* }],
* });
* ```
*/
export declare class DashboardGroup extends pulumi.CustomResource {
/**
* Get an existing DashboardGroup 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?: DashboardGroupState, opts?: pulumi.CustomResourceOptions): DashboardGroup;
/**
* Returns true if the given object is an instance of DashboardGroup. 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 DashboardGroup;
/**
* Team IDs that have write access to this dashboard group. Remember to use an admin's token if using this feature and to include that admin's team (or user id in `authorizedWriterTeams`). **Note:** Deprecated use `permissions` instead.
*
* @deprecated Please use permissions field now
*/
readonly authorizedWriterTeams: pulumi.Output<string[] | undefined>;
/**
* User IDs that have write access to this dashboard group. Remember to use an admin's token if using this feature and to include that admin's user id (or team id in `authorizedWriterTeams`). **Note:** Deprecated use `permissions` instead.
*
* @deprecated Please use permissions field now
*/
readonly authorizedWriterUsers: pulumi.Output<string[] | undefined>;
/**
* [Mirrored dashboards](https://docs.splunk.com/observability/en/data-visualization/dashboards/dashboard-share-clone-mirror.html#mirror-dashboard) in this dashboard group. **Note:** This feature is not present in all accounts. Please contact support if you are unsure.
*/
readonly dashboards: pulumi.Output<outputs.DashboardGroupDashboard[] | undefined>;
/**
* Description of the dashboard group.
*/
readonly description: pulumi.Output<string | undefined>;
readonly importQualifiers: pulumi.Output<outputs.DashboardGroupImportQualifier[] | undefined>;
/**
* Name of the dashboard group.
*/
readonly name: pulumi.Output<string>;
/**
* [Permissions](https://docs.splunk.com/Observability/infrastructure/terms-concepts/permissions.html) List of read and write permission configuration to specify which user, team, and organization can view and/or edit your dashboard group. **Note:** This feature is not present in all accounts. Please contact support if you are unsure.
*/
readonly permissions: pulumi.Output<outputs.DashboardGroupPermission[]>;
/**
* Team IDs to associate the dashboard group to.
*/
readonly teams: pulumi.Output<string[] | undefined>;
/**
* Create a DashboardGroup 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?: DashboardGroupArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering DashboardGroup resources.
*/
export interface DashboardGroupState {
/**
* Team IDs that have write access to this dashboard group. Remember to use an admin's token if using this feature and to include that admin's team (or user id in `authorizedWriterTeams`). **Note:** Deprecated use `permissions` instead.
*
* @deprecated Please use permissions field now
*/
authorizedWriterTeams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* User IDs that have write access to this dashboard group. Remember to use an admin's token if using this feature and to include that admin's user id (or team id in `authorizedWriterTeams`). **Note:** Deprecated use `permissions` instead.
*
* @deprecated Please use permissions field now
*/
authorizedWriterUsers?: pulumi.Input<pulumi.Input<string>[]>;
/**
* [Mirrored dashboards](https://docs.splunk.com/observability/en/data-visualization/dashboards/dashboard-share-clone-mirror.html#mirror-dashboard) in this dashboard group. **Note:** This feature is not present in all accounts. Please contact support if you are unsure.
*/
dashboards?: pulumi.Input<pulumi.Input<inputs.DashboardGroupDashboard>[]>;
/**
* Description of the dashboard group.
*/
description?: pulumi.Input<string>;
importQualifiers?: pulumi.Input<pulumi.Input<inputs.DashboardGroupImportQualifier>[]>;
/**
* Name of the dashboard group.
*/
name?: pulumi.Input<string>;
/**
* [Permissions](https://docs.splunk.com/Observability/infrastructure/terms-concepts/permissions.html) List of read and write permission configuration to specify which user, team, and organization can view and/or edit your dashboard group. **Note:** This feature is not present in all accounts. Please contact support if you are unsure.
*/
permissions?: pulumi.Input<pulumi.Input<inputs.DashboardGroupPermission>[]>;
/**
* Team IDs to associate the dashboard group to.
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* The set of arguments for constructing a DashboardGroup resource.
*/
export interface DashboardGroupArgs {
/**
* Team IDs that have write access to this dashboard group. Remember to use an admin's token if using this feature and to include that admin's team (or user id in `authorizedWriterTeams`). **Note:** Deprecated use `permissions` instead.
*
* @deprecated Please use permissions field now
*/
authorizedWriterTeams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* User IDs that have write access to this dashboard group. Remember to use an admin's token if using this feature and to include that admin's user id (or team id in `authorizedWriterTeams`). **Note:** Deprecated use `permissions` instead.
*
* @deprecated Please use permissions field now
*/
authorizedWriterUsers?: pulumi.Input<pulumi.Input<string>[]>;
/**
* [Mirrored dashboards](https://docs.splunk.com/observability/en/data-visualization/dashboards/dashboard-share-clone-mirror.html#mirror-dashboard) in this dashboard group. **Note:** This feature is not present in all accounts. Please contact support if you are unsure.
*/
dashboards?: pulumi.Input<pulumi.Input<inputs.DashboardGroupDashboard>[]>;
/**
* Description of the dashboard group.
*/
description?: pulumi.Input<string>;
importQualifiers?: pulumi.Input<pulumi.Input<inputs.DashboardGroupImportQualifier>[]>;
/**
* Name of the dashboard group.
*/
name?: pulumi.Input<string>;
/**
* [Permissions](https://docs.splunk.com/Observability/infrastructure/terms-concepts/permissions.html) List of read and write permission configuration to specify which user, team, and organization can view and/or edit your dashboard group. **Note:** This feature is not present in all accounts. Please contact support if you are unsure.
*/
permissions?: pulumi.Input<pulumi.Input<inputs.DashboardGroupPermission>[]>;
/**
* Team IDs to associate the dashboard group to.
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
}