iot

package
v5.26.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Device

type Device struct {
	pulumi.CustomResourceState

	// If a device is blocked, connections or requests from this device will fail.
	Blocked pulumi.BoolPtrOutput `pulumi:"blocked"`
	// The most recent device configuration, which is eventually sent from Cloud IoT Core to the device.
	Configs DeviceConfigArrayOutput `pulumi:"configs"`
	// The credentials used to authenticate this device.
	// Structure is documented below.
	Credentials DeviceCredentialArrayOutput `pulumi:"credentials"`
	// Gateway-related configuration and state.
	// Structure is documented below.
	GatewayConfig DeviceGatewayConfigPtrOutput `pulumi:"gatewayConfig"`
	// The last time a cloud-to-device config version acknowledgment was received from the device.
	LastConfigAckTime pulumi.StringOutput `pulumi:"lastConfigAckTime"`
	// The last time a cloud-to-device config version was sent to the device.
	LastConfigSendTime pulumi.StringOutput `pulumi:"lastConfigSendTime"`
	// The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub.
	LastErrorStatuses DeviceLastErrorStatusArrayOutput `pulumi:"lastErrorStatuses"`
	// The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub.
	LastErrorTime pulumi.StringOutput `pulumi:"lastErrorTime"`
	// The last time a telemetry event was received.
	LastEventTime pulumi.StringOutput `pulumi:"lastEventTime"`
	// The last time an MQTT PINGREQ was received.
	LastHeartbeatTime pulumi.StringOutput `pulumi:"lastHeartbeatTime"`
	// The last time a state event was received.
	LastStateTime pulumi.StringOutput `pulumi:"lastStateTime"`
	// The logging verbosity for device activity.
	// Possible values are `NONE`, `ERROR`, `INFO`, and `DEBUG`.
	LogLevel pulumi.StringPtrOutput `pulumi:"logLevel"`
	// The metadata key-value pairs assigned to the device.
	Metadata pulumi.StringMapOutput `pulumi:"metadata"`
	// A unique name for the resource.
	Name pulumi.StringOutput `pulumi:"name"`
	// A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally
	// unique.
	NumId pulumi.StringOutput `pulumi:"numId"`
	// The name of the device registry where this device should be created.
	Registry pulumi.StringOutput `pulumi:"registry"`
	// The state most recently received from the device.
	States DeviceStateTypeArrayOutput `pulumi:"states"`
}

A Google Cloud IoT Core device.

To get more information about Device, see:

* [API documentation](https://cloud.google.com/iot/docs/reference/cloudiot/rest/) * How-to Guides

## Example Usage ### Cloudiot Device Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/iot"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		registry, err := iot.NewRegistry(ctx, "registry", nil)
		if err != nil {
			return err
		}
		_, err = iot.NewDevice(ctx, "test_device", &iot.DeviceArgs{
			Registry: registry.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Cloudiot Device Full

```go package main

import (

"io/ioutil"

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/iot"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		registry, err := iot.NewRegistry(ctx, "registry", nil)
		if err != nil {
			return err
		}
		_, err = iot.NewDevice(ctx, "test_device", &iot.DeviceArgs{
			Registry: registry.ID(),
			Credentials: iot.DeviceCredentialArray{
				&iot.DeviceCredentialArgs{
					PublicKey: &iot.DeviceCredentialPublicKeyArgs{
						Format: pulumi.String("RSA_PEM"),
						Key:    readFileOrPanic("test-fixtures/rsa_public.pem"),
					},
				},
			},
			Blocked:  pulumi.Bool(false),
			LogLevel: pulumi.String("INFO"),
			Metadata: pulumi.StringMap{
				"test_key_1": pulumi.String("test_value_1"),
			},
			GatewayConfig: &iot.DeviceGatewayConfigArgs{
				GatewayType: pulumi.String("NON_GATEWAY"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Device can be imported using any of these accepted formats

```sh

$ pulumi import gcp:iot/device:Device default {{registry}}/devices/{{name}}

```

func GetDevice

func GetDevice(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DeviceState, opts ...pulumi.ResourceOption) (*Device, error)

GetDevice gets an existing Device resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDevice

func NewDevice(ctx *pulumi.Context,
	name string, args *DeviceArgs, opts ...pulumi.ResourceOption) (*Device, error)

NewDevice registers a new resource with the given unique name, arguments, and options.

func (*Device) ElementType

func (*Device) ElementType() reflect.Type

func (*Device) ToDeviceOutput

func (i *Device) ToDeviceOutput() DeviceOutput

func (*Device) ToDeviceOutputWithContext

func (i *Device) ToDeviceOutputWithContext(ctx context.Context) DeviceOutput

func (*Device) ToDevicePtrOutput

func (i *Device) ToDevicePtrOutput() DevicePtrOutput

func (*Device) ToDevicePtrOutputWithContext

func (i *Device) ToDevicePtrOutputWithContext(ctx context.Context) DevicePtrOutput

type DeviceArgs

type DeviceArgs struct {
	// If a device is blocked, connections or requests from this device will fail.
	Blocked pulumi.BoolPtrInput
	// The credentials used to authenticate this device.
	// Structure is documented below.
	Credentials DeviceCredentialArrayInput
	// Gateway-related configuration and state.
	// Structure is documented below.
	GatewayConfig DeviceGatewayConfigPtrInput
	// The logging verbosity for device activity.
	// Possible values are `NONE`, `ERROR`, `INFO`, and `DEBUG`.
	LogLevel pulumi.StringPtrInput
	// The metadata key-value pairs assigned to the device.
	Metadata pulumi.StringMapInput
	// A unique name for the resource.
	Name pulumi.StringPtrInput
	// The name of the device registry where this device should be created.
	Registry pulumi.StringInput
}

The set of arguments for constructing a Device resource.

func (DeviceArgs) ElementType

func (DeviceArgs) ElementType() reflect.Type

type DeviceArray

type DeviceArray []DeviceInput

func (DeviceArray) ElementType

func (DeviceArray) ElementType() reflect.Type

func (DeviceArray) ToDeviceArrayOutput

func (i DeviceArray) ToDeviceArrayOutput() DeviceArrayOutput

func (DeviceArray) ToDeviceArrayOutputWithContext

func (i DeviceArray) ToDeviceArrayOutputWithContext(ctx context.Context) DeviceArrayOutput

type DeviceArrayInput

type DeviceArrayInput interface {
	pulumi.Input

	ToDeviceArrayOutput() DeviceArrayOutput
	ToDeviceArrayOutputWithContext(context.Context) DeviceArrayOutput
}

DeviceArrayInput is an input type that accepts DeviceArray and DeviceArrayOutput values. You can construct a concrete instance of `DeviceArrayInput` via:

DeviceArray{ DeviceArgs{...} }

type DeviceArrayOutput

type DeviceArrayOutput struct{ *pulumi.OutputState }

func (DeviceArrayOutput) ElementType

func (DeviceArrayOutput) ElementType() reflect.Type

func (DeviceArrayOutput) Index

func (DeviceArrayOutput) ToDeviceArrayOutput

func (o DeviceArrayOutput) ToDeviceArrayOutput() DeviceArrayOutput

func (DeviceArrayOutput) ToDeviceArrayOutputWithContext

func (o DeviceArrayOutput) ToDeviceArrayOutputWithContext(ctx context.Context) DeviceArrayOutput

type DeviceConfig

type DeviceConfig struct {
	BinaryData      *string `pulumi:"binaryData"`
	CloudUpdateTime *string `pulumi:"cloudUpdateTime"`
	DeviceAckTime   *string `pulumi:"deviceAckTime"`
	Version         *string `pulumi:"version"`
}

type DeviceConfigArgs

type DeviceConfigArgs struct {
	BinaryData      pulumi.StringPtrInput `pulumi:"binaryData"`
	CloudUpdateTime pulumi.StringPtrInput `pulumi:"cloudUpdateTime"`
	DeviceAckTime   pulumi.StringPtrInput `pulumi:"deviceAckTime"`
	Version         pulumi.StringPtrInput `pulumi:"version"`
}

func (DeviceConfigArgs) ElementType

func (DeviceConfigArgs) ElementType() reflect.Type

func (DeviceConfigArgs) ToDeviceConfigOutput

func (i DeviceConfigArgs) ToDeviceConfigOutput() DeviceConfigOutput

func (DeviceConfigArgs) ToDeviceConfigOutputWithContext

func (i DeviceConfigArgs) ToDeviceConfigOutputWithContext(ctx context.Context) DeviceConfigOutput

type DeviceConfigArray

type DeviceConfigArray []DeviceConfigInput

func (DeviceConfigArray) ElementType

func (DeviceConfigArray) ElementType() reflect.Type

func (DeviceConfigArray) ToDeviceConfigArrayOutput

func (i DeviceConfigArray) ToDeviceConfigArrayOutput() DeviceConfigArrayOutput

func (DeviceConfigArray) ToDeviceConfigArrayOutputWithContext

func (i DeviceConfigArray) ToDeviceConfigArrayOutputWithContext(ctx context.Context) DeviceConfigArrayOutput

type DeviceConfigArrayInput

type DeviceConfigArrayInput interface {
	pulumi.Input

	ToDeviceConfigArrayOutput() DeviceConfigArrayOutput
	ToDeviceConfigArrayOutputWithContext(context.Context) DeviceConfigArrayOutput
}

DeviceConfigArrayInput is an input type that accepts DeviceConfigArray and DeviceConfigArrayOutput values. You can construct a concrete instance of `DeviceConfigArrayInput` via:

DeviceConfigArray{ DeviceConfigArgs{...} }

type DeviceConfigArrayOutput

type DeviceConfigArrayOutput struct{ *pulumi.OutputState }

func (DeviceConfigArrayOutput) ElementType

func (DeviceConfigArrayOutput) ElementType() reflect.Type

func (DeviceConfigArrayOutput) Index

func (DeviceConfigArrayOutput) ToDeviceConfigArrayOutput

func (o DeviceConfigArrayOutput) ToDeviceConfigArrayOutput() DeviceConfigArrayOutput

func (DeviceConfigArrayOutput) ToDeviceConfigArrayOutputWithContext

func (o DeviceConfigArrayOutput) ToDeviceConfigArrayOutputWithContext(ctx context.Context) DeviceConfigArrayOutput

type DeviceConfigInput

type DeviceConfigInput interface {
	pulumi.Input

	ToDeviceConfigOutput() DeviceConfigOutput
	ToDeviceConfigOutputWithContext(context.Context) DeviceConfigOutput
}

DeviceConfigInput is an input type that accepts DeviceConfigArgs and DeviceConfigOutput values. You can construct a concrete instance of `DeviceConfigInput` via:

DeviceConfigArgs{...}

type DeviceConfigOutput

type DeviceConfigOutput struct{ *pulumi.OutputState }

func (DeviceConfigOutput) BinaryData

func (o DeviceConfigOutput) BinaryData() pulumi.StringPtrOutput

func (DeviceConfigOutput) CloudUpdateTime

func (o DeviceConfigOutput) CloudUpdateTime() pulumi.StringPtrOutput

func (DeviceConfigOutput) DeviceAckTime

func (o DeviceConfigOutput) DeviceAckTime() pulumi.StringPtrOutput

func (DeviceConfigOutput) ElementType

func (DeviceConfigOutput) ElementType() reflect.Type

func (DeviceConfigOutput) ToDeviceConfigOutput

func (o DeviceConfigOutput) ToDeviceConfigOutput() DeviceConfigOutput

func (DeviceConfigOutput) ToDeviceConfigOutputWithContext

func (o DeviceConfigOutput) ToDeviceConfigOutputWithContext(ctx context.Context) DeviceConfigOutput

func (DeviceConfigOutput) Version

type DeviceCredential

type DeviceCredential struct {
	// The time at which this credential becomes invalid.
	ExpirationTime *string `pulumi:"expirationTime"`
	// A public key used to verify the signature of JSON Web Tokens (JWTs).
	// Structure is documented below.
	PublicKey DeviceCredentialPublicKey `pulumi:"publicKey"`
}

type DeviceCredentialArgs

type DeviceCredentialArgs struct {
	// The time at which this credential becomes invalid.
	ExpirationTime pulumi.StringPtrInput `pulumi:"expirationTime"`
	// A public key used to verify the signature of JSON Web Tokens (JWTs).
	// Structure is documented below.
	PublicKey DeviceCredentialPublicKeyInput `pulumi:"publicKey"`
}

func (DeviceCredentialArgs) ElementType

func (DeviceCredentialArgs) ElementType() reflect.Type

func (DeviceCredentialArgs) ToDeviceCredentialOutput

func (i DeviceCredentialArgs) ToDeviceCredentialOutput() DeviceCredentialOutput

func (DeviceCredentialArgs) ToDeviceCredentialOutputWithContext

func (i DeviceCredentialArgs) ToDeviceCredentialOutputWithContext(ctx context.Context) DeviceCredentialOutput

type DeviceCredentialArray

type DeviceCredentialArray []DeviceCredentialInput

func (DeviceCredentialArray) ElementType

func (DeviceCredentialArray) ElementType() reflect.Type

func (DeviceCredentialArray) ToDeviceCredentialArrayOutput

func (i DeviceCredentialArray) ToDeviceCredentialArrayOutput() DeviceCredentialArrayOutput

func (DeviceCredentialArray) ToDeviceCredentialArrayOutputWithContext

func (i DeviceCredentialArray) ToDeviceCredentialArrayOutputWithContext(ctx context.Context) DeviceCredentialArrayOutput

type DeviceCredentialArrayInput

type DeviceCredentialArrayInput interface {
	pulumi.Input

	ToDeviceCredentialArrayOutput() DeviceCredentialArrayOutput
	ToDeviceCredentialArrayOutputWithContext(context.Context) DeviceCredentialArrayOutput
}

DeviceCredentialArrayInput is an input type that accepts DeviceCredentialArray and DeviceCredentialArrayOutput values. You can construct a concrete instance of `DeviceCredentialArrayInput` via:

DeviceCredentialArray{ DeviceCredentialArgs{...} }

type DeviceCredentialArrayOutput

type DeviceCredentialArrayOutput struct{ *pulumi.OutputState }

func (DeviceCredentialArrayOutput) ElementType

func (DeviceCredentialArrayOutput) Index

func (DeviceCredentialArrayOutput) ToDeviceCredentialArrayOutput

func (o DeviceCredentialArrayOutput) ToDeviceCredentialArrayOutput() DeviceCredentialArrayOutput

func (DeviceCredentialArrayOutput) ToDeviceCredentialArrayOutputWithContext

func (o DeviceCredentialArrayOutput) ToDeviceCredentialArrayOutputWithContext(ctx context.Context) DeviceCredentialArrayOutput

type DeviceCredentialInput

type DeviceCredentialInput interface {
	pulumi.Input

	ToDeviceCredentialOutput() DeviceCredentialOutput
	ToDeviceCredentialOutputWithContext(context.Context) DeviceCredentialOutput
}

DeviceCredentialInput is an input type that accepts DeviceCredentialArgs and DeviceCredentialOutput values. You can construct a concrete instance of `DeviceCredentialInput` via:

DeviceCredentialArgs{...}

type DeviceCredentialOutput

type DeviceCredentialOutput struct{ *pulumi.OutputState }

func (DeviceCredentialOutput) ElementType

func (DeviceCredentialOutput) ElementType() reflect.Type

func (DeviceCredentialOutput) ExpirationTime

func (o DeviceCredentialOutput) ExpirationTime() pulumi.StringPtrOutput

The time at which this credential becomes invalid.

func (DeviceCredentialOutput) PublicKey

A public key used to verify the signature of JSON Web Tokens (JWTs). Structure is documented below.

func (DeviceCredentialOutput) ToDeviceCredentialOutput

func (o DeviceCredentialOutput) ToDeviceCredentialOutput() DeviceCredentialOutput

func (DeviceCredentialOutput) ToDeviceCredentialOutputWithContext

func (o DeviceCredentialOutput) ToDeviceCredentialOutputWithContext(ctx context.Context) DeviceCredentialOutput

type DeviceCredentialPublicKey

type DeviceCredentialPublicKey struct {
	// The format of the key.
	// Possible values are `RSA_PEM`, `RSA_X509_PEM`, `ES256_PEM`, and `ES256_X509_PEM`.
	Format string `pulumi:"format"`
	// The key data.
	Key string `pulumi:"key"`
}

type DeviceCredentialPublicKeyArgs

type DeviceCredentialPublicKeyArgs struct {
	// The format of the key.
	// Possible values are `RSA_PEM`, `RSA_X509_PEM`, `ES256_PEM`, and `ES256_X509_PEM`.
	Format pulumi.StringInput `pulumi:"format"`
	// The key data.
	Key pulumi.StringInput `pulumi:"key"`
}

func (DeviceCredentialPublicKeyArgs) ElementType

func (DeviceCredentialPublicKeyArgs) ToDeviceCredentialPublicKeyOutput

func (i DeviceCredentialPublicKeyArgs) ToDeviceCredentialPublicKeyOutput() DeviceCredentialPublicKeyOutput

func (DeviceCredentialPublicKeyArgs) ToDeviceCredentialPublicKeyOutputWithContext

func (i DeviceCredentialPublicKeyArgs) ToDeviceCredentialPublicKeyOutputWithContext(ctx context.Context) DeviceCredentialPublicKeyOutput

type DeviceCredentialPublicKeyInput

type DeviceCredentialPublicKeyInput interface {
	pulumi.Input

	ToDeviceCredentialPublicKeyOutput() DeviceCredentialPublicKeyOutput
	ToDeviceCredentialPublicKeyOutputWithContext(context.Context) DeviceCredentialPublicKeyOutput
}

DeviceCredentialPublicKeyInput is an input type that accepts DeviceCredentialPublicKeyArgs and DeviceCredentialPublicKeyOutput values. You can construct a concrete instance of `DeviceCredentialPublicKeyInput` via:

DeviceCredentialPublicKeyArgs{...}

type DeviceCredentialPublicKeyOutput

type DeviceCredentialPublicKeyOutput struct{ *pulumi.OutputState }

func (DeviceCredentialPublicKeyOutput) ElementType

func (DeviceCredentialPublicKeyOutput) Format

The format of the key. Possible values are `RSA_PEM`, `RSA_X509_PEM`, `ES256_PEM`, and `ES256_X509_PEM`.

func (DeviceCredentialPublicKeyOutput) Key

The key data.

func (DeviceCredentialPublicKeyOutput) ToDeviceCredentialPublicKeyOutput

func (o DeviceCredentialPublicKeyOutput) ToDeviceCredentialPublicKeyOutput() DeviceCredentialPublicKeyOutput

func (DeviceCredentialPublicKeyOutput) ToDeviceCredentialPublicKeyOutputWithContext

func (o DeviceCredentialPublicKeyOutput) ToDeviceCredentialPublicKeyOutputWithContext(ctx context.Context) DeviceCredentialPublicKeyOutput

type DeviceGatewayConfig

type DeviceGatewayConfig struct {
	// Indicates whether the device is a gateway.
	// Possible values are `ASSOCIATION_ONLY`, `DEVICE_AUTH_TOKEN_ONLY`, and `ASSOCIATION_AND_DEVICE_AUTH_TOKEN`.
	GatewayAuthMethod *string `pulumi:"gatewayAuthMethod"`
	// Indicates whether the device is a gateway.
	// Default value is `NON_GATEWAY`.
	// Possible values are `GATEWAY` and `NON_GATEWAY`.
	GatewayType *string `pulumi:"gatewayType"`
	// -
	// The ID of the gateway the device accessed most recently.
	LastAccessedGatewayId *string `pulumi:"lastAccessedGatewayId"`
	// -
	// The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
	LastAccessedGatewayTime *string `pulumi:"lastAccessedGatewayTime"`
}

type DeviceGatewayConfigArgs

type DeviceGatewayConfigArgs struct {
	// Indicates whether the device is a gateway.
	// Possible values are `ASSOCIATION_ONLY`, `DEVICE_AUTH_TOKEN_ONLY`, and `ASSOCIATION_AND_DEVICE_AUTH_TOKEN`.
	GatewayAuthMethod pulumi.StringPtrInput `pulumi:"gatewayAuthMethod"`
	// Indicates whether the device is a gateway.
	// Default value is `NON_GATEWAY`.
	// Possible values are `GATEWAY` and `NON_GATEWAY`.
	GatewayType pulumi.StringPtrInput `pulumi:"gatewayType"`
	// -
	// The ID of the gateway the device accessed most recently.
	LastAccessedGatewayId pulumi.StringPtrInput `pulumi:"lastAccessedGatewayId"`
	// -
	// The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
	LastAccessedGatewayTime pulumi.StringPtrInput `pulumi:"lastAccessedGatewayTime"`
}

func (DeviceGatewayConfigArgs) ElementType

func (DeviceGatewayConfigArgs) ElementType() reflect.Type

func (DeviceGatewayConfigArgs) ToDeviceGatewayConfigOutput

func (i DeviceGatewayConfigArgs) ToDeviceGatewayConfigOutput() DeviceGatewayConfigOutput

func (DeviceGatewayConfigArgs) ToDeviceGatewayConfigOutputWithContext

func (i DeviceGatewayConfigArgs) ToDeviceGatewayConfigOutputWithContext(ctx context.Context) DeviceGatewayConfigOutput

func (DeviceGatewayConfigArgs) ToDeviceGatewayConfigPtrOutput

func (i DeviceGatewayConfigArgs) ToDeviceGatewayConfigPtrOutput() DeviceGatewayConfigPtrOutput

func (DeviceGatewayConfigArgs) ToDeviceGatewayConfigPtrOutputWithContext

func (i DeviceGatewayConfigArgs) ToDeviceGatewayConfigPtrOutputWithContext(ctx context.Context) DeviceGatewayConfigPtrOutput

type DeviceGatewayConfigInput

type DeviceGatewayConfigInput interface {
	pulumi.Input

	ToDeviceGatewayConfigOutput() DeviceGatewayConfigOutput
	ToDeviceGatewayConfigOutputWithContext(context.Context) DeviceGatewayConfigOutput
}

DeviceGatewayConfigInput is an input type that accepts DeviceGatewayConfigArgs and DeviceGatewayConfigOutput values. You can construct a concrete instance of `DeviceGatewayConfigInput` via:

DeviceGatewayConfigArgs{...}

type DeviceGatewayConfigOutput

type DeviceGatewayConfigOutput struct{ *pulumi.OutputState }

func (DeviceGatewayConfigOutput) ElementType

func (DeviceGatewayConfigOutput) ElementType() reflect.Type

func (DeviceGatewayConfigOutput) GatewayAuthMethod

func (o DeviceGatewayConfigOutput) GatewayAuthMethod() pulumi.StringPtrOutput

Indicates whether the device is a gateway. Possible values are `ASSOCIATION_ONLY`, `DEVICE_AUTH_TOKEN_ONLY`, and `ASSOCIATION_AND_DEVICE_AUTH_TOKEN`.

func (DeviceGatewayConfigOutput) GatewayType

Indicates whether the device is a gateway. Default value is `NON_GATEWAY`. Possible values are `GATEWAY` and `NON_GATEWAY`.

func (DeviceGatewayConfigOutput) LastAccessedGatewayId

func (o DeviceGatewayConfigOutput) LastAccessedGatewayId() pulumi.StringPtrOutput

- The ID of the gateway the device accessed most recently.

func (DeviceGatewayConfigOutput) LastAccessedGatewayTime

func (o DeviceGatewayConfigOutput) LastAccessedGatewayTime() pulumi.StringPtrOutput

- The most recent time at which the device accessed the gateway specified in last_accessed_gateway.

func (DeviceGatewayConfigOutput) ToDeviceGatewayConfigOutput

func (o DeviceGatewayConfigOutput) ToDeviceGatewayConfigOutput() DeviceGatewayConfigOutput

func (DeviceGatewayConfigOutput) ToDeviceGatewayConfigOutputWithContext

func (o DeviceGatewayConfigOutput) ToDeviceGatewayConfigOutputWithContext(ctx context.Context) DeviceGatewayConfigOutput

func (DeviceGatewayConfigOutput) ToDeviceGatewayConfigPtrOutput

func (o DeviceGatewayConfigOutput) ToDeviceGatewayConfigPtrOutput() DeviceGatewayConfigPtrOutput

func (DeviceGatewayConfigOutput) ToDeviceGatewayConfigPtrOutputWithContext

func (o DeviceGatewayConfigOutput) ToDeviceGatewayConfigPtrOutputWithContext(ctx context.Context) DeviceGatewayConfigPtrOutput

type DeviceGatewayConfigPtrInput

type DeviceGatewayConfigPtrInput interface {
	pulumi.Input

	ToDeviceGatewayConfigPtrOutput() DeviceGatewayConfigPtrOutput
	ToDeviceGatewayConfigPtrOutputWithContext(context.Context) DeviceGatewayConfigPtrOutput
}

DeviceGatewayConfigPtrInput is an input type that accepts DeviceGatewayConfigArgs, DeviceGatewayConfigPtr and DeviceGatewayConfigPtrOutput values. You can construct a concrete instance of `DeviceGatewayConfigPtrInput` via:

        DeviceGatewayConfigArgs{...}

or:

        nil

type DeviceGatewayConfigPtrOutput

type DeviceGatewayConfigPtrOutput struct{ *pulumi.OutputState }

func (DeviceGatewayConfigPtrOutput) Elem

func (DeviceGatewayConfigPtrOutput) ElementType

func (DeviceGatewayConfigPtrOutput) GatewayAuthMethod

func (o DeviceGatewayConfigPtrOutput) GatewayAuthMethod() pulumi.StringPtrOutput

Indicates whether the device is a gateway. Possible values are `ASSOCIATION_ONLY`, `DEVICE_AUTH_TOKEN_ONLY`, and `ASSOCIATION_AND_DEVICE_AUTH_TOKEN`.

func (DeviceGatewayConfigPtrOutput) GatewayType

Indicates whether the device is a gateway. Default value is `NON_GATEWAY`. Possible values are `GATEWAY` and `NON_GATEWAY`.

func (DeviceGatewayConfigPtrOutput) LastAccessedGatewayId

func (o DeviceGatewayConfigPtrOutput) LastAccessedGatewayId() pulumi.StringPtrOutput

- The ID of the gateway the device accessed most recently.

func (DeviceGatewayConfigPtrOutput) LastAccessedGatewayTime

func (o DeviceGatewayConfigPtrOutput) LastAccessedGatewayTime() pulumi.StringPtrOutput

- The most recent time at which the device accessed the gateway specified in last_accessed_gateway.

func (DeviceGatewayConfigPtrOutput) ToDeviceGatewayConfigPtrOutput

func (o DeviceGatewayConfigPtrOutput) ToDeviceGatewayConfigPtrOutput() DeviceGatewayConfigPtrOutput

func (DeviceGatewayConfigPtrOutput) ToDeviceGatewayConfigPtrOutputWithContext

func (o DeviceGatewayConfigPtrOutput) ToDeviceGatewayConfigPtrOutputWithContext(ctx context.Context) DeviceGatewayConfigPtrOutput

type DeviceInput

type DeviceInput interface {
	pulumi.Input

	ToDeviceOutput() DeviceOutput
	ToDeviceOutputWithContext(ctx context.Context) DeviceOutput
}

type DeviceLastErrorStatus

type DeviceLastErrorStatus struct {
	Details []map[string]interface{} `pulumi:"details"`
	Message *string                  `pulumi:"message"`
	Number  *int                     `pulumi:"number"`
}

type DeviceLastErrorStatusArgs

type DeviceLastErrorStatusArgs struct {
	Details pulumi.MapArrayInput  `pulumi:"details"`
	Message pulumi.StringPtrInput `pulumi:"message"`
	Number  pulumi.IntPtrInput    `pulumi:"number"`
}

func (DeviceLastErrorStatusArgs) ElementType

func (DeviceLastErrorStatusArgs) ElementType() reflect.Type

func (DeviceLastErrorStatusArgs) ToDeviceLastErrorStatusOutput

func (i DeviceLastErrorStatusArgs) ToDeviceLastErrorStatusOutput() DeviceLastErrorStatusOutput

func (DeviceLastErrorStatusArgs) ToDeviceLastErrorStatusOutputWithContext

func (i DeviceLastErrorStatusArgs) ToDeviceLastErrorStatusOutputWithContext(ctx context.Context) DeviceLastErrorStatusOutput

type DeviceLastErrorStatusArray

type DeviceLastErrorStatusArray []DeviceLastErrorStatusInput

func (DeviceLastErrorStatusArray) ElementType

func (DeviceLastErrorStatusArray) ElementType() reflect.Type

func (DeviceLastErrorStatusArray) ToDeviceLastErrorStatusArrayOutput

func (i DeviceLastErrorStatusArray) ToDeviceLastErrorStatusArrayOutput() DeviceLastErrorStatusArrayOutput

func (DeviceLastErrorStatusArray) ToDeviceLastErrorStatusArrayOutputWithContext

func (i DeviceLastErrorStatusArray) ToDeviceLastErrorStatusArrayOutputWithContext(ctx context.Context) DeviceLastErrorStatusArrayOutput

type DeviceLastErrorStatusArrayInput

type DeviceLastErrorStatusArrayInput interface {
	pulumi.Input

	ToDeviceLastErrorStatusArrayOutput() DeviceLastErrorStatusArrayOutput
	ToDeviceLastErrorStatusArrayOutputWithContext(context.Context) DeviceLastErrorStatusArrayOutput
}

DeviceLastErrorStatusArrayInput is an input type that accepts DeviceLastErrorStatusArray and DeviceLastErrorStatusArrayOutput values. You can construct a concrete instance of `DeviceLastErrorStatusArrayInput` via:

DeviceLastErrorStatusArray{ DeviceLastErrorStatusArgs{...} }

type DeviceLastErrorStatusArrayOutput

type DeviceLastErrorStatusArrayOutput struct{ *pulumi.OutputState }

func (DeviceLastErrorStatusArrayOutput) ElementType

func (DeviceLastErrorStatusArrayOutput) Index

func (DeviceLastErrorStatusArrayOutput) ToDeviceLastErrorStatusArrayOutput

func (o DeviceLastErrorStatusArrayOutput) ToDeviceLastErrorStatusArrayOutput() DeviceLastErrorStatusArrayOutput

func (DeviceLastErrorStatusArrayOutput) ToDeviceLastErrorStatusArrayOutputWithContext

func (o DeviceLastErrorStatusArrayOutput) ToDeviceLastErrorStatusArrayOutputWithContext(ctx context.Context) DeviceLastErrorStatusArrayOutput

type DeviceLastErrorStatusInput

type DeviceLastErrorStatusInput interface {
	pulumi.Input

	ToDeviceLastErrorStatusOutput() DeviceLastErrorStatusOutput
	ToDeviceLastErrorStatusOutputWithContext(context.Context) DeviceLastErrorStatusOutput
}

DeviceLastErrorStatusInput is an input type that accepts DeviceLastErrorStatusArgs and DeviceLastErrorStatusOutput values. You can construct a concrete instance of `DeviceLastErrorStatusInput` via:

DeviceLastErrorStatusArgs{...}

type DeviceLastErrorStatusOutput

type DeviceLastErrorStatusOutput struct{ *pulumi.OutputState }

func (DeviceLastErrorStatusOutput) Details

func (DeviceLastErrorStatusOutput) ElementType

func (DeviceLastErrorStatusOutput) Message

func (DeviceLastErrorStatusOutput) Number

func (DeviceLastErrorStatusOutput) ToDeviceLastErrorStatusOutput

func (o DeviceLastErrorStatusOutput) ToDeviceLastErrorStatusOutput() DeviceLastErrorStatusOutput

func (DeviceLastErrorStatusOutput) ToDeviceLastErrorStatusOutputWithContext

func (o DeviceLastErrorStatusOutput) ToDeviceLastErrorStatusOutputWithContext(ctx context.Context) DeviceLastErrorStatusOutput

type DeviceMap

type DeviceMap map[string]DeviceInput

func (DeviceMap) ElementType

func (DeviceMap) ElementType() reflect.Type

func (DeviceMap) ToDeviceMapOutput

func (i DeviceMap) ToDeviceMapOutput() DeviceMapOutput

func (DeviceMap) ToDeviceMapOutputWithContext

func (i DeviceMap) ToDeviceMapOutputWithContext(ctx context.Context) DeviceMapOutput

type DeviceMapInput

type DeviceMapInput interface {
	pulumi.Input

	ToDeviceMapOutput() DeviceMapOutput
	ToDeviceMapOutputWithContext(context.Context) DeviceMapOutput
}

DeviceMapInput is an input type that accepts DeviceMap and DeviceMapOutput values. You can construct a concrete instance of `DeviceMapInput` via:

DeviceMap{ "key": DeviceArgs{...} }

type DeviceMapOutput

type DeviceMapOutput struct{ *pulumi.OutputState }

func (DeviceMapOutput) ElementType

func (DeviceMapOutput) ElementType() reflect.Type

func (DeviceMapOutput) MapIndex

func (DeviceMapOutput) ToDeviceMapOutput

func (o DeviceMapOutput) ToDeviceMapOutput() DeviceMapOutput

func (DeviceMapOutput) ToDeviceMapOutputWithContext

func (o DeviceMapOutput) ToDeviceMapOutputWithContext(ctx context.Context) DeviceMapOutput

type DeviceOutput

type DeviceOutput struct{ *pulumi.OutputState }

func (DeviceOutput) ElementType

func (DeviceOutput) ElementType() reflect.Type

func (DeviceOutput) ToDeviceOutput

func (o DeviceOutput) ToDeviceOutput() DeviceOutput

func (DeviceOutput) ToDeviceOutputWithContext

func (o DeviceOutput) ToDeviceOutputWithContext(ctx context.Context) DeviceOutput

func (DeviceOutput) ToDevicePtrOutput

func (o DeviceOutput) ToDevicePtrOutput() DevicePtrOutput

func (DeviceOutput) ToDevicePtrOutputWithContext

func (o DeviceOutput) ToDevicePtrOutputWithContext(ctx context.Context) DevicePtrOutput

type DevicePtrInput

type DevicePtrInput interface {
	pulumi.Input

	ToDevicePtrOutput() DevicePtrOutput
	ToDevicePtrOutputWithContext(ctx context.Context) DevicePtrOutput
}

type DevicePtrOutput

type DevicePtrOutput struct{ *pulumi.OutputState }

func (DevicePtrOutput) Elem added in v5.21.0

func (o DevicePtrOutput) Elem() DeviceOutput

func (DevicePtrOutput) ElementType

func (DevicePtrOutput) ElementType() reflect.Type

func (DevicePtrOutput) ToDevicePtrOutput

func (o DevicePtrOutput) ToDevicePtrOutput() DevicePtrOutput

func (DevicePtrOutput) ToDevicePtrOutputWithContext

func (o DevicePtrOutput) ToDevicePtrOutputWithContext(ctx context.Context) DevicePtrOutput

type DeviceState

type DeviceState struct {
	// If a device is blocked, connections or requests from this device will fail.
	Blocked pulumi.BoolPtrInput
	// The most recent device configuration, which is eventually sent from Cloud IoT Core to the device.
	Configs DeviceConfigArrayInput
	// The credentials used to authenticate this device.
	// Structure is documented below.
	Credentials DeviceCredentialArrayInput
	// Gateway-related configuration and state.
	// Structure is documented below.
	GatewayConfig DeviceGatewayConfigPtrInput
	// The last time a cloud-to-device config version acknowledgment was received from the device.
	LastConfigAckTime pulumi.StringPtrInput
	// The last time a cloud-to-device config version was sent to the device.
	LastConfigSendTime pulumi.StringPtrInput
	// The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub.
	LastErrorStatuses DeviceLastErrorStatusArrayInput
	// The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub.
	LastErrorTime pulumi.StringPtrInput
	// The last time a telemetry event was received.
	LastEventTime pulumi.StringPtrInput
	// The last time an MQTT PINGREQ was received.
	LastHeartbeatTime pulumi.StringPtrInput
	// The last time a state event was received.
	LastStateTime pulumi.StringPtrInput
	// The logging verbosity for device activity.
	// Possible values are `NONE`, `ERROR`, `INFO`, and `DEBUG`.
	LogLevel pulumi.StringPtrInput
	// The metadata key-value pairs assigned to the device.
	Metadata pulumi.StringMapInput
	// A unique name for the resource.
	Name pulumi.StringPtrInput
	// A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally
	// unique.
	NumId pulumi.StringPtrInput
	// The name of the device registry where this device should be created.
	Registry pulumi.StringPtrInput
	// The state most recently received from the device.
	States DeviceStateTypeArrayInput
}

func (DeviceState) ElementType

func (DeviceState) ElementType() reflect.Type

type DeviceStateType

type DeviceStateType struct {
	BinaryData *string `pulumi:"binaryData"`
	UpdateTime *string `pulumi:"updateTime"`
}

type DeviceStateTypeArgs

type DeviceStateTypeArgs struct {
	BinaryData pulumi.StringPtrInput `pulumi:"binaryData"`
	UpdateTime pulumi.StringPtrInput `pulumi:"updateTime"`
}

func (DeviceStateTypeArgs) ElementType

func (DeviceStateTypeArgs) ElementType() reflect.Type

func (DeviceStateTypeArgs) ToDeviceStateTypeOutput

func (i DeviceStateTypeArgs) ToDeviceStateTypeOutput() DeviceStateTypeOutput

func (DeviceStateTypeArgs) ToDeviceStateTypeOutputWithContext

func (i DeviceStateTypeArgs) ToDeviceStateTypeOutputWithContext(ctx context.Context) DeviceStateTypeOutput

type DeviceStateTypeArray

type DeviceStateTypeArray []DeviceStateTypeInput

func (DeviceStateTypeArray) ElementType

func (DeviceStateTypeArray) ElementType() reflect.Type

func (DeviceStateTypeArray) ToDeviceStateTypeArrayOutput

func (i DeviceStateTypeArray) ToDeviceStateTypeArrayOutput() DeviceStateTypeArrayOutput

func (DeviceStateTypeArray) ToDeviceStateTypeArrayOutputWithContext

func (i DeviceStateTypeArray) ToDeviceStateTypeArrayOutputWithContext(ctx context.Context) DeviceStateTypeArrayOutput

type DeviceStateTypeArrayInput

type DeviceStateTypeArrayInput interface {
	pulumi.Input

	ToDeviceStateTypeArrayOutput() DeviceStateTypeArrayOutput
	ToDeviceStateTypeArrayOutputWithContext(context.Context) DeviceStateTypeArrayOutput
}

DeviceStateTypeArrayInput is an input type that accepts DeviceStateTypeArray and DeviceStateTypeArrayOutput values. You can construct a concrete instance of `DeviceStateTypeArrayInput` via:

DeviceStateTypeArray{ DeviceStateTypeArgs{...} }

type DeviceStateTypeArrayOutput

type DeviceStateTypeArrayOutput struct{ *pulumi.OutputState }

func (DeviceStateTypeArrayOutput) ElementType

func (DeviceStateTypeArrayOutput) ElementType() reflect.Type

func (DeviceStateTypeArrayOutput) Index

func (DeviceStateTypeArrayOutput) ToDeviceStateTypeArrayOutput

func (o DeviceStateTypeArrayOutput) ToDeviceStateTypeArrayOutput() DeviceStateTypeArrayOutput

func (DeviceStateTypeArrayOutput) ToDeviceStateTypeArrayOutputWithContext

func (o DeviceStateTypeArrayOutput) ToDeviceStateTypeArrayOutputWithContext(ctx context.Context) DeviceStateTypeArrayOutput

type DeviceStateTypeInput

type DeviceStateTypeInput interface {
	pulumi.Input

	ToDeviceStateTypeOutput() DeviceStateTypeOutput
	ToDeviceStateTypeOutputWithContext(context.Context) DeviceStateTypeOutput
}

DeviceStateTypeInput is an input type that accepts DeviceStateTypeArgs and DeviceStateTypeOutput values. You can construct a concrete instance of `DeviceStateTypeInput` via:

DeviceStateTypeArgs{...}

type DeviceStateTypeOutput

type DeviceStateTypeOutput struct{ *pulumi.OutputState }

func (DeviceStateTypeOutput) BinaryData

func (DeviceStateTypeOutput) ElementType

func (DeviceStateTypeOutput) ElementType() reflect.Type

func (DeviceStateTypeOutput) ToDeviceStateTypeOutput

func (o DeviceStateTypeOutput) ToDeviceStateTypeOutput() DeviceStateTypeOutput

func (DeviceStateTypeOutput) ToDeviceStateTypeOutputWithContext

func (o DeviceStateTypeOutput) ToDeviceStateTypeOutputWithContext(ctx context.Context) DeviceStateTypeOutput

func (DeviceStateTypeOutput) UpdateTime

type Registry

type Registry struct {
	pulumi.CustomResourceState

	// List of public key certificates to authenticate devices.
	// The structure is documented below.
	Credentials RegistryCredentialArrayOutput `pulumi:"credentials"`
	// List of configurations for event notifications, such as PubSub topics
	// to publish device events to.
	// Structure is documented below.
	EventNotificationConfigs RegistryEventNotificationConfigItemArrayOutput `pulumi:"eventNotificationConfigs"`
	// Activate or deactivate HTTP.
	// The structure is documented below.
	HttpConfig pulumi.MapOutput `pulumi:"httpConfig"`
	// 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`, and `DEBUG`.
	LogLevel pulumi.StringPtrOutput `pulumi:"logLevel"`
	// Activate or deactivate MQTT.
	// The structure is documented below.
	MqttConfig pulumi.MapOutput `pulumi:"mqttConfig"`
	// A unique name for the resource, required by device registry.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The region in which the created registry should reside.
	// If it is not provided, the provider region is used.
	Region pulumi.StringOutput `pulumi:"region"`
	// A PubSub topic to publish device state updates.
	// The structure is documented below.
	StateNotificationConfig pulumi.MapOutput `pulumi:"stateNotificationConfig"`
}

A Google Cloud IoT Core device registry.

To get more information about DeviceRegistry, see:

* [API documentation](https://cloud.google.com/iot/docs/reference/cloudiot/rest/) * How-to Guides

## Example Usage ### Cloudiot Device Registry Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/iot"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := iot.NewRegistry(ctx, "test_registry", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Cloudiot Device Registry Single Event Notification Configs

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/iot"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := pubsub.NewTopic(ctx, "default_telemetry", nil)
		if err != nil {
			return err
		}
		_, err = iot.NewRegistry(ctx, "test_registry", &iot.RegistryArgs{
			EventNotificationConfigs: iot.RegistryEventNotificationConfigItemArray{
				&iot.RegistryEventNotificationConfigItemArgs{
					PubsubTopicName:  default_telemetry.ID(),
					SubfolderMatches: pulumi.String(""),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Cloudiot Device Registry Full

```go package main

import (

"io/ioutil"

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/iot"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := pubsub.NewTopic(ctx, "default_devicestatus", nil)
		if err != nil {
			return err
		}
		_, err = pubsub.NewTopic(ctx, "default_telemetry", nil)
		if err != nil {
			return err
		}
		_, err = pubsub.NewTopic(ctx, "additional_telemetry", nil)
		if err != nil {
			return err
		}
		_, err = iot.NewRegistry(ctx, "test_registry", &iot.RegistryArgs{
			EventNotificationConfigs: iot.RegistryEventNotificationConfigItemArray{
				&iot.RegistryEventNotificationConfigItemArgs{
					PubsubTopicName:  additional_telemetry.ID(),
					SubfolderMatches: pulumi.String("test/path"),
				},
				&iot.RegistryEventNotificationConfigItemArgs{
					PubsubTopicName:  default_telemetry.ID(),
					SubfolderMatches: pulumi.String(""),
				},
			},
			StateNotificationConfig: pulumi.AnyMap{
				"pubsub_topic_name": default_devicestatus.ID(),
			},
			MqttConfig: pulumi.AnyMap{
				"mqtt_enabled_state": pulumi.Any("MQTT_ENABLED"),
			},
			HttpConfig: pulumi.AnyMap{
				"http_enabled_state": pulumi.Any("HTTP_ENABLED"),
			},
			LogLevel: pulumi.String("INFO"),
			Credentials: iot.RegistryCredentialArray{
				&iot.RegistryCredentialArgs{
					PublicKeyCertificate: pulumi.AnyMap{
						"format":      pulumi.Any("X509_CERTIFICATE_PEM"),
						"certificate": readFileOrPanic("test-fixtures/rsa_cert.pem"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DeviceRegistry can be imported using any of these accepted formats

```sh

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

```

```sh

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

```

```sh

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

```

```sh

$ pulumi import gcp:iot/registry:Registry default {{name}}

```

func GetRegistry

func GetRegistry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RegistryState, opts ...pulumi.ResourceOption) (*Registry, error)

GetRegistry gets an existing Registry resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRegistry

func NewRegistry(ctx *pulumi.Context,
	name string, args *RegistryArgs, opts ...pulumi.ResourceOption) (*Registry, error)

NewRegistry registers a new resource with the given unique name, arguments, and options.

func (*Registry) ElementType

func (*Registry) ElementType() reflect.Type

func (*Registry) ToRegistryOutput

func (i *Registry) ToRegistryOutput() RegistryOutput

func (*Registry) ToRegistryOutputWithContext

func (i *Registry) ToRegistryOutputWithContext(ctx context.Context) RegistryOutput

func (*Registry) ToRegistryPtrOutput

func (i *Registry) ToRegistryPtrOutput() RegistryPtrOutput

func (*Registry) ToRegistryPtrOutputWithContext

func (i *Registry) ToRegistryPtrOutputWithContext(ctx context.Context) RegistryPtrOutput

type RegistryArgs

type RegistryArgs struct {
	// List of public key certificates to authenticate devices.
	// The structure is documented below.
	Credentials RegistryCredentialArrayInput
	// List of configurations for event notifications, such as PubSub topics
	// to publish device events to.
	// Structure is documented below.
	EventNotificationConfigs RegistryEventNotificationConfigItemArrayInput
	// Activate or deactivate HTTP.
	// The structure is documented below.
	HttpConfig pulumi.MapInput
	// 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`, and `DEBUG`.
	LogLevel pulumi.StringPtrInput
	// Activate or deactivate MQTT.
	// The structure is documented below.
	MqttConfig pulumi.MapInput
	// A unique name for the resource, required by device registry.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The region in which the created registry should reside.
	// If it is not provided, the provider region is used.
	Region pulumi.StringPtrInput
	// A PubSub topic to publish device state updates.
	// The structure is documented below.
	StateNotificationConfig pulumi.MapInput
}

The set of arguments for constructing a Registry resource.

func (RegistryArgs) ElementType

func (RegistryArgs) ElementType() reflect.Type

type RegistryArray

type RegistryArray []RegistryInput

func (RegistryArray) ElementType

func (RegistryArray) ElementType() reflect.Type

func (RegistryArray) ToRegistryArrayOutput

func (i RegistryArray) ToRegistryArrayOutput() RegistryArrayOutput

func (RegistryArray) ToRegistryArrayOutputWithContext

func (i RegistryArray) ToRegistryArrayOutputWithContext(ctx context.Context) RegistryArrayOutput

type RegistryArrayInput

type RegistryArrayInput interface {
	pulumi.Input

	ToRegistryArrayOutput() RegistryArrayOutput
	ToRegistryArrayOutputWithContext(context.Context) RegistryArrayOutput
}

RegistryArrayInput is an input type that accepts RegistryArray and RegistryArrayOutput values. You can construct a concrete instance of `RegistryArrayInput` via:

RegistryArray{ RegistryArgs{...} }

type RegistryArrayOutput

type RegistryArrayOutput struct{ *pulumi.OutputState }

func (RegistryArrayOutput) ElementType

func (RegistryArrayOutput) ElementType() reflect.Type

func (RegistryArrayOutput) Index

func (RegistryArrayOutput) ToRegistryArrayOutput

func (o RegistryArrayOutput) ToRegistryArrayOutput() RegistryArrayOutput

func (RegistryArrayOutput) ToRegistryArrayOutputWithContext

func (o RegistryArrayOutput) ToRegistryArrayOutputWithContext(ctx context.Context) RegistryArrayOutput

type RegistryCredential

type RegistryCredential struct {
	// A public key certificate format and data.
	PublicKeyCertificate map[string]interface{} `pulumi:"publicKeyCertificate"`
}

type RegistryCredentialArgs

type RegistryCredentialArgs struct {
	// A public key certificate format and data.
	PublicKeyCertificate pulumi.MapInput `pulumi:"publicKeyCertificate"`
}

func (RegistryCredentialArgs) ElementType

func (RegistryCredentialArgs) ElementType() reflect.Type

func (RegistryCredentialArgs) ToRegistryCredentialOutput

func (i RegistryCredentialArgs) ToRegistryCredentialOutput() RegistryCredentialOutput

func (RegistryCredentialArgs) ToRegistryCredentialOutputWithContext

func (i RegistryCredentialArgs) ToRegistryCredentialOutputWithContext(ctx context.Context) RegistryCredentialOutput

type RegistryCredentialArray

type RegistryCredentialArray []RegistryCredentialInput

func (RegistryCredentialArray) ElementType

func (RegistryCredentialArray) ElementType() reflect.Type

func (RegistryCredentialArray) ToRegistryCredentialArrayOutput

func (i RegistryCredentialArray) ToRegistryCredentialArrayOutput() RegistryCredentialArrayOutput

func (RegistryCredentialArray) ToRegistryCredentialArrayOutputWithContext

func (i RegistryCredentialArray) ToRegistryCredentialArrayOutputWithContext(ctx context.Context) RegistryCredentialArrayOutput

type RegistryCredentialArrayInput

type RegistryCredentialArrayInput interface {
	pulumi.Input

	ToRegistryCredentialArrayOutput() RegistryCredentialArrayOutput
	ToRegistryCredentialArrayOutputWithContext(context.Context) RegistryCredentialArrayOutput
}

RegistryCredentialArrayInput is an input type that accepts RegistryCredentialArray and RegistryCredentialArrayOutput values. You can construct a concrete instance of `RegistryCredentialArrayInput` via:

RegistryCredentialArray{ RegistryCredentialArgs{...} }

type RegistryCredentialArrayOutput

type RegistryCredentialArrayOutput struct{ *pulumi.OutputState }

func (RegistryCredentialArrayOutput) ElementType

func (RegistryCredentialArrayOutput) Index

func (RegistryCredentialArrayOutput) ToRegistryCredentialArrayOutput

func (o RegistryCredentialArrayOutput) ToRegistryCredentialArrayOutput() RegistryCredentialArrayOutput

func (RegistryCredentialArrayOutput) ToRegistryCredentialArrayOutputWithContext

func (o RegistryCredentialArrayOutput) ToRegistryCredentialArrayOutputWithContext(ctx context.Context) RegistryCredentialArrayOutput

type RegistryCredentialInput

type RegistryCredentialInput interface {
	pulumi.Input

	ToRegistryCredentialOutput() RegistryCredentialOutput
	ToRegistryCredentialOutputWithContext(context.Context) RegistryCredentialOutput
}

RegistryCredentialInput is an input type that accepts RegistryCredentialArgs and RegistryCredentialOutput values. You can construct a concrete instance of `RegistryCredentialInput` via:

RegistryCredentialArgs{...}

type RegistryCredentialOutput

type RegistryCredentialOutput struct{ *pulumi.OutputState }

func (RegistryCredentialOutput) ElementType

func (RegistryCredentialOutput) ElementType() reflect.Type

func (RegistryCredentialOutput) PublicKeyCertificate

func (o RegistryCredentialOutput) PublicKeyCertificate() pulumi.MapOutput

A public key certificate format and data.

func (RegistryCredentialOutput) ToRegistryCredentialOutput

func (o RegistryCredentialOutput) ToRegistryCredentialOutput() RegistryCredentialOutput

func (RegistryCredentialOutput) ToRegistryCredentialOutputWithContext

func (o RegistryCredentialOutput) ToRegistryCredentialOutputWithContext(ctx context.Context) RegistryCredentialOutput

type RegistryEventNotificationConfigItem

type RegistryEventNotificationConfigItem struct {
	// PubSub topic name to publish device events.
	PubsubTopicName string `pulumi:"pubsubTopicName"`
	// If the subfolder name matches this string exactly, this
	// configuration will be used. The string must not include the
	// leading '/' character. If empty, all strings are matched. Empty
	// value can only be used for the last `eventNotificationConfigs`
	// item.
	SubfolderMatches *string `pulumi:"subfolderMatches"`
}

type RegistryEventNotificationConfigItemArgs

type RegistryEventNotificationConfigItemArgs struct {
	// PubSub topic name to publish device events.
	PubsubTopicName pulumi.StringInput `pulumi:"pubsubTopicName"`
	// If the subfolder name matches this string exactly, this
	// configuration will be used. The string must not include the
	// leading '/' character. If empty, all strings are matched. Empty
	// value can only be used for the last `eventNotificationConfigs`
	// item.
	SubfolderMatches pulumi.StringPtrInput `pulumi:"subfolderMatches"`
}

func (RegistryEventNotificationConfigItemArgs) ElementType

func (RegistryEventNotificationConfigItemArgs) ToRegistryEventNotificationConfigItemOutput

func (i RegistryEventNotificationConfigItemArgs) ToRegistryEventNotificationConfigItemOutput() RegistryEventNotificationConfigItemOutput

func (RegistryEventNotificationConfigItemArgs) ToRegistryEventNotificationConfigItemOutputWithContext

func (i RegistryEventNotificationConfigItemArgs) ToRegistryEventNotificationConfigItemOutputWithContext(ctx context.Context) RegistryEventNotificationConfigItemOutput

type RegistryEventNotificationConfigItemArray

type RegistryEventNotificationConfigItemArray []RegistryEventNotificationConfigItemInput

func (RegistryEventNotificationConfigItemArray) ElementType

func (RegistryEventNotificationConfigItemArray) ToRegistryEventNotificationConfigItemArrayOutput

func (i RegistryEventNotificationConfigItemArray) ToRegistryEventNotificationConfigItemArrayOutput() RegistryEventNotificationConfigItemArrayOutput

func (RegistryEventNotificationConfigItemArray) ToRegistryEventNotificationConfigItemArrayOutputWithContext

func (i RegistryEventNotificationConfigItemArray) ToRegistryEventNotificationConfigItemArrayOutputWithContext(ctx context.Context) RegistryEventNotificationConfigItemArrayOutput

type RegistryEventNotificationConfigItemArrayInput

type RegistryEventNotificationConfigItemArrayInput interface {
	pulumi.Input

	ToRegistryEventNotificationConfigItemArrayOutput() RegistryEventNotificationConfigItemArrayOutput
	ToRegistryEventNotificationConfigItemArrayOutputWithContext(context.Context) RegistryEventNotificationConfigItemArrayOutput
}

RegistryEventNotificationConfigItemArrayInput is an input type that accepts RegistryEventNotificationConfigItemArray and RegistryEventNotificationConfigItemArrayOutput values. You can construct a concrete instance of `RegistryEventNotificationConfigItemArrayInput` via:

RegistryEventNotificationConfigItemArray{ RegistryEventNotificationConfigItemArgs{...} }

type RegistryEventNotificationConfigItemArrayOutput

type RegistryEventNotificationConfigItemArrayOutput struct{ *pulumi.OutputState }

func (RegistryEventNotificationConfigItemArrayOutput) ElementType

func (RegistryEventNotificationConfigItemArrayOutput) Index

func (RegistryEventNotificationConfigItemArrayOutput) ToRegistryEventNotificationConfigItemArrayOutput

func (o RegistryEventNotificationConfigItemArrayOutput) ToRegistryEventNotificationConfigItemArrayOutput() RegistryEventNotificationConfigItemArrayOutput

func (RegistryEventNotificationConfigItemArrayOutput) ToRegistryEventNotificationConfigItemArrayOutputWithContext

func (o RegistryEventNotificationConfigItemArrayOutput) ToRegistryEventNotificationConfigItemArrayOutputWithContext(ctx context.Context) RegistryEventNotificationConfigItemArrayOutput

type RegistryEventNotificationConfigItemInput

type RegistryEventNotificationConfigItemInput interface {
	pulumi.Input

	ToRegistryEventNotificationConfigItemOutput() RegistryEventNotificationConfigItemOutput
	ToRegistryEventNotificationConfigItemOutputWithContext(context.Context) RegistryEventNotificationConfigItemOutput
}

RegistryEventNotificationConfigItemInput is an input type that accepts RegistryEventNotificationConfigItemArgs and RegistryEventNotificationConfigItemOutput values. You can construct a concrete instance of `RegistryEventNotificationConfigItemInput` via:

RegistryEventNotificationConfigItemArgs{...}

type RegistryEventNotificationConfigItemOutput

type RegistryEventNotificationConfigItemOutput struct{ *pulumi.OutputState }

func (RegistryEventNotificationConfigItemOutput) ElementType

func (RegistryEventNotificationConfigItemOutput) PubsubTopicName

PubSub topic name to publish device events.

func (RegistryEventNotificationConfigItemOutput) SubfolderMatches

If the subfolder name matches this string exactly, this configuration will be used. The string must not include the leading '/' character. If empty, all strings are matched. Empty value can only be used for the last `eventNotificationConfigs` item.

func (RegistryEventNotificationConfigItemOutput) ToRegistryEventNotificationConfigItemOutput

func (o RegistryEventNotificationConfigItemOutput) ToRegistryEventNotificationConfigItemOutput() RegistryEventNotificationConfigItemOutput

func (RegistryEventNotificationConfigItemOutput) ToRegistryEventNotificationConfigItemOutputWithContext

func (o RegistryEventNotificationConfigItemOutput) ToRegistryEventNotificationConfigItemOutputWithContext(ctx context.Context) RegistryEventNotificationConfigItemOutput

type RegistryInput

type RegistryInput interface {
	pulumi.Input

	ToRegistryOutput() RegistryOutput
	ToRegistryOutputWithContext(ctx context.Context) RegistryOutput
}

type RegistryMap

type RegistryMap map[string]RegistryInput

func (RegistryMap) ElementType

func (RegistryMap) ElementType() reflect.Type

func (RegistryMap) ToRegistryMapOutput

func (i RegistryMap) ToRegistryMapOutput() RegistryMapOutput

func (RegistryMap) ToRegistryMapOutputWithContext

func (i RegistryMap) ToRegistryMapOutputWithContext(ctx context.Context) RegistryMapOutput

type RegistryMapInput

type RegistryMapInput interface {
	pulumi.Input

	ToRegistryMapOutput() RegistryMapOutput
	ToRegistryMapOutputWithContext(context.Context) RegistryMapOutput
}

RegistryMapInput is an input type that accepts RegistryMap and RegistryMapOutput values. You can construct a concrete instance of `RegistryMapInput` via:

RegistryMap{ "key": RegistryArgs{...} }

type RegistryMapOutput

type RegistryMapOutput struct{ *pulumi.OutputState }

func (RegistryMapOutput) ElementType

func (RegistryMapOutput) ElementType() reflect.Type

func (RegistryMapOutput) MapIndex

func (RegistryMapOutput) ToRegistryMapOutput

func (o RegistryMapOutput) ToRegistryMapOutput() RegistryMapOutput

func (RegistryMapOutput) ToRegistryMapOutputWithContext

func (o RegistryMapOutput) ToRegistryMapOutputWithContext(ctx context.Context) RegistryMapOutput

type RegistryOutput

type RegistryOutput struct{ *pulumi.OutputState }

func (RegistryOutput) ElementType

func (RegistryOutput) ElementType() reflect.Type

func (RegistryOutput) ToRegistryOutput

func (o RegistryOutput) ToRegistryOutput() RegistryOutput

func (RegistryOutput) ToRegistryOutputWithContext

func (o RegistryOutput) ToRegistryOutputWithContext(ctx context.Context) RegistryOutput

func (RegistryOutput) ToRegistryPtrOutput

func (o RegistryOutput) ToRegistryPtrOutput() RegistryPtrOutput

func (RegistryOutput) ToRegistryPtrOutputWithContext

func (o RegistryOutput) ToRegistryPtrOutputWithContext(ctx context.Context) RegistryPtrOutput

type RegistryPtrInput

type RegistryPtrInput interface {
	pulumi.Input

	ToRegistryPtrOutput() RegistryPtrOutput
	ToRegistryPtrOutputWithContext(ctx context.Context) RegistryPtrOutput
}

type RegistryPtrOutput

type RegistryPtrOutput struct{ *pulumi.OutputState }

func (RegistryPtrOutput) Elem added in v5.21.0

func (RegistryPtrOutput) ElementType

func (RegistryPtrOutput) ElementType() reflect.Type

func (RegistryPtrOutput) ToRegistryPtrOutput

func (o RegistryPtrOutput) ToRegistryPtrOutput() RegistryPtrOutput

func (RegistryPtrOutput) ToRegistryPtrOutputWithContext

func (o RegistryPtrOutput) ToRegistryPtrOutputWithContext(ctx context.Context) RegistryPtrOutput

type RegistryState

type RegistryState struct {
	// List of public key certificates to authenticate devices.
	// The structure is documented below.
	Credentials RegistryCredentialArrayInput
	// List of configurations for event notifications, such as PubSub topics
	// to publish device events to.
	// Structure is documented below.
	EventNotificationConfigs RegistryEventNotificationConfigItemArrayInput
	// Activate or deactivate HTTP.
	// The structure is documented below.
	HttpConfig pulumi.MapInput
	// 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`, and `DEBUG`.
	LogLevel pulumi.StringPtrInput
	// Activate or deactivate MQTT.
	// The structure is documented below.
	MqttConfig pulumi.MapInput
	// A unique name for the resource, required by device registry.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The region in which the created registry should reside.
	// If it is not provided, the provider region is used.
	Region pulumi.StringPtrInput
	// A PubSub topic to publish device state updates.
	// The structure is documented below.
	StateNotificationConfig pulumi.MapInput
}

func (RegistryState) ElementType

func (RegistryState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL