azurermNotificationHub
Manages a Notification Hub within a Notification Hub Namespace.
Example Usage
/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
this,
"example",
{
location: "West Europe",
name: "notificationhub-resources",
}
);
const azurermNotificationHubNamespaceExample =
new azurerm.notificationHubNamespace.NotificationHubNamespace(
this,
"example_1",
{
location: azurermResourceGroupExample.location,
name: "myappnamespace",
namespace_type: "NotificationHub",
resource_group_name: azurermResourceGroupExample.name,
sku_name: "Free",
}
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermNotificationHubNamespaceExample.overrideLogicalId("example");
const azurermNotificationHubExample =
new azurerm.notificationHub.NotificationHub(this, "example_2", {
location: azurermResourceGroupExample.location,
name: "mynotificationhub",
namespace_name: azurermNotificationHubNamespaceExample.name,
resource_group_name: azurermResourceGroupExample.name,
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermNotificationHubExample.overrideLogicalId("example");
Argument Reference
The following arguments are supported:
-
name- (Required) The name to use for this Notification Hub. Changing this forces a new resource to be created. -
namespaceName- (Required) The name of the Notification Hub Namespace in which to create this Notification Hub. Changing this forces a new resource to be created. -
resourceGroupName- (Required) The name of the Resource Group in which the Notification Hub Namespace exists. Changing this forces a new resource to be created. -
location- (Required) The Azure Region in which this Notification Hub Namespace exists. Changing this forces a new resource to be created. -
apnsCredential- (Optional) AapnsCredentialblock as defined below.
\~> NOTE: Removing the apnsCredential block will currently force a recreation of this resource due to this bug in the Azure SDK for Go - we'll remove this limitation when the SDK bug is fixed.
gcmCredential- (Optional) AgcmCredentialblock as defined below.
\~> NOTE: Removing the gcmCredential block will currently force a recreation of this resource due to this bug in the Azure SDK for Go - we'll remove this limitation when the SDK bug is fixed.
tags- (Optional) A mapping of tags to assign to the resource.
A apnsCredential block contains:
-
applicationMode- (Required) The Application Mode which defines which server the APNS Messages should be sent to. Possible values areproductionandsandbox. -
bundleId- (Required) The Bundle ID of the iOS/macOS application to send push notifications for, such ascomHashicorpExample. -
keyId- (Required) The Apple Push Notifications Service (APNS) Key. -
teamId- (Required) The ID of the team the Token. -
token- (Required) The Push Token associated with the Apple Developer Account. This is the contents of thekeydownloaded from the Apple Developer Portal between thebeginPrivateKeyandendPrivateKeyblocks.
A gcmCredential block contains:
apiKey- (Required) The API Key associated with the Google Cloud Messaging service.
Attributes Reference
The following attributes are exported:
id- The ID of the Notification Hub.
Timeouts
The timeouts block allows you to specify timeouts for certain actions:
create- (Defaults to 30 minutes) Used when creating the Notification Hub.update- (Defaults to 30 minutes) Used when updating the Notification Hub.read- (Defaults to 5 minutes) Used when retrieving the Notification Hub.delete- (Defaults to 30 minutes) Used when deleting the Notification Hub.
Import
Notification Hubs can be imported using the resourceId, e.g.