Registry
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:
How-to Guides
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}}
Properties
List of public key certificates to authenticate devices. The structure is documented below.
List of configurations for event notifications, such as PubSub topics to publish device events to. Structure is documented below.
Activate or deactivate HTTP. The structure is documented below.
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
.
Activate or deactivate MQTT. The structure is documented below.
A PubSub topic to publish device state updates. The structure is documented below.