AWS Native is in preview. AWS Classic is fully supported.
aws-native.iotcoredeviceadvisor.SuiteDefinition
Explore with Pulumi AI
AWS Native is in preview. AWS Classic is fully supported.
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.
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:
- Suite
Definition Pulumi.Configuration Aws Native. Io TCore Device Advisor. Inputs. Suite Definition Configuration Properties The configuration of the Suite Definition. Listed below are the required elements of the
SuiteDefinitionConfiguration
.- devicePermissionRoleArn - The device permission arn.
This is a required element.
Type: String
- devices - The list of configured devices under test. For more information on devices under test, see DeviceUnderTest
Not a required element.
Type: List of devices under test
- intendedForQualification - The tests intended for qualification in a suite.
Not a required element.
Type: Boolean
- rootGroup - The test suite root group. For more information on creating and using root groups see the Device Advisor workflow .
This is a required element.
Type: String
- suiteDefinitionName - The Suite Definition Configuration name.
This is a required element.
Type: String
- List<Pulumi.
Aws Native. Inputs. Tag> - An array of key-value pairs to apply to this resource.
- Suite
Definition SuiteConfiguration Definition Configuration Properties Args The configuration of the Suite Definition. Listed below are the required elements of the
SuiteDefinitionConfiguration
.- devicePermissionRoleArn - The device permission arn.
This is a required element.
Type: String
- devices - The list of configured devices under test. For more information on devices under test, see DeviceUnderTest
Not a required element.
Type: List of devices under test
- intendedForQualification - The tests intended for qualification in a suite.
Not a required element.
Type: Boolean
- rootGroup - The test suite root group. For more information on creating and using root groups see the Device Advisor workflow .
This is a required element.
Type: String
- suiteDefinitionName - The Suite Definition Configuration name.
This is a required element.
Type: String
- Tag
Args - An array of key-value pairs to apply to this resource.
- suite
Definition SuiteConfiguration Definition Configuration Properties The configuration of the Suite Definition. Listed below are the required elements of the
SuiteDefinitionConfiguration
.- devicePermissionRoleArn - The device permission arn.
This is a required element.
Type: String
- devices - The list of configured devices under test. For more information on devices under test, see DeviceUnderTest
Not a required element.
Type: List of devices under test
- intendedForQualification - The tests intended for qualification in a suite.
Not a required element.
Type: Boolean
- rootGroup - The test suite root group. For more information on creating and using root groups see the Device Advisor workflow .
This is a required element.
Type: String
- suiteDefinitionName - The Suite Definition Configuration name.
This is a required element.
Type: String
- List<Tag>
- An array of key-value pairs to apply to this resource.
- suite
Definition SuiteConfiguration Definition Configuration Properties The configuration of the Suite Definition. Listed below are the required elements of the
SuiteDefinitionConfiguration
.- devicePermissionRoleArn - The device permission arn.
This is a required element.
Type: String
- devices - The list of configured devices under test. For more information on devices under test, see DeviceUnderTest
Not a required element.
Type: List of devices under test
- intendedForQualification - The tests intended for qualification in a suite.
Not a required element.
Type: Boolean
- rootGroup - The test suite root group. For more information on creating and using root groups see the Device Advisor workflow .
This is a required element.
Type: String
- suiteDefinitionName - The Suite Definition Configuration name.
This is a required element.
Type: String
- Tag[]
- An array of key-value pairs to apply to this resource.
- suite_
definition_ Suiteconfiguration Definition Configuration Properties Args The configuration of the Suite Definition. Listed below are the required elements of the
SuiteDefinitionConfiguration
.- devicePermissionRoleArn - The device permission arn.
This is a required element.
Type: String
- devices - The list of configured devices under test. For more information on devices under test, see DeviceUnderTest
Not a required element.
Type: List of devices under test
- intendedForQualification - The tests intended for qualification in a suite.
Not a required element.
Type: Boolean
- rootGroup - The test suite root group. For more information on creating and using root groups see the Device Advisor workflow .
This is a required element.
Type: String
- suiteDefinitionName - The Suite Definition Configuration name.
This is a required element.
Type: String
- Sequence[Tag
Args] - An array of key-value pairs to apply to this resource.
- suite
Definition Property MapConfiguration The configuration of the Suite Definition. Listed below are the required elements of the
SuiteDefinitionConfiguration
.- devicePermissionRoleArn - The device permission arn.
This is a required element.
Type: String
- devices - The list of configured devices under test. For more information on devices under test, see DeviceUnderTest
Not a required element.
Type: List of devices under test
- intendedForQualification - The tests intended for qualification in a suite.
Not a required element.
Type: Boolean
- rootGroup - The test suite root group. For more information on creating and using root groups see the Device Advisor workflow .
This is a required element.
Type: String
- suiteDefinitionName - The Suite Definition Configuration name.
This is a required element.
Type: String
- 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.
- Suite
Definition stringArn - The Amazon Resource name for the suite definition.
- Suite
Definition stringId - The unique identifier for the suite definition.
- Suite
Definition stringVersion - The suite definition version of a test suite.
- Id string
- The provider-assigned unique ID for this managed resource.
- Suite
Definition stringArn - The Amazon Resource name for the suite definition.
- Suite
Definition stringId - The unique identifier for the suite definition.
- Suite
Definition stringVersion - The suite definition version of a test suite.
- id String
- The provider-assigned unique ID for this managed resource.
- suite
Definition StringArn - The Amazon Resource name for the suite definition.
- suite
Definition StringId - The unique identifier for the suite definition.
- suite
Definition StringVersion - The suite definition version of a test suite.
- id string
- The provider-assigned unique ID for this managed resource.
- suite
Definition stringArn - The Amazon Resource name for the suite definition.
- suite
Definition stringId - The unique identifier for the suite definition.
- suite
Definition stringVersion - The suite definition version of a test suite.
- id str
- The provider-assigned unique ID for this managed resource.
- suite_
definition_ strarn - The Amazon Resource name for the suite definition.
- suite_
definition_ strid - The unique identifier for the suite definition.
- suite_
definition_ strversion - The suite definition version of a test suite.
- id String
- The provider-assigned unique ID for this managed resource.
- suite
Definition StringArn - The Amazon Resource name for the suite definition.
- suite
Definition StringId - The unique identifier for the suite definition.
- suite
Definition StringVersion - The suite definition version of a test suite.
Supporting Types
SuiteDefinitionConfigurationProperties, SuiteDefinitionConfigurationPropertiesArgs
- Device
Permission stringRole Arn - Gets the device permission ARN. This is a required parameter.
- Root
Group string Gets the test suite root group. This is a required parameter. For updating or creating the latest qualification suite, if
intendedForQualification
is set to true,rootGroup
can be an empty string. IfintendedForQualification
is false,rootGroup
cannot be an empty string. IfrootGroup
is empty, andintendedForQualification
is set to true, all the qualification tests are included, and the configuration is default.For a qualification suite, the minimum length is 0, and the maximum is 2048. For a non-qualification suite, the minimum length is 1, and the maximum is 2048.
- Devices
List<Pulumi.
Aws Native. Io TCore Device Advisor. Inputs. Suite Definition Device Under Test> - Gets the devices configured.
- Intended
For boolQualification - Gets the tests intended for qualification in a suite.
- Suite
Definition stringName - Gets the suite definition name. This is a required parameter.
- Device
Permission stringRole Arn - Gets the device permission ARN. This is a required parameter.
- Root
Group string Gets the test suite root group. This is a required parameter. For updating or creating the latest qualification suite, if
intendedForQualification
is set to true,rootGroup
can be an empty string. IfintendedForQualification
is false,rootGroup
cannot be an empty string. IfrootGroup
is empty, andintendedForQualification
is set to true, all the qualification tests are included, and the configuration is default.For a qualification suite, the minimum length is 0, and the maximum is 2048. For a non-qualification suite, the minimum length is 1, and the maximum is 2048.
- Devices
[]Suite
Definition Device Under Test - Gets the devices configured.
- Intended
For boolQualification - Gets the tests intended for qualification in a suite.
- Suite
Definition stringName - Gets the suite definition name. This is a required parameter.
- device
Permission StringRole Arn - Gets the device permission ARN. This is a required parameter.
- root
Group String Gets the test suite root group. This is a required parameter. For updating or creating the latest qualification suite, if
intendedForQualification
is set to true,rootGroup
can be an empty string. IfintendedForQualification
is false,rootGroup
cannot be an empty string. IfrootGroup
is empty, andintendedForQualification
is set to true, all the qualification tests are included, and the configuration is default.For a qualification suite, the minimum length is 0, and the maximum is 2048. For a non-qualification suite, the minimum length is 1, and the maximum is 2048.
- devices
List<Suite
Definition Device Under Test> - Gets the devices configured.
- intended
For BooleanQualification - Gets the tests intended for qualification in a suite.
- suite
Definition StringName - Gets the suite definition name. This is a required parameter.
- device
Permission stringRole Arn - Gets the device permission ARN. This is a required parameter.
- root
Group string Gets the test suite root group. This is a required parameter. For updating or creating the latest qualification suite, if
intendedForQualification
is set to true,rootGroup
can be an empty string. IfintendedForQualification
is false,rootGroup
cannot be an empty string. IfrootGroup
is empty, andintendedForQualification
is set to true, all the qualification tests are included, and the configuration is default.For a qualification suite, the minimum length is 0, and the maximum is 2048. For a non-qualification suite, the minimum length is 1, and the maximum is 2048.
- devices
Suite
Definition Device Under Test[] - Gets the devices configured.
- intended
For booleanQualification - Gets the tests intended for qualification in a suite.
- suite
Definition stringName - Gets the suite definition name. This is a required parameter.
- device_
permission_ strrole_ arn - Gets the device permission ARN. This is a required parameter.
- root_
group str Gets the test suite root group. This is a required parameter. For updating or creating the latest qualification suite, if
intendedForQualification
is set to true,rootGroup
can be an empty string. IfintendedForQualification
is false,rootGroup
cannot be an empty string. IfrootGroup
is empty, andintendedForQualification
is set to true, all the qualification tests are included, and the configuration is default.For a qualification suite, the minimum length is 0, and the maximum is 2048. For a non-qualification suite, the minimum length is 1, and the maximum is 2048.
- devices
Sequence[Suite
Definition Device Under Test] - Gets the devices configured.
- intended_
for_ boolqualification - Gets the tests intended for qualification in a suite.
- suite_
definition_ strname - Gets the suite definition name. This is a required parameter.
- device
Permission StringRole Arn - Gets the device permission ARN. This is a required parameter.
- root
Group String Gets the test suite root group. This is a required parameter. For updating or creating the latest qualification suite, if
intendedForQualification
is set to true,rootGroup
can be an empty string. IfintendedForQualification
is false,rootGroup
cannot be an empty string. IfrootGroup
is empty, andintendedForQualification
is set to true, all the qualification tests are included, and the configuration is default.For a qualification suite, the minimum length is 0, and the maximum is 2048. For a non-qualification suite, the minimum length is 1, and the maximum is 2048.
- devices List<Property Map>
- Gets the devices configured.
- intended
For BooleanQualification - Gets the tests intended for qualification in a suite.
- suite
Definition StringName - Gets the suite definition name. This is a required parameter.
SuiteDefinitionDeviceUnderTest, SuiteDefinitionDeviceUnderTestArgs
- Certificate
Arn string - Thing
Arn string
- Certificate
Arn string - Thing
Arn string
- certificate
Arn String - thing
Arn String
- certificate
Arn string - thing
Arn string
- certificate_
arn str - thing_
arn str
- certificate
Arn String - thing
Arn String
Tag, TagArgs
Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
AWS Native is in preview. AWS Classic is fully supported.