1. Packages
  2. AWS Native
  3. API Docs
  4. iotcoredeviceadvisor
  5. SuiteDefinition

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.102.0 published on Tuesday, Apr 16, 2024 by Pulumi

aws-native.iotcoredeviceadvisor.SuiteDefinition

Explore with Pulumi AI

aws-native logo

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.102.0 published on Tuesday, Apr 16, 2024 by Pulumi

    An example resource schema demonstrating some basic constructs and validation rules.

    Example Usage

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var testSuiteDefinition = new AwsNative.IoTCoreDeviceAdvisor.SuiteDefinition("testSuiteDefinition", new()
        {
            SuiteDefinitionConfiguration = new AwsNative.IoTCoreDeviceAdvisor.Inputs.SuiteDefinitionConfigurationPropertiesArgs
            {
                SuiteDefinitionName = "SuiteDefinitionName",
                DevicePermissionRoleArn = "arn:aws:iam::123456789012:role/RoleName",
                Devices = new[]
                {
                    new AwsNative.IoTCoreDeviceAdvisor.Inputs.SuiteDefinitionDeviceUnderTestArgs
                    {
                        ThingArn = "arn:aws:iot:us-east-1:123456789012:thing/ThingName",
                    },
                },
                RootGroup = @"{
    ""configuration"": {},
    ""tests"": [{
    ""name"": ""TestGroup"",
    ""configuration"": {
    ""EXECUTION_TIMEOUT"": ""30""
    },
    ""tests"": [{
    ""name"": ""MQTTPublishTest"",
    ""configuration"": {
    ""TOPIC_FOR_PUBLISH_VALIDATION"": ""target""
    },
    ""test"": {
    ""id"": ""MQTT_Publish"",
    ""version"": ""0.0.0""
    }
    }]
    }]
    }",
                IntendedForQualification = false,
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iotcoredeviceadvisor"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := iotcoredeviceadvisor.NewSuiteDefinition(ctx, "testSuiteDefinition", &iotcoredeviceadvisor.SuiteDefinitionArgs{
    			SuiteDefinitionConfiguration: &iotcoredeviceadvisor.SuiteDefinitionConfigurationPropertiesArgs{
    				SuiteDefinitionName:     pulumi.String("SuiteDefinitionName"),
    				DevicePermissionRoleArn: pulumi.String("arn:aws:iam::123456789012:role/RoleName"),
    				Devices: iotcoredeviceadvisor.SuiteDefinitionDeviceUnderTestArray{
    					&iotcoredeviceadvisor.SuiteDefinitionDeviceUnderTestArgs{
    						ThingArn: pulumi.String("arn:aws:iot:us-east-1:123456789012:thing/ThingName"),
    					},
    				},
    				RootGroup: pulumi.String(`{
    "configuration": {},
    "tests": [{
    "name": "TestGroup",
    "configuration": {
    "EXECUTION_TIMEOUT": "30"
    },
    "tests": [{
    "name": "MQTTPublishTest",
    "configuration": {
    "TOPIC_FOR_PUBLISH_VALIDATION": "target"
    },
    "test": {
    "id": "MQTT_Publish",
    "version": "0.0.0"
    }
    }]
    }]
    }`),
    				IntendedForQualification: pulumi.Bool(false),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_aws_native as aws_native
    
    test_suite_definition = aws_native.iotcoredeviceadvisor.SuiteDefinition("testSuiteDefinition", suite_definition_configuration=aws_native.iotcoredeviceadvisor.SuiteDefinitionConfigurationPropertiesArgs(
        suite_definition_name="SuiteDefinitionName",
        device_permission_role_arn="arn:aws:iam::123456789012:role/RoleName",
        devices=[aws_native.iotcoredeviceadvisor.SuiteDefinitionDeviceUnderTestArgs(
            thing_arn="arn:aws:iot:us-east-1:123456789012:thing/ThingName",
        )],
        root_group="""{
    "configuration": {},
    "tests": [{
    "name": "TestGroup",
    "configuration": {
    "EXECUTION_TIMEOUT": "30"
    },
    "tests": [{
    "name": "MQTTPublishTest",
    "configuration": {
    "TOPIC_FOR_PUBLISH_VALIDATION": "target"
    },
    "test": {
    "id": "MQTT_Publish",
    "version": "0.0.0"
    }
    }]
    }]
    }""",
        intended_for_qualification=False,
    ))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const testSuiteDefinition = new aws_native.iotcoredeviceadvisor.SuiteDefinition("testSuiteDefinition", {suiteDefinitionConfiguration: {
        suiteDefinitionName: "SuiteDefinitionName",
        devicePermissionRoleArn: "arn:aws:iam::123456789012:role/RoleName",
        devices: [{
            thingArn: "arn:aws:iot:us-east-1:123456789012:thing/ThingName",
        }],
        rootGroup: `{
    "configuration": {},
    "tests": [{
    "name": "TestGroup",
    "configuration": {
    "EXECUTION_TIMEOUT": "30"
    },
    "tests": [{
    "name": "MQTTPublishTest",
    "configuration": {
    "TOPIC_FOR_PUBLISH_VALIDATION": "target"
    },
    "test": {
    "id": "MQTT_Publish",
    "version": "0.0.0"
    }
    }]
    }]
    }`,
        intendedForQualification: false,
    }});
    

    Coming soon!

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var testSuiteDefinition = new AwsNative.IoTCoreDeviceAdvisor.SuiteDefinition("testSuiteDefinition", new()
        {
            SuiteDefinitionConfiguration = new AwsNative.IoTCoreDeviceAdvisor.Inputs.SuiteDefinitionConfigurationPropertiesArgs
            {
                SuiteDefinitionName = "SuiteDefinitionName",
                DevicePermissionRoleArn = "arn:aws:iam::123456789012:role/RoleName",
                Devices = new[]
                {
                    new AwsNative.IoTCoreDeviceAdvisor.Inputs.SuiteDefinitionDeviceUnderTestArgs
                    {
                        ThingArn = "arn:aws:iot:us-east-1:123456789012:thing/ThingName",
                    },
                },
                RootGroup = "{ \"configuration\": {}, \"tests\": [{ \"name\": \"TestGroup\", \"configuration\": { \"EXECUTION_TIMEOUT\": \"30\" }, \"tests\": [{ \"name\": \"MQTTPublishTest\", \"configuration\": { \"TOPIC_FOR_PUBLISH_VALIDATION\": \"target\" }, \"test\": { \"id\": \"MQTT_Publish\", \"version\": \"0.0.0\" } }] }] }",
                IntendedForQualification = false,
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iotcoredeviceadvisor"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := iotcoredeviceadvisor.NewSuiteDefinition(ctx, "testSuiteDefinition", &iotcoredeviceadvisor.SuiteDefinitionArgs{
    			SuiteDefinitionConfiguration: &iotcoredeviceadvisor.SuiteDefinitionConfigurationPropertiesArgs{
    				SuiteDefinitionName:     pulumi.String("SuiteDefinitionName"),
    				DevicePermissionRoleArn: pulumi.String("arn:aws:iam::123456789012:role/RoleName"),
    				Devices: iotcoredeviceadvisor.SuiteDefinitionDeviceUnderTestArray{
    					&iotcoredeviceadvisor.SuiteDefinitionDeviceUnderTestArgs{
    						ThingArn: pulumi.String("arn:aws:iot:us-east-1:123456789012:thing/ThingName"),
    					},
    				},
    				RootGroup:                pulumi.String("{ \"configuration\": {}, \"tests\": [{ \"name\": \"TestGroup\", \"configuration\": { \"EXECUTION_TIMEOUT\": \"30\" }, \"tests\": [{ \"name\": \"MQTTPublishTest\", \"configuration\": { \"TOPIC_FOR_PUBLISH_VALIDATION\": \"target\" }, \"test\": { \"id\": \"MQTT_Publish\", \"version\": \"0.0.0\" } }] }] }"),
    				IntendedForQualification: pulumi.Bool(false),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_aws_native as aws_native
    
    test_suite_definition = aws_native.iotcoredeviceadvisor.SuiteDefinition("testSuiteDefinition", suite_definition_configuration=aws_native.iotcoredeviceadvisor.SuiteDefinitionConfigurationPropertiesArgs(
        suite_definition_name="SuiteDefinitionName",
        device_permission_role_arn="arn:aws:iam::123456789012:role/RoleName",
        devices=[aws_native.iotcoredeviceadvisor.SuiteDefinitionDeviceUnderTestArgs(
            thing_arn="arn:aws:iot:us-east-1:123456789012:thing/ThingName",
        )],
        root_group="{ \"configuration\": {}, \"tests\": [{ \"name\": \"TestGroup\", \"configuration\": { \"EXECUTION_TIMEOUT\": \"30\" }, \"tests\": [{ \"name\": \"MQTTPublishTest\", \"configuration\": { \"TOPIC_FOR_PUBLISH_VALIDATION\": \"target\" }, \"test\": { \"id\": \"MQTT_Publish\", \"version\": \"0.0.0\" } }] }] }",
        intended_for_qualification=False,
    ))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const testSuiteDefinition = new aws_native.iotcoredeviceadvisor.SuiteDefinition("testSuiteDefinition", {suiteDefinitionConfiguration: {
        suiteDefinitionName: "SuiteDefinitionName",
        devicePermissionRoleArn: "arn:aws:iam::123456789012:role/RoleName",
        devices: [{
            thingArn: "arn:aws:iot:us-east-1:123456789012:thing/ThingName",
        }],
        rootGroup: "{ \"configuration\": {}, \"tests\": [{ \"name\": \"TestGroup\", \"configuration\": { \"EXECUTION_TIMEOUT\": \"30\" }, \"tests\": [{ \"name\": \"MQTTPublishTest\", \"configuration\": { \"TOPIC_FOR_PUBLISH_VALIDATION\": \"target\" }, \"test\": { \"id\": \"MQTT_Publish\", \"version\": \"0.0.0\" } }] }] }",
        intendedForQualification: false,
    }});
    

    Coming soon!

    Create SuiteDefinition Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new SuiteDefinition(name: string, args: SuiteDefinitionArgs, opts?: CustomResourceOptions);
    @overload
    def SuiteDefinition(resource_name: str,
                        args: SuiteDefinitionArgs,
                        opts: Optional[ResourceOptions] = None)
    
    @overload
    def SuiteDefinition(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        suite_definition_configuration: Optional[SuiteDefinitionConfigurationPropertiesArgs] = None,
                        tags: Optional[Sequence[_root_inputs.TagArgs]] = None)
    func NewSuiteDefinition(ctx *Context, name string, args SuiteDefinitionArgs, opts ...ResourceOption) (*SuiteDefinition, error)
    public SuiteDefinition(string name, SuiteDefinitionArgs args, CustomResourceOptions? opts = null)
    public SuiteDefinition(String name, SuiteDefinitionArgs args)
    public SuiteDefinition(String name, SuiteDefinitionArgs args, CustomResourceOptions options)
    
    type: aws-native:iotcoredeviceadvisor:SuiteDefinition
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args SuiteDefinitionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args SuiteDefinitionArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args SuiteDefinitionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SuiteDefinitionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args SuiteDefinitionArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    const suiteDefinitionResource = new aws_native.iotcoredeviceadvisor.SuiteDefinition("suiteDefinitionResource", {
        suiteDefinitionConfiguration: {
            devicePermissionRoleArn: "string",
            rootGroup: "string",
            devices: [{
                certificateArn: "string",
                thingArn: "string",
            }],
            intendedForQualification: false,
            suiteDefinitionName: "string",
        },
        tags: [{
            key: "string",
            value: "string",
        }],
    });
    
    Coming soon!
    

    SuiteDefinition Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The SuiteDefinition resource accepts the following input properties:

    SuiteDefinitionConfiguration SuiteDefinitionConfigurationPropertiesArgs
    Tags TagArgs
    An array of key-value pairs to apply to this resource.
    suiteDefinitionConfiguration SuiteDefinitionConfigurationProperties
    tags List<Tag>
    An array of key-value pairs to apply to this resource.
    suiteDefinitionConfiguration SuiteDefinitionConfigurationProperties
    tags Tag[]
    An array of key-value pairs to apply to this resource.
    suiteDefinitionConfiguration Property Map
    tags List<Property Map>
    An array of key-value pairs to apply to this resource.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the SuiteDefinition resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    SuiteDefinitionArn string
    The Amazon Resource name for the suite definition.
    SuiteDefinitionId string
    The unique identifier for the suite definition.
    SuiteDefinitionVersion string
    The suite definition version of a test suite.
    Id string
    The provider-assigned unique ID for this managed resource.
    SuiteDefinitionArn string
    The Amazon Resource name for the suite definition.
    SuiteDefinitionId string
    The unique identifier for the suite definition.
    SuiteDefinitionVersion string
    The suite definition version of a test suite.
    id String
    The provider-assigned unique ID for this managed resource.
    suiteDefinitionArn String
    The Amazon Resource name for the suite definition.
    suiteDefinitionId String
    The unique identifier for the suite definition.
    suiteDefinitionVersion String
    The suite definition version of a test suite.
    id string
    The provider-assigned unique ID for this managed resource.
    suiteDefinitionArn string
    The Amazon Resource name for the suite definition.
    suiteDefinitionId string
    The unique identifier for the suite definition.
    suiteDefinitionVersion string
    The suite definition version of a test suite.
    id str
    The provider-assigned unique ID for this managed resource.
    suite_definition_arn str
    The Amazon Resource name for the suite definition.
    suite_definition_id str
    The unique identifier for the suite definition.
    suite_definition_version str
    The suite definition version of a test suite.
    id String
    The provider-assigned unique ID for this managed resource.
    suiteDefinitionArn String
    The Amazon Resource name for the suite definition.
    suiteDefinitionId String
    The unique identifier for the suite definition.
    suiteDefinitionVersion String
    The suite definition version of a test suite.

    Supporting Types

    SuiteDefinitionConfigurationProperties, SuiteDefinitionConfigurationPropertiesArgs

    SuiteDefinitionDeviceUnderTest, SuiteDefinitionDeviceUnderTestArgs

    Tag, TagArgs

    Key string
    The key name of the tag
    Value string
    The value of the tag
    Key string
    The key name of the tag
    Value string
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag
    key string
    The key name of the tag
    value string
    The value of the tag
    key str
    The key name of the tag
    value str
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    AWS Native is in preview. AWS Classic is fully supported.

    AWS Native v0.102.0 published on Tuesday, Apr 16, 2024 by Pulumi