EventStreamArgs

data class EventStreamArgs(val applicationId: Output<String>? = null, val destinationStreamArn: Output<String>? = null, val roleArn: Output<String>? = null) : ConvertibleToJava<EventStreamArgs>

/* Provides a Pinpoint Event Stream resource.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.pinpoint.App;
import com.pulumi.aws.kinesis.Stream;
import com.pulumi.aws.kinesis.StreamArgs;
import com.pulumi.aws.iam.IamFunctions;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
import com.pulumi.aws.iam.Role;
import com.pulumi.aws.iam.RoleArgs;
import com.pulumi.aws.pinpoint.EventStream;
import com.pulumi.aws.pinpoint.EventStreamArgs;
import com.pulumi.aws.iam.RolePolicy;
import com.pulumi.aws.iam.RolePolicyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var app = new App("app");
var testStream = new Stream("testStream", StreamArgs.builder()
.shardCount(1)
.build());
final var assumeRole = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.effect("Allow")
.principals(GetPolicyDocumentStatementPrincipalArgs.builder()
.type("Service")
.identifiers("pinpoint.us-east-1.amazonaws.com")
.build())
.actions("sts:AssumeRole")
.build())
.build());
var testRole = new Role("testRole", RoleArgs.builder()
.assumeRolePolicy(assumeRole.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
.build());
var stream = new EventStream("stream", EventStreamArgs.builder()
.applicationId(app.applicationId())
.destinationStreamArn(testStream.arn())
.roleArn(testRole.arn())
.build());
final var testRolePolicyPolicyDocument = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.effect("Allow")
.actions(
"kinesis:PutRecords",
"kinesis:DescribeStream")
.resources("arn:aws:kinesis:us-east-1:*:*/*")
.build())
.build());
var testRolePolicyRolePolicy = new RolePolicy("testRolePolicyRolePolicy", RolePolicyArgs.builder()
.role(testRole.id())
.policy(testRolePolicyPolicyDocument.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
.build());
}
}

Import

Pinpoint Event Stream can be imported using the application-id, e.g.,

$ pulumi import aws:pinpoint/eventStream:EventStream stream application-id

Constructors

Link copied to clipboard
constructor(applicationId: Output<String>? = null, destinationStreamArn: Output<String>? = null, roleArn: Output<String>? = null)

Properties

Link copied to clipboard
val applicationId: Output<String>? = null

The application ID.

Link copied to clipboard
val destinationStreamArn: Output<String>? = null

The Amazon Resource Name (ARN) of the Amazon Kinesis stream or Firehose delivery stream to which you want to publish events.

Link copied to clipboard
val roleArn: Output<String>? = null

The IAM role that authorizes Amazon Pinpoint to publish events to the stream in your account.

Functions

Link copied to clipboard
open override fun toJava(): EventStreamArgs