google_cloudiot_registry
Creates a device registry in Google's Cloud IoT Core platform. For more information see the official documentation and API.
Example Usage
resource "google_pubsub_topic" "default-devicestatus" { name = "default-devicestatus" } resource "google_pubsub_topic" "default-telemetry" { name = "default-telemetry" } resource "google_cloudiot_registry" "default-registry" { name = "default-registry" event_notification_config = { pubsub_topic_name = "${google_pubsub_topic.default-telemetry.id}" } state_notification_config = { pubsub_topic_name = "${google_pubsub_topic.default-devicestatus.id}" } http_config = { http_enabled_state = "HTTP_ENABLED" } mqtt_config = { mqtt_enabled_state = "MQTT_ENABLED" } credentials = [ { public_key_certificate = { format = "X509_CERTIFICATE_PEM" certificate = "${file("rsa_cert.pem")}" } }, ] }
Argument Reference
The following arguments are supported:
-
name
- (Required) A unique name for the resource, required by device registry. Changing this forces a new resource to be created.
-
project
- (Optional) The project in which the resource belongs. If it is not provided, the provider project is used. -
region
- (Optional) The Region in which the created address should reside. If it is not provided, the provider region is used. -
event_notification_config
- (Optional) A PubSub topics to publish device events. Structure is documented below. -
state_notification_config
- (Optional) A PubSub topic to publish device state updates. Structure is documented below. -
mqtt_config
- (Optional) Activate or deactivate MQTT. Structure is documented below. -
http_config
- (Optional) Activate or deactivate HTTP. Structure is documented below. -
credentials
- (Optional) List of public key certificates to authenticate devices. Structure is documented below.
The event_notification_config
block supports:
-
pubsub_topic_name
- (Required) PubSub topic name to publish device events.
The state_notification_config
block supports:
-
pubsub_topic_name
- (Required) PubSub topic name to publish device state updates.
The mqtt_config
block supports:
-
mqtt_enabled_state
- (Required) The field allowsMQTT_ENABLED
orMQTT_DISABLED
.
The http_config
block supports:
-
http_enabled_state
- (Required) The field allowsHTTP_ENABLED
orHTTP_DISABLED
.
The credentials
block supports:
-
public_key_certificate
- (Required) The certificate format and data.
The public_key_certificate
block supports:
-
format
- (Required) The field allows onlyX509_CERTIFICATE_PEM
. -
certificate
- (Required) The certificate data.
Attributes Reference
Only the arguments listed above are exposed as attributes.
Import
A device registry can be imported using the name
, e.g.
$ terraform import google_cloudiot_registry.default-registry projects/{project}/locations/{region}/registries/{name}
© 2018 HashiCorpLicensed under the MPL 2.0 License.
https://www.terraform.io/docs/providers/google/r/cloudiot_registry.html