We recommend new projects start with resources from the AWS provider.
aws-native.iotanalytics.Pipeline
Explore with Pulumi AI
We recommend new projects start with resources from the AWS provider.
Resource Type definition for AWS::IoTAnalytics::Pipeline
Example Usage
Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AwsNative = Pulumi.AwsNative;
return await Deployment.RunAsync(() =>
{
var pipeline = new AwsNative.IoTAnalytics.Pipeline("pipeline", new()
{
PipelineName = "SimplePipeline",
PipelineActivities = new[]
{
new AwsNative.IoTAnalytics.Inputs.PipelineActivityArgs
{
Channel = new AwsNative.IoTAnalytics.Inputs.PipelineChannelArgs
{
Name = "ChannelActivity",
ChannelName = "SimpleChannel",
Next = "DatastoreActivity",
},
Datastore = new AwsNative.IoTAnalytics.Inputs.PipelineDatastoreArgs
{
Name = "DatastoreActivity",
DatastoreName = "SimpleDatastore",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iotanalytics"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := iotanalytics.NewPipeline(ctx, "pipeline", &iotanalytics.PipelineArgs{
PipelineName: pulumi.String("SimplePipeline"),
PipelineActivities: iotanalytics.PipelineActivityArray{
&iotanalytics.PipelineActivityArgs{
Channel: &iotanalytics.PipelineChannelArgs{
Name: pulumi.String("ChannelActivity"),
ChannelName: pulumi.String("SimpleChannel"),
Next: pulumi.String("DatastoreActivity"),
},
Datastore: &iotanalytics.PipelineDatastoreArgs{
Name: pulumi.String("DatastoreActivity"),
DatastoreName: pulumi.String("SimpleDatastore"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_native as aws_native
pipeline = aws_native.iotanalytics.Pipeline("pipeline",
pipeline_name="SimplePipeline",
pipeline_activities=[{
"channel": {
"name": "ChannelActivity",
"channel_name": "SimpleChannel",
"next": "DatastoreActivity",
},
"datastore": {
"name": "DatastoreActivity",
"datastore_name": "SimpleDatastore",
},
}])
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";
const pipeline = new aws_native.iotanalytics.Pipeline("pipeline", {
pipelineName: "SimplePipeline",
pipelineActivities: [{
channel: {
name: "ChannelActivity",
channelName: "SimpleChannel",
next: "DatastoreActivity",
},
datastore: {
name: "DatastoreActivity",
datastoreName: "SimpleDatastore",
},
}],
});
Coming soon!
Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AwsNative = Pulumi.AwsNative;
return await Deployment.RunAsync(() =>
{
var pipeline = new AwsNative.IoTAnalytics.Pipeline("pipeline", new()
{
PipelineName = "SimplePipeline",
PipelineActivities = new[]
{
new AwsNative.IoTAnalytics.Inputs.PipelineActivityArgs
{
Channel = new AwsNative.IoTAnalytics.Inputs.PipelineChannelArgs
{
Name = "ChannelActivity",
ChannelName = "SimpleChannel",
Next = "DatastoreActivity",
},
Datastore = new AwsNative.IoTAnalytics.Inputs.PipelineDatastoreArgs
{
Name = "DatastoreActivity",
DatastoreName = "SimpleDatastore",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iotanalytics"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := iotanalytics.NewPipeline(ctx, "pipeline", &iotanalytics.PipelineArgs{
PipelineName: pulumi.String("SimplePipeline"),
PipelineActivities: iotanalytics.PipelineActivityArray{
&iotanalytics.PipelineActivityArgs{
Channel: &iotanalytics.PipelineChannelArgs{
Name: pulumi.String("ChannelActivity"),
ChannelName: pulumi.String("SimpleChannel"),
Next: pulumi.String("DatastoreActivity"),
},
Datastore: &iotanalytics.PipelineDatastoreArgs{
Name: pulumi.String("DatastoreActivity"),
DatastoreName: pulumi.String("SimpleDatastore"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_native as aws_native
pipeline = aws_native.iotanalytics.Pipeline("pipeline",
pipeline_name="SimplePipeline",
pipeline_activities=[{
"channel": {
"name": "ChannelActivity",
"channel_name": "SimpleChannel",
"next": "DatastoreActivity",
},
"datastore": {
"name": "DatastoreActivity",
"datastore_name": "SimpleDatastore",
},
}])
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";
const pipeline = new aws_native.iotanalytics.Pipeline("pipeline", {
pipelineName: "SimplePipeline",
pipelineActivities: [{
channel: {
name: "ChannelActivity",
channelName: "SimpleChannel",
next: "DatastoreActivity",
},
datastore: {
name: "DatastoreActivity",
datastoreName: "SimpleDatastore",
},
}],
});
Coming soon!
Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AwsNative = Pulumi.AwsNative;
return await Deployment.RunAsync(() =>
{
var pipeline = new AwsNative.IoTAnalytics.Pipeline("pipeline", new()
{
PipelineName = "ComplexPipeline",
PipelineActivities = new[]
{
new AwsNative.IoTAnalytics.Inputs.PipelineActivityArgs
{
Channel = new AwsNative.IoTAnalytics.Inputs.PipelineChannelArgs
{
Name = "ChannelActivity",
ChannelName = "Channel",
Next = "LambdaActivity",
},
Lambda = new AwsNative.IoTAnalytics.Inputs.PipelineLambdaArgs
{
Name = "LambdaActivity",
LambdaName = "Lambda",
BatchSize = 1,
Next = "AddAttributesActivity",
},
AddAttributes = new AwsNative.IoTAnalytics.Inputs.PipelineAddAttributesArgs
{
Name = "AddAttributesActivity",
Attributes =
{
{ "key1", "attribute1" },
{ "key2", "attribute2" },
},
Next = "RemoveAttributesActivity",
},
RemoveAttributes = new AwsNative.IoTAnalytics.Inputs.PipelineRemoveAttributesArgs
{
Name = "RemoveAttributesActivity",
Attributes = new[]
{
"attribute1",
"attribute2",
},
Next = "SelectAttributesActivity",
},
SelectAttributes = new AwsNative.IoTAnalytics.Inputs.PipelineSelectAttributesArgs
{
Name = "SelectAttributesActivity",
Attributes = new[]
{
"attribute1",
"attribute2",
},
Next = "FilterActivity",
},
Filter = new AwsNative.IoTAnalytics.Inputs.PipelineFilterArgs
{
Name = "FilterActivity",
Filter = "attribute1 > 40 AND attribute2 < 20",
Next = "MathActivity",
},
Math = new AwsNative.IoTAnalytics.Inputs.PipelineMathArgs
{
Name = "MathActivity",
Attribute = "attribute",
Math = "attribute - 10",
Next = "DeviceRegistryEnrichActivity",
},
DeviceRegistryEnrich = new AwsNative.IoTAnalytics.Inputs.PipelineDeviceRegistryEnrichArgs
{
Name = "DeviceRegistryEnrichActivity",
Attribute = "attribute",
ThingName = "thingName",
RoleArn = "arn:aws:iam::<your_Account_Id>:role/Enrich",
Next = "DeviceShadowEnrichActivity",
},
DeviceShadowEnrich = new AwsNative.IoTAnalytics.Inputs.PipelineDeviceShadowEnrichArgs
{
Name = "DeviceShadowEnrichActivity",
Attribute = "attribute",
ThingName = "thingName",
RoleArn = "arn:aws:iam::<your_Account_Id>:role/Enrich",
Next = "DatastoreActivity",
},
Datastore = new AwsNative.IoTAnalytics.Inputs.PipelineDatastoreArgs
{
Name = "DatastoreActivity",
DatastoreName = "Datastore",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iotanalytics"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := iotanalytics.NewPipeline(ctx, "pipeline", &iotanalytics.PipelineArgs{
PipelineName: pulumi.String("ComplexPipeline"),
PipelineActivities: iotanalytics.PipelineActivityArray{
&iotanalytics.PipelineActivityArgs{
Channel: &iotanalytics.PipelineChannelArgs{
Name: pulumi.String("ChannelActivity"),
ChannelName: pulumi.String("Channel"),
Next: pulumi.String("LambdaActivity"),
},
Lambda: &iotanalytics.PipelineLambdaArgs{
Name: pulumi.String("LambdaActivity"),
LambdaName: pulumi.String("Lambda"),
BatchSize: pulumi.Int(1),
Next: pulumi.String("AddAttributesActivity"),
},
AddAttributes: &iotanalytics.PipelineAddAttributesArgs{
Name: pulumi.String("AddAttributesActivity"),
Attributes: pulumi.StringMap{
"key1": pulumi.String("attribute1"),
"key2": pulumi.String("attribute2"),
},
Next: pulumi.String("RemoveAttributesActivity"),
},
RemoveAttributes: &iotanalytics.PipelineRemoveAttributesArgs{
Name: pulumi.String("RemoveAttributesActivity"),
Attributes: pulumi.StringArray{
pulumi.String("attribute1"),
pulumi.String("attribute2"),
},
Next: pulumi.String("SelectAttributesActivity"),
},
SelectAttributes: &iotanalytics.PipelineSelectAttributesArgs{
Name: pulumi.String("SelectAttributesActivity"),
Attributes: pulumi.StringArray{
pulumi.String("attribute1"),
pulumi.String("attribute2"),
},
Next: pulumi.String("FilterActivity"),
},
Filter: &iotanalytics.PipelineFilterArgs{
Name: pulumi.String("FilterActivity"),
Filter: pulumi.String("attribute1 > 40 AND attribute2 < 20"),
Next: pulumi.String("MathActivity"),
},
Math: &iotanalytics.PipelineMathArgs{
Name: pulumi.String("MathActivity"),
Attribute: pulumi.String("attribute"),
Math: pulumi.String("attribute - 10"),
Next: pulumi.String("DeviceRegistryEnrichActivity"),
},
DeviceRegistryEnrich: &iotanalytics.PipelineDeviceRegistryEnrichArgs{
Name: pulumi.String("DeviceRegistryEnrichActivity"),
Attribute: pulumi.String("attribute"),
ThingName: pulumi.String("thingName"),
RoleArn: pulumi.String("arn:aws:iam::<your_Account_Id>:role/Enrich"),
Next: pulumi.String("DeviceShadowEnrichActivity"),
},
DeviceShadowEnrich: &iotanalytics.PipelineDeviceShadowEnrichArgs{
Name: pulumi.String("DeviceShadowEnrichActivity"),
Attribute: pulumi.String("attribute"),
ThingName: pulumi.String("thingName"),
RoleArn: pulumi.String("arn:aws:iam::<your_Account_Id>:role/Enrich"),
Next: pulumi.String("DatastoreActivity"),
},
Datastore: &iotanalytics.PipelineDatastoreArgs{
Name: pulumi.String("DatastoreActivity"),
DatastoreName: pulumi.String("Datastore"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_native as aws_native
pipeline = aws_native.iotanalytics.Pipeline("pipeline",
pipeline_name="ComplexPipeline",
pipeline_activities=[{
"channel": {
"name": "ChannelActivity",
"channel_name": "Channel",
"next": "LambdaActivity",
},
"lambda_": {
"name": "LambdaActivity",
"lambda_name": "Lambda",
"batch_size": 1,
"next": "AddAttributesActivity",
},
"add_attributes": {
"name": "AddAttributesActivity",
"attributes": {
"key1": "attribute1",
"key2": "attribute2",
},
"next": "RemoveAttributesActivity",
},
"remove_attributes": {
"name": "RemoveAttributesActivity",
"attributes": [
"attribute1",
"attribute2",
],
"next": "SelectAttributesActivity",
},
"select_attributes": {
"name": "SelectAttributesActivity",
"attributes": [
"attribute1",
"attribute2",
],
"next": "FilterActivity",
},
"filter": {
"name": "FilterActivity",
"filter": "attribute1 > 40 AND attribute2 < 20",
"next": "MathActivity",
},
"math": {
"name": "MathActivity",
"attribute": "attribute",
"math": "attribute - 10",
"next": "DeviceRegistryEnrichActivity",
},
"device_registry_enrich": {
"name": "DeviceRegistryEnrichActivity",
"attribute": "attribute",
"thing_name": "thingName",
"role_arn": "arn:aws:iam::<your_Account_Id>:role/Enrich",
"next": "DeviceShadowEnrichActivity",
},
"device_shadow_enrich": {
"name": "DeviceShadowEnrichActivity",
"attribute": "attribute",
"thing_name": "thingName",
"role_arn": "arn:aws:iam::<your_Account_Id>:role/Enrich",
"next": "DatastoreActivity",
},
"datastore": {
"name": "DatastoreActivity",
"datastore_name": "Datastore",
},
}])
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";
const pipeline = new aws_native.iotanalytics.Pipeline("pipeline", {
pipelineName: "ComplexPipeline",
pipelineActivities: [{
channel: {
name: "ChannelActivity",
channelName: "Channel",
next: "LambdaActivity",
},
lambda: {
name: "LambdaActivity",
lambdaName: "Lambda",
batchSize: 1,
next: "AddAttributesActivity",
},
addAttributes: {
name: "AddAttributesActivity",
attributes: {
key1: "attribute1",
key2: "attribute2",
},
next: "RemoveAttributesActivity",
},
removeAttributes: {
name: "RemoveAttributesActivity",
attributes: [
"attribute1",
"attribute2",
],
next: "SelectAttributesActivity",
},
selectAttributes: {
name: "SelectAttributesActivity",
attributes: [
"attribute1",
"attribute2",
],
next: "FilterActivity",
},
filter: {
name: "FilterActivity",
filter: "attribute1 > 40 AND attribute2 < 20",
next: "MathActivity",
},
math: {
name: "MathActivity",
attribute: "attribute",
math: "attribute - 10",
next: "DeviceRegistryEnrichActivity",
},
deviceRegistryEnrich: {
name: "DeviceRegistryEnrichActivity",
attribute: "attribute",
thingName: "thingName",
roleArn: "arn:aws:iam::<your_Account_Id>:role/Enrich",
next: "DeviceShadowEnrichActivity",
},
deviceShadowEnrich: {
name: "DeviceShadowEnrichActivity",
attribute: "attribute",
thingName: "thingName",
roleArn: "arn:aws:iam::<your_Account_Id>:role/Enrich",
next: "DatastoreActivity",
},
datastore: {
name: "DatastoreActivity",
datastoreName: "Datastore",
},
}],
});
Coming soon!
Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AwsNative = Pulumi.AwsNative;
return await Deployment.RunAsync(() =>
{
var pipeline = new AwsNative.IoTAnalytics.Pipeline("pipeline", new()
{
PipelineName = "ComplexPipeline",
PipelineActivities = new[]
{
new AwsNative.IoTAnalytics.Inputs.PipelineActivityArgs
{
Channel = new AwsNative.IoTAnalytics.Inputs.PipelineChannelArgs
{
Name = "ChannelActivity",
ChannelName = "Channel",
Next = "LambdaActivity",
},
Lambda = new AwsNative.IoTAnalytics.Inputs.PipelineLambdaArgs
{
Name = "LambdaActivity",
LambdaName = "Lambda",
BatchSize = 1,
Next = "AddAttributesActivity",
},
AddAttributes = new AwsNative.IoTAnalytics.Inputs.PipelineAddAttributesArgs
{
Name = "AddAttributesActivity",
Attributes =
{
{ "key1", "attribute1" },
{ "key2", "attribute2" },
},
Next = "RemoveAttributesActivity",
},
RemoveAttributes = new AwsNative.IoTAnalytics.Inputs.PipelineRemoveAttributesArgs
{
Name = "RemoveAttributesActivity",
Attributes = new[]
{
"attribute1",
"attribute2",
},
Next = "SelectAttributesActivity",
},
SelectAttributes = new AwsNative.IoTAnalytics.Inputs.PipelineSelectAttributesArgs
{
Name = "SelectAttributesActivity",
Attributes = new[]
{
"attribute1",
"attribute2",
},
Next = "FilterActivity",
},
Filter = new AwsNative.IoTAnalytics.Inputs.PipelineFilterArgs
{
Name = "FilterActivity",
Filter = "attribute1 > 40 AND attribute2 < 20",
Next = "MathActivity",
},
Math = new AwsNative.IoTAnalytics.Inputs.PipelineMathArgs
{
Name = "MathActivity",
Attribute = "attribute",
Math = "attribute - 10",
Next = "DeviceRegistryEnrichActivity",
},
DeviceRegistryEnrich = new AwsNative.IoTAnalytics.Inputs.PipelineDeviceRegistryEnrichArgs
{
Name = "DeviceRegistryEnrichActivity",
Attribute = "attribute",
ThingName = "thingName",
RoleArn = "arn:aws:iam::<your_Account_Id>:role/Enrich",
Next = "DeviceShadowEnrichActivity",
},
DeviceShadowEnrich = new AwsNative.IoTAnalytics.Inputs.PipelineDeviceShadowEnrichArgs
{
Name = "DeviceShadowEnrichActivity",
Attribute = "attribute",
ThingName = "thingName",
RoleArn = "arn:aws:iam::<your_Account_Id>:role/Enrich",
Next = "DatastoreActivity",
},
Datastore = new AwsNative.IoTAnalytics.Inputs.PipelineDatastoreArgs
{
Name = "DatastoreActivity",
DatastoreName = "Datastore",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iotanalytics"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := iotanalytics.NewPipeline(ctx, "pipeline", &iotanalytics.PipelineArgs{
PipelineName: pulumi.String("ComplexPipeline"),
PipelineActivities: iotanalytics.PipelineActivityArray{
&iotanalytics.PipelineActivityArgs{
Channel: &iotanalytics.PipelineChannelArgs{
Name: pulumi.String("ChannelActivity"),
ChannelName: pulumi.String("Channel"),
Next: pulumi.String("LambdaActivity"),
},
Lambda: &iotanalytics.PipelineLambdaArgs{
Name: pulumi.String("LambdaActivity"),
LambdaName: pulumi.String("Lambda"),
BatchSize: pulumi.Int(1),
Next: pulumi.String("AddAttributesActivity"),
},
AddAttributes: &iotanalytics.PipelineAddAttributesArgs{
Name: pulumi.String("AddAttributesActivity"),
Attributes: pulumi.StringMap{
"key1": pulumi.String("attribute1"),
"key2": pulumi.String("attribute2"),
},
Next: pulumi.String("RemoveAttributesActivity"),
},
RemoveAttributes: &iotanalytics.PipelineRemoveAttributesArgs{
Name: pulumi.String("RemoveAttributesActivity"),
Attributes: pulumi.StringArray{
pulumi.String("attribute1"),
pulumi.String("attribute2"),
},
Next: pulumi.String("SelectAttributesActivity"),
},
SelectAttributes: &iotanalytics.PipelineSelectAttributesArgs{
Name: pulumi.String("SelectAttributesActivity"),
Attributes: pulumi.StringArray{
pulumi.String("attribute1"),
pulumi.String("attribute2"),
},
Next: pulumi.String("FilterActivity"),
},
Filter: &iotanalytics.PipelineFilterArgs{
Name: pulumi.String("FilterActivity"),
Filter: pulumi.String("attribute1 > 40 AND attribute2 < 20"),
Next: pulumi.String("MathActivity"),
},
Math: &iotanalytics.PipelineMathArgs{
Name: pulumi.String("MathActivity"),
Attribute: pulumi.String("attribute"),
Math: pulumi.String("attribute - 10"),
Next: pulumi.String("DeviceRegistryEnrichActivity"),
},
DeviceRegistryEnrich: &iotanalytics.PipelineDeviceRegistryEnrichArgs{
Name: pulumi.String("DeviceRegistryEnrichActivity"),
Attribute: pulumi.String("attribute"),
ThingName: pulumi.String("thingName"),
RoleArn: pulumi.String("arn:aws:iam::<your_Account_Id>:role/Enrich"),
Next: pulumi.String("DeviceShadowEnrichActivity"),
},
DeviceShadowEnrich: &iotanalytics.PipelineDeviceShadowEnrichArgs{
Name: pulumi.String("DeviceShadowEnrichActivity"),
Attribute: pulumi.String("attribute"),
ThingName: pulumi.String("thingName"),
RoleArn: pulumi.String("arn:aws:iam::<your_Account_Id>:role/Enrich"),
Next: pulumi.String("DatastoreActivity"),
},
Datastore: &iotanalytics.PipelineDatastoreArgs{
Name: pulumi.String("DatastoreActivity"),
DatastoreName: pulumi.String("Datastore"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_native as aws_native
pipeline = aws_native.iotanalytics.Pipeline("pipeline",
pipeline_name="ComplexPipeline",
pipeline_activities=[{
"channel": {
"name": "ChannelActivity",
"channel_name": "Channel",
"next": "LambdaActivity",
},
"lambda_": {
"name": "LambdaActivity",
"lambda_name": "Lambda",
"batch_size": 1,
"next": "AddAttributesActivity",
},
"add_attributes": {
"name": "AddAttributesActivity",
"attributes": {
"key1": "attribute1",
"key2": "attribute2",
},
"next": "RemoveAttributesActivity",
},
"remove_attributes": {
"name": "RemoveAttributesActivity",
"attributes": [
"attribute1",
"attribute2",
],
"next": "SelectAttributesActivity",
},
"select_attributes": {
"name": "SelectAttributesActivity",
"attributes": [
"attribute1",
"attribute2",
],
"next": "FilterActivity",
},
"filter": {
"name": "FilterActivity",
"filter": "attribute1 > 40 AND attribute2 < 20",
"next": "MathActivity",
},
"math": {
"name": "MathActivity",
"attribute": "attribute",
"math": "attribute - 10",
"next": "DeviceRegistryEnrichActivity",
},
"device_registry_enrich": {
"name": "DeviceRegistryEnrichActivity",
"attribute": "attribute",
"thing_name": "thingName",
"role_arn": "arn:aws:iam::<your_Account_Id>:role/Enrich",
"next": "DeviceShadowEnrichActivity",
},
"device_shadow_enrich": {
"name": "DeviceShadowEnrichActivity",
"attribute": "attribute",
"thing_name": "thingName",
"role_arn": "arn:aws:iam::<your_Account_Id>:role/Enrich",
"next": "DatastoreActivity",
},
"datastore": {
"name": "DatastoreActivity",
"datastore_name": "Datastore",
},
}])
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";
const pipeline = new aws_native.iotanalytics.Pipeline("pipeline", {
pipelineName: "ComplexPipeline",
pipelineActivities: [{
channel: {
name: "ChannelActivity",
channelName: "Channel",
next: "LambdaActivity",
},
lambda: {
name: "LambdaActivity",
lambdaName: "Lambda",
batchSize: 1,
next: "AddAttributesActivity",
},
addAttributes: {
name: "AddAttributesActivity",
attributes: {
key1: "attribute1",
key2: "attribute2",
},
next: "RemoveAttributesActivity",
},
removeAttributes: {
name: "RemoveAttributesActivity",
attributes: [
"attribute1",
"attribute2",
],
next: "SelectAttributesActivity",
},
selectAttributes: {
name: "SelectAttributesActivity",
attributes: [
"attribute1",
"attribute2",
],
next: "FilterActivity",
},
filter: {
name: "FilterActivity",
filter: "attribute1 > 40 AND attribute2 < 20",
next: "MathActivity",
},
math: {
name: "MathActivity",
attribute: "attribute",
math: "attribute - 10",
next: "DeviceRegistryEnrichActivity",
},
deviceRegistryEnrich: {
name: "DeviceRegistryEnrichActivity",
attribute: "attribute",
thingName: "thingName",
roleArn: "arn:aws:iam::<your_Account_Id>:role/Enrich",
next: "DeviceShadowEnrichActivity",
},
deviceShadowEnrich: {
name: "DeviceShadowEnrichActivity",
attribute: "attribute",
thingName: "thingName",
roleArn: "arn:aws:iam::<your_Account_Id>:role/Enrich",
next: "DatastoreActivity",
},
datastore: {
name: "DatastoreActivity",
datastoreName: "Datastore",
},
}],
});
Coming soon!
Create Pipeline Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Pipeline(name: string, args: PipelineArgs, opts?: CustomResourceOptions);
@overload
def Pipeline(resource_name: str,
args: PipelineArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Pipeline(resource_name: str,
opts: Optional[ResourceOptions] = None,
pipeline_activities: Optional[Sequence[PipelineActivityArgs]] = None,
pipeline_name: Optional[str] = None,
tags: Optional[Sequence[_root_inputs.TagArgs]] = None)
func NewPipeline(ctx *Context, name string, args PipelineArgs, opts ...ResourceOption) (*Pipeline, error)
public Pipeline(string name, PipelineArgs args, CustomResourceOptions? opts = null)
public Pipeline(String name, PipelineArgs args)
public Pipeline(String name, PipelineArgs args, CustomResourceOptions options)
type: aws-native:iotanalytics:Pipeline
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 PipelineArgs
- 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 PipelineArgs
- 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 PipelineArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args PipelineArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args PipelineArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Pipeline 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 Pipeline resource accepts the following input properties:
- Pipeline
Activities List<Pulumi.Aws Native. Io TAnalytics. Inputs. Pipeline Activity> A list of "PipelineActivity" objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.
The list can be 2-25 PipelineActivity objects and must contain both a
channel
and adatastore
activity. Each entry in the list must contain only one activity, for example:pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]
- Pipeline
Name string - The name of the pipeline.
- List<Pulumi.
Aws Native. Inputs. Tag> Metadata which can be used to manage the pipeline.
For more information, see Tag .
- Pipeline
Activities []PipelineActivity Args A list of "PipelineActivity" objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.
The list can be 2-25 PipelineActivity objects and must contain both a
channel
and adatastore
activity. Each entry in the list must contain only one activity, for example:pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]
- Pipeline
Name string - The name of the pipeline.
- Tag
Args Metadata which can be used to manage the pipeline.
For more information, see Tag .
- pipeline
Activities List<PipelineActivity> A list of "PipelineActivity" objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.
The list can be 2-25 PipelineActivity objects and must contain both a
channel
and adatastore
activity. Each entry in the list must contain only one activity, for example:pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]
- pipeline
Name String - The name of the pipeline.
- List<Tag>
Metadata which can be used to manage the pipeline.
For more information, see Tag .
- pipeline
Activities PipelineActivity[] A list of "PipelineActivity" objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.
The list can be 2-25 PipelineActivity objects and must contain both a
channel
and adatastore
activity. Each entry in the list must contain only one activity, for example:pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]
- pipeline
Name string - The name of the pipeline.
- Tag[]
Metadata which can be used to manage the pipeline.
For more information, see Tag .
- pipeline_
activities Sequence[PipelineActivity Args] A list of "PipelineActivity" objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.
The list can be 2-25 PipelineActivity objects and must contain both a
channel
and adatastore
activity. Each entry in the list must contain only one activity, for example:pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]
- pipeline_
name str - The name of the pipeline.
- Sequence[Tag
Args] Metadata which can be used to manage the pipeline.
For more information, see Tag .
- pipeline
Activities List<Property Map> A list of "PipelineActivity" objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.
The list can be 2-25 PipelineActivity objects and must contain both a
channel
and adatastore
activity. Each entry in the list must contain only one activity, for example:pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]
- pipeline
Name String - The name of the pipeline.
- List<Property Map>
Metadata which can be used to manage the pipeline.
For more information, see Tag .
Outputs
All input properties are implicitly available as output properties. Additionally, the Pipeline resource produces the following output properties:
Supporting Types
PipelineActivity, PipelineActivityArgs
- Add
Attributes Pulumi.Aws Native. Io TAnalytics. Inputs. Pipeline Add Attributes - Adds other attributes based on existing attributes in the message.
- Channel
Pulumi.
Aws Native. Io TAnalytics. Inputs. Pipeline Channel - Determines the source of the messages to be processed.
- Datastore
Pulumi.
Aws Native. Io TAnalytics. Inputs. Pipeline Datastore - Specifies where to store the processed message data.
- Device
Registry Pulumi.Enrich Aws Native. Io TAnalytics. Inputs. Pipeline Device Registry Enrich - Adds data from the AWS IoT device registry to your message.
- Device
Shadow Pulumi.Enrich Aws Native. Io TAnalytics. Inputs. Pipeline Device Shadow Enrich - Adds information from the AWS IoT Device Shadows service to a message.
- Filter
Pulumi.
Aws Native. Io TAnalytics. Inputs. Pipeline Filter - Filters a message based on its attributes.
- Lambda
Pulumi.
Aws Native. Io TAnalytics. Inputs. Pipeline Lambda - Runs a Lambda function to modify the message.
- Math
Pulumi.
Aws Native. Io TAnalytics. Inputs. Pipeline Math - Computes an arithmetic expression using the message's attributes and adds it to the message.
- Remove
Attributes Pulumi.Aws Native. Io TAnalytics. Inputs. Pipeline Remove Attributes - Removes attributes from a message.
- Select
Attributes Pulumi.Aws Native. Io TAnalytics. Inputs. Pipeline Select Attributes - Creates a new message using only the specified attributes from the original message.
- Add
Attributes PipelineAdd Attributes - Adds other attributes based on existing attributes in the message.
- Channel
Pipeline
Channel - Determines the source of the messages to be processed.
- Datastore
Pipeline
Datastore - Specifies where to store the processed message data.
- Device
Registry PipelineEnrich Device Registry Enrich - Adds data from the AWS IoT device registry to your message.
- Device
Shadow PipelineEnrich Device Shadow Enrich - Adds information from the AWS IoT Device Shadows service to a message.
- Filter
Pipeline
Filter - Filters a message based on its attributes.
- Lambda
Pipeline
Lambda - Runs a Lambda function to modify the message.
- Math
Pipeline
Math - Computes an arithmetic expression using the message's attributes and adds it to the message.
- Remove
Attributes PipelineRemove Attributes - Removes attributes from a message.
- Select
Attributes PipelineSelect Attributes - Creates a new message using only the specified attributes from the original message.
- add
Attributes PipelineAdd Attributes - Adds other attributes based on existing attributes in the message.
- channel
Pipeline
Channel - Determines the source of the messages to be processed.
- datastore
Pipeline
Datastore - Specifies where to store the processed message data.
- device
Registry PipelineEnrich Device Registry Enrich - Adds data from the AWS IoT device registry to your message.
- device
Shadow PipelineEnrich Device Shadow Enrich - Adds information from the AWS IoT Device Shadows service to a message.
- filter
Pipeline
Filter - Filters a message based on its attributes.
- lambda
Pipeline
Lambda - Runs a Lambda function to modify the message.
- math
Pipeline
Math - Computes an arithmetic expression using the message's attributes and adds it to the message.
- remove
Attributes PipelineRemove Attributes - Removes attributes from a message.
- select
Attributes PipelineSelect Attributes - Creates a new message using only the specified attributes from the original message.
- add
Attributes PipelineAdd Attributes - Adds other attributes based on existing attributes in the message.
- channel
Pipeline
Channel - Determines the source of the messages to be processed.
- datastore
Pipeline
Datastore - Specifies where to store the processed message data.
- device
Registry PipelineEnrich Device Registry Enrich - Adds data from the AWS IoT device registry to your message.
- device
Shadow PipelineEnrich Device Shadow Enrich - Adds information from the AWS IoT Device Shadows service to a message.
- filter
Pipeline
Filter - Filters a message based on its attributes.
- lambda
Pipeline
Lambda - Runs a Lambda function to modify the message.
- math
Pipeline
Math - Computes an arithmetic expression using the message's attributes and adds it to the message.
- remove
Attributes PipelineRemove Attributes - Removes attributes from a message.
- select
Attributes PipelineSelect Attributes - Creates a new message using only the specified attributes from the original message.
- add_
attributes PipelineAdd Attributes - Adds other attributes based on existing attributes in the message.
- channel
Pipeline
Channel - Determines the source of the messages to be processed.
- datastore
Pipeline
Datastore - Specifies where to store the processed message data.
- device_
registry_ Pipelineenrich Device Registry Enrich - Adds data from the AWS IoT device registry to your message.
- device_
shadow_ Pipelineenrich Device Shadow Enrich - Adds information from the AWS IoT Device Shadows service to a message.
- filter
Pipeline
Filter - Filters a message based on its attributes.
- lambda_
Pipeline
Lambda - Runs a Lambda function to modify the message.
- math
Pipeline
Math - Computes an arithmetic expression using the message's attributes and adds it to the message.
- remove_
attributes PipelineRemove Attributes - Removes attributes from a message.
- select_
attributes PipelineSelect Attributes - Creates a new message using only the specified attributes from the original message.
- add
Attributes Property Map - Adds other attributes based on existing attributes in the message.
- channel Property Map
- Determines the source of the messages to be processed.
- datastore Property Map
- Specifies where to store the processed message data.
- device
Registry Property MapEnrich - Adds data from the AWS IoT device registry to your message.
- device
Shadow Property MapEnrich - Adds information from the AWS IoT Device Shadows service to a message.
- filter Property Map
- Filters a message based on its attributes.
- lambda Property Map
- Runs a Lambda function to modify the message.
- math Property Map
- Computes an arithmetic expression using the message's attributes and adds it to the message.
- remove
Attributes Property Map - Removes attributes from a message.
- select
Attributes Property Map - Creates a new message using only the specified attributes from the original message.
PipelineAddAttributes, PipelineAddAttributesArgs
- Attributes Dictionary<string, string>
A list of 1-50 "AttributeNameMapping" objects that map an existing attribute to a new attribute.
The existing attributes remain in the message, so if you want to remove the originals, use "RemoveAttributeActivity".
- Name string
- The name of the 'addAttributes' activity.
- Next string
- The next activity in the pipeline.
- Attributes map[string]string
A list of 1-50 "AttributeNameMapping" objects that map an existing attribute to a new attribute.
The existing attributes remain in the message, so if you want to remove the originals, use "RemoveAttributeActivity".
- Name string
- The name of the 'addAttributes' activity.
- Next string
- The next activity in the pipeline.
- attributes Map<String,String>
A list of 1-50 "AttributeNameMapping" objects that map an existing attribute to a new attribute.
The existing attributes remain in the message, so if you want to remove the originals, use "RemoveAttributeActivity".
- name String
- The name of the 'addAttributes' activity.
- next String
- The next activity in the pipeline.
- attributes {[key: string]: string}
A list of 1-50 "AttributeNameMapping" objects that map an existing attribute to a new attribute.
The existing attributes remain in the message, so if you want to remove the originals, use "RemoveAttributeActivity".
- name string
- The name of the 'addAttributes' activity.
- next string
- The next activity in the pipeline.
- attributes Mapping[str, str]
A list of 1-50 "AttributeNameMapping" objects that map an existing attribute to a new attribute.
The existing attributes remain in the message, so if you want to remove the originals, use "RemoveAttributeActivity".
- name str
- The name of the 'addAttributes' activity.
- next str
- The next activity in the pipeline.
- attributes Map<String>
A list of 1-50 "AttributeNameMapping" objects that map an existing attribute to a new attribute.
The existing attributes remain in the message, so if you want to remove the originals, use "RemoveAttributeActivity".
- name String
- The name of the 'addAttributes' activity.
- next String
- The next activity in the pipeline.
PipelineChannel, PipelineChannelArgs
- Channel
Name string - The name of the channel from which the messages are processed.
- Name string
- The name of the 'channel' activity.
- Next string
- The next activity in the pipeline.
- Channel
Name string - The name of the channel from which the messages are processed.
- Name string
- The name of the 'channel' activity.
- Next string
- The next activity in the pipeline.
- channel
Name String - The name of the channel from which the messages are processed.
- name String
- The name of the 'channel' activity.
- next String
- The next activity in the pipeline.
- channel
Name string - The name of the channel from which the messages are processed.
- name string
- The name of the 'channel' activity.
- next string
- The next activity in the pipeline.
- channel_
name str - The name of the channel from which the messages are processed.
- name str
- The name of the 'channel' activity.
- next str
- The next activity in the pipeline.
- channel
Name String - The name of the channel from which the messages are processed.
- name String
- The name of the 'channel' activity.
- next String
- The next activity in the pipeline.
PipelineDatastore, PipelineDatastoreArgs
- Datastore
Name string - The name of the data store where processed messages are stored.
- Name string
- The name of the datastore activity.
- Datastore
Name string - The name of the data store where processed messages are stored.
- Name string
- The name of the datastore activity.
- datastore
Name String - The name of the data store where processed messages are stored.
- name String
- The name of the datastore activity.
- datastore
Name string - The name of the data store where processed messages are stored.
- name string
- The name of the datastore activity.
- datastore_
name str - The name of the data store where processed messages are stored.
- name str
- The name of the datastore activity.
- datastore
Name String - The name of the data store where processed messages are stored.
- name String
- The name of the datastore activity.
PipelineDeviceRegistryEnrich, PipelineDeviceRegistryEnrichArgs
- Attribute string
- The name of the attribute that is added to the message.
- Name string
- The name of the 'deviceRegistryEnrich' activity.
- Role
Arn string - The ARN of the role that allows access to the device's registry information.
- Thing
Name string - The name of the IoT device whose registry information is added to the message.
- Next string
- The next activity in the pipeline.
- Attribute string
- The name of the attribute that is added to the message.
- Name string
- The name of the 'deviceRegistryEnrich' activity.
- Role
Arn string - The ARN of the role that allows access to the device's registry information.
- Thing
Name string - The name of the IoT device whose registry information is added to the message.
- Next string
- The next activity in the pipeline.
- attribute String
- The name of the attribute that is added to the message.
- name String
- The name of the 'deviceRegistryEnrich' activity.
- role
Arn String - The ARN of the role that allows access to the device's registry information.
- thing
Name String - The name of the IoT device whose registry information is added to the message.
- next String
- The next activity in the pipeline.
- attribute string
- The name of the attribute that is added to the message.
- name string
- The name of the 'deviceRegistryEnrich' activity.
- role
Arn string - The ARN of the role that allows access to the device's registry information.
- thing
Name string - The name of the IoT device whose registry information is added to the message.
- next string
- The next activity in the pipeline.
- attribute str
- The name of the attribute that is added to the message.
- name str
- The name of the 'deviceRegistryEnrich' activity.
- role_
arn str - The ARN of the role that allows access to the device's registry information.
- thing_
name str - The name of the IoT device whose registry information is added to the message.
- next str
- The next activity in the pipeline.
- attribute String
- The name of the attribute that is added to the message.
- name String
- The name of the 'deviceRegistryEnrich' activity.
- role
Arn String - The ARN of the role that allows access to the device's registry information.
- thing
Name String - The name of the IoT device whose registry information is added to the message.
- next String
- The next activity in the pipeline.
PipelineDeviceShadowEnrich, PipelineDeviceShadowEnrichArgs
- Attribute string
- The name of the attribute that is added to the message.
- Name string
- The name of the 'deviceShadowEnrich' activity.
- Role
Arn string - The ARN of the role that allows access to the device's shadow.
- Thing
Name string - The name of the IoT device whose shadow information is added to the message.
- Next string
- The next activity in the pipeline.
- Attribute string
- The name of the attribute that is added to the message.
- Name string
- The name of the 'deviceShadowEnrich' activity.
- Role
Arn string - The ARN of the role that allows access to the device's shadow.
- Thing
Name string - The name of the IoT device whose shadow information is added to the message.
- Next string
- The next activity in the pipeline.
- attribute String
- The name of the attribute that is added to the message.
- name String
- The name of the 'deviceShadowEnrich' activity.
- role
Arn String - The ARN of the role that allows access to the device's shadow.
- thing
Name String - The name of the IoT device whose shadow information is added to the message.
- next String
- The next activity in the pipeline.
- attribute string
- The name of the attribute that is added to the message.
- name string
- The name of the 'deviceShadowEnrich' activity.
- role
Arn string - The ARN of the role that allows access to the device's shadow.
- thing
Name string - The name of the IoT device whose shadow information is added to the message.
- next string
- The next activity in the pipeline.
- attribute str
- The name of the attribute that is added to the message.
- name str
- The name of the 'deviceShadowEnrich' activity.
- role_
arn str - The ARN of the role that allows access to the device's shadow.
- thing_
name str - The name of the IoT device whose shadow information is added to the message.
- next str
- The next activity in the pipeline.
- attribute String
- The name of the attribute that is added to the message.
- name String
- The name of the 'deviceShadowEnrich' activity.
- role
Arn String - The ARN of the role that allows access to the device's shadow.
- thing
Name String - The name of the IoT device whose shadow information is added to the message.
- next String
- The next activity in the pipeline.
PipelineFilter, PipelineFilterArgs
PipelineLambda, PipelineLambdaArgs
- Batch
Size int The number of messages passed to the Lambda function for processing.
The AWS Lambda function must be able to process all of these messages within five minutes, which is the maximum timeout duration for Lambda functions.
- Lambda
Name string - The name of the Lambda function that is run on the message.
- Name string
- The name of the 'lambda' activity.
- Next string
- The next activity in the pipeline.
- Batch
Size int The number of messages passed to the Lambda function for processing.
The AWS Lambda function must be able to process all of these messages within five minutes, which is the maximum timeout duration for Lambda functions.
- Lambda
Name string - The name of the Lambda function that is run on the message.
- Name string
- The name of the 'lambda' activity.
- Next string
- The next activity in the pipeline.
- batch
Size Integer The number of messages passed to the Lambda function for processing.
The AWS Lambda function must be able to process all of these messages within five minutes, which is the maximum timeout duration for Lambda functions.
- lambda
Name String - The name of the Lambda function that is run on the message.
- name String
- The name of the 'lambda' activity.
- next String
- The next activity in the pipeline.
- batch
Size number The number of messages passed to the Lambda function for processing.
The AWS Lambda function must be able to process all of these messages within five minutes, which is the maximum timeout duration for Lambda functions.
- lambda
Name string - The name of the Lambda function that is run on the message.
- name string
- The name of the 'lambda' activity.
- next string
- The next activity in the pipeline.
- batch_
size int The number of messages passed to the Lambda function for processing.
The AWS Lambda function must be able to process all of these messages within five minutes, which is the maximum timeout duration for Lambda functions.
- lambda_
name str - The name of the Lambda function that is run on the message.
- name str
- The name of the 'lambda' activity.
- next str
- The next activity in the pipeline.
- batch
Size Number The number of messages passed to the Lambda function for processing.
The AWS Lambda function must be able to process all of these messages within five minutes, which is the maximum timeout duration for Lambda functions.
- lambda
Name String - The name of the Lambda function that is run on the message.
- name String
- The name of the 'lambda' activity.
- next String
- The next activity in the pipeline.
PipelineMath, PipelineMathArgs
PipelineRemoveAttributes, PipelineRemoveAttributesArgs
- Attributes List<string>
- A list of 1-50 attributes to remove from the message.
- Name string
- The name of the 'removeAttributes' activity.
- Next string
- The next activity in the pipeline.
- Attributes []string
- A list of 1-50 attributes to remove from the message.
- Name string
- The name of the 'removeAttributes' activity.
- Next string
- The next activity in the pipeline.
- attributes List<String>
- A list of 1-50 attributes to remove from the message.
- name String
- The name of the 'removeAttributes' activity.
- next String
- The next activity in the pipeline.
- attributes string[]
- A list of 1-50 attributes to remove from the message.
- name string
- The name of the 'removeAttributes' activity.
- next string
- The next activity in the pipeline.
- attributes Sequence[str]
- A list of 1-50 attributes to remove from the message.
- name str
- The name of the 'removeAttributes' activity.
- next str
- The next activity in the pipeline.
- attributes List<String>
- A list of 1-50 attributes to remove from the message.
- name String
- The name of the 'removeAttributes' activity.
- next String
- The next activity in the pipeline.
PipelineSelectAttributes, PipelineSelectAttributesArgs
- Attributes List<string>
- A list of the attributes to select from the message.
- Name string
- The name of the 'selectAttributes' activity.
- Next string
- The next activity in the pipeline.
- Attributes []string
- A list of the attributes to select from the message.
- Name string
- The name of the 'selectAttributes' activity.
- Next string
- The next activity in the pipeline.
- attributes List<String>
- A list of the attributes to select from the message.
- name String
- The name of the 'selectAttributes' activity.
- next String
- The next activity in the pipeline.
- attributes string[]
- A list of the attributes to select from the message.
- name string
- The name of the 'selectAttributes' activity.
- next string
- The next activity in the pipeline.
- attributes Sequence[str]
- A list of the attributes to select from the message.
- name str
- The name of the 'selectAttributes' activity.
- next str
- The next activity in the pipeline.
- attributes List<String>
- A list of the attributes to select from the message.
- name String
- The name of the 'selectAttributes' activity.
- next String
- The next activity in the pipeline.
Tag, TagArgs
Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
We recommend new projects start with resources from the AWS provider.