RegistryArgs

data class RegistryArgs(val credentials: Output<List<RegistryCredentialArgs>>? = null, val eventNotificationConfigs: Output<List<RegistryEventNotificationConfigItemArgs>>? = null, val httpConfig: Output<Map<String, Any>>? = null, val logLevel: Output<String>? = null, val mqttConfig: Output<Map<String, Any>>? = null, val name: Output<String>? = null, val project: Output<String>? = null, val region: Output<String>? = null, val stateNotificationConfig: Output<Map<String, Any>>? = null) : ConvertibleToJava<RegistryArgs>

Warning: gcp.iot.Registry is deprecated in the API. This resource will be removed in the next major release of the provider. A Google Cloud IoT Core device registry. To get more information about DeviceRegistry, see:

Example Usage

Cloudiot Device Registry Basic

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.iot.Registry;
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 test_registry = new Registry("test-registry");
}
}

Cloudiot Device Registry Single Event Notification Configs

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.pubsub.Topic;
import com.pulumi.gcp.iot.Registry;
import com.pulumi.gcp.iot.RegistryArgs;
import com.pulumi.gcp.iot.inputs.RegistryEventNotificationConfigItemArgs;
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 default_telemetry = new Topic("default-telemetry");
var test_registry = new Registry("test-registry", RegistryArgs.builder()
.eventNotificationConfigs(RegistryEventNotificationConfigItemArgs.builder()
.pubsubTopicName(default_telemetry.id())
.subfolderMatches("")
.build())
.build());
}
}

Cloudiot Device Registry Full

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.pubsub.Topic;
import com.pulumi.gcp.iot.Registry;
import com.pulumi.gcp.iot.RegistryArgs;
import com.pulumi.gcp.iot.inputs.RegistryEventNotificationConfigItemArgs;
import com.pulumi.gcp.iot.inputs.RegistryCredentialArgs;
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 default_devicestatus = new Topic("default-devicestatus");
var default_telemetry = new Topic("default-telemetry");
var additional_telemetry = new Topic("additional-telemetry");
var test_registry = new Registry("test-registry", RegistryArgs.builder()
.eventNotificationConfigs(
RegistryEventNotificationConfigItemArgs.builder()
.pubsubTopicName(additional_telemetry.id())
.subfolderMatches("test/path")
.build(),
RegistryEventNotificationConfigItemArgs.builder()
.pubsubTopicName(default_telemetry.id())
.subfolderMatches("")
.build())
.stateNotificationConfig(Map.of("pubsub_topic_name", default_devicestatus.id()))
.mqttConfig(Map.of("mqtt_enabled_state", "MQTT_ENABLED"))
.httpConfig(Map.of("http_enabled_state", "HTTP_ENABLED"))
.logLevel("INFO")
.credentials(RegistryCredentialArgs.builder()
.publicKeyCertificate(Map.ofEntries(
Map.entry("format", "X509_CERTIFICATE_PEM"),
Map.entry("certificate", Files.readString(Paths.get("test-fixtures/rsa_cert.pem")))
))
.build())
.build());
}
}

Import

DeviceRegistry can be imported using any of these accepted formats

$ pulumi import gcp:iot/registry:Registry default {{project}}/locations/{{region}}/registries/{{name}}
$ pulumi import gcp:iot/registry:Registry default {{project}}/{{region}}/{{name}}
$ pulumi import gcp:iot/registry:Registry default {{region}}/{{name}}
$ pulumi import gcp:iot/registry:Registry default {{name}}

Constructors

Link copied to clipboard
constructor(credentials: Output<List<RegistryCredentialArgs>>? = null, eventNotificationConfigs: Output<List<RegistryEventNotificationConfigItemArgs>>? = null, httpConfig: Output<Map<String, Any>>? = null, logLevel: Output<String>? = null, mqttConfig: Output<Map<String, Any>>? = null, name: Output<String>? = null, project: Output<String>? = null, region: Output<String>? = null, stateNotificationConfig: Output<Map<String, Any>>? = null)

Properties

Link copied to clipboard

List of public key certificates to authenticate devices. The structure is documented below.

Link copied to clipboard

List of configurations for event notifications, such as PubSub topics to publish device events to. Structure is documented below.

Link copied to clipboard
val httpConfig: Output<Map<String, Any>>? = null

Activate or deactivate HTTP. The structure is documented below.

Link copied to clipboard
val logLevel: Output<String>? = null

The default logging verbosity for activity from devices in this registry. Specifies which events should be written to logs. For example, if the LogLevel is ERROR, only events that terminate in errors will be logged. LogLevel is inclusive; enabling INFO logging will also enable ERROR logging. Default value is NONE. Possible values are: NONE, ERROR, INFO, DEBUG.

Link copied to clipboard
val mqttConfig: Output<Map<String, Any>>? = null

Activate or deactivate MQTT. The structure is documented below.

Link copied to clipboard
val name: Output<String>? = null

A unique name for the resource, required by device registry.

Link copied to clipboard
val project: Output<String>? = null

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

Link copied to clipboard
val region: Output<String>? = null

The region in which the created registry should reside. If it is not provided, the provider region is used.

Link copied to clipboard
val stateNotificationConfig: Output<Map<String, Any>>? = null

A PubSub topic to publish device state updates. The structure is documented below.

Functions

Link copied to clipboard
open override fun toJava(): RegistryArgs