Grafana
Manages a Dashboard Grafana.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example-resources",
location: "West Europe",
});
const exampleGrafana = new azure.dashboard.Grafana("example", {
name: "example-dg",
resourceGroupName: example.name,
location: "West Europe",
grafanaMajorVersion: "11",
apiKeyEnabled: true,
deterministicOutboundIpEnabled: true,
publicNetworkAccessEnabled: false,
identity: {
type: "SystemAssigned",
},
tags: {
key: "value",
},
});import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example-resources",
location="West Europe")
example_grafana = azure.dashboard.Grafana("example",
name="example-dg",
resource_group_name=example.name,
location="West Europe",
grafana_major_version="11",
api_key_enabled=True,
deterministic_outbound_ip_enabled=True,
public_network_access_enabled=False,
identity={
"type": "SystemAssigned",
},
tags={
"key": "value",
})using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "example-resources",
Location = "West Europe",
});
var exampleGrafana = new Azure.Dashboard.Grafana("example", new()
{
Name = "example-dg",
ResourceGroupName = example.Name,
Location = "West Europe",
GrafanaMajorVersion = "11",
ApiKeyEnabled = true,
DeterministicOutboundIpEnabled = true,
PublicNetworkAccessEnabled = false,
Identity = new Azure.Dashboard.Inputs.GrafanaIdentityArgs
{
Type = "SystemAssigned",
},
Tags =
{
{ "key", "value" },
},
});
});package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/dashboard"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example-resources"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
_, err = dashboard.NewGrafana(ctx, "example", &dashboard.GrafanaArgs{
Name: pulumi.String("example-dg"),
ResourceGroupName: example.Name,
Location: pulumi.String("West Europe"),
GrafanaMajorVersion: pulumi.String("11"),
ApiKeyEnabled: pulumi.Bool(true),
DeterministicOutboundIpEnabled: pulumi.Bool(true),
PublicNetworkAccessEnabled: pulumi.Bool(false),
Identity: &dashboard.GrafanaIdentityArgs{
Type: pulumi.String("SystemAssigned"),
},
Tags: pulumi.StringMap{
"key": pulumi.String("value"),
},
})
if err != nil {
return err
}
return nil
})
}package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.dashboard.Grafana;
import com.pulumi.azure.dashboard.GrafanaArgs;
import com.pulumi.azure.dashboard.inputs.GrafanaIdentityArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example-resources")
.location("West Europe")
.build());
var exampleGrafana = new Grafana("exampleGrafana", GrafanaArgs.builder()
.name("example-dg")
.resourceGroupName(example.name())
.location("West Europe")
.grafanaMajorVersion(11)
.apiKeyEnabled(true)
.deterministicOutboundIpEnabled(true)
.publicNetworkAccessEnabled(false)
.identity(GrafanaIdentityArgs.builder()
.type("SystemAssigned")
.build())
.tags(Map.of("key", "value"))
.build());
}
}resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleGrafana:
type: azure:dashboard:Grafana
name: example
properties:
name: example-dg
resourceGroupName: ${example.name}
location: West Europe
grafanaMajorVersion: 11
apiKeyEnabled: true
deterministicOutboundIpEnabled: true
publicNetworkAccessEnabled: false
identity:
type: SystemAssigned
tags:
key: valueImport
Dashboard Grafana can be imported using the resource id, e.g.
$ pulumi import azure:dashboard/grafana:Grafana example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Dashboard/grafana/workspace1Properties
Whether to enable the api key setting of the Grafana instance. Defaults to false.
Scope for dns deterministic name hash calculation. The only possible value is TenantReuse. Defaults to TenantReuse.
A azure_monitor_workspace_integrations block as defined below.
Whether to enable the Grafana instance to use deterministic outbound IPs. Defaults to false.
Which major version of Grafana to deploy. Possible values are 10, 11. Changing this forces a new resource to be created.
The full Grafana software semantic version deployed.
An identity block as defined below. Changing this forces a new Dashboard Grafana to be created.
List of outbound IPs if deterministicOutboundIP is enabled.
Whether to enable traffic over the public interface. Defaults to true.
Specifies the name of the Resource Group where the Dashboard Grafana should exist. Changing this forces a new Dashboard Grafana to be created.
A smtp block as defined below.
Whether to enable the zone redundancy setting of the Grafana instance. Defaults to false. Changing this forces a new Dashboard Grafana to be created.