aws.mskconnect.CustomPlugin
Explore with Pulumi AI
Provides an Amazon MSK Connect Custom Plugin Resource.
Example Usage
Basic configuration
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.s3.BucketV2("example", {bucket: "example"});
const exampleBucketObjectv2 = new aws.s3.BucketObjectv2("example", {
bucket: example.id,
key: "debezium.zip",
source: new pulumi.asset.FileAsset("debezium.zip"),
});
const exampleCustomPlugin = new aws.mskconnect.CustomPlugin("example", {
name: "debezium-example",
contentType: "ZIP",
location: {
s3: {
bucketArn: example.arn,
fileKey: exampleBucketObjectv2.key,
},
},
});
import pulumi
import pulumi_aws as aws
example = aws.s3.BucketV2("example", bucket="example")
example_bucket_objectv2 = aws.s3.BucketObjectv2("example",
bucket=example.id,
key="debezium.zip",
source=pulumi.FileAsset("debezium.zip"))
example_custom_plugin = aws.mskconnect.CustomPlugin("example",
name="debezium-example",
content_type="ZIP",
location={
"s3": {
"bucket_arn": example.arn,
"file_key": example_bucket_objectv2.key,
},
})
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/mskconnect"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := s3.NewBucketV2(ctx, "example", &s3.BucketV2Args{
Bucket: pulumi.String("example"),
})
if err != nil {
return err
}
exampleBucketObjectv2, err := s3.NewBucketObjectv2(ctx, "example", &s3.BucketObjectv2Args{
Bucket: example.ID(),
Key: pulumi.String("debezium.zip"),
Source: pulumi.NewFileAsset("debezium.zip"),
})
if err != nil {
return err
}
_, err = mskconnect.NewCustomPlugin(ctx, "example", &mskconnect.CustomPluginArgs{
Name: pulumi.String("debezium-example"),
ContentType: pulumi.String("ZIP"),
Location: &mskconnect.CustomPluginLocationArgs{
S3: &mskconnect.CustomPluginLocationS3Args{
BucketArn: example.Arn,
FileKey: exampleBucketObjectv2.Key,
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.S3.BucketV2("example", new()
{
Bucket = "example",
});
var exampleBucketObjectv2 = new Aws.S3.BucketObjectv2("example", new()
{
Bucket = example.Id,
Key = "debezium.zip",
Source = new FileAsset("debezium.zip"),
});
var exampleCustomPlugin = new Aws.MskConnect.CustomPlugin("example", new()
{
Name = "debezium-example",
ContentType = "ZIP",
Location = new Aws.MskConnect.Inputs.CustomPluginLocationArgs
{
S3 = new Aws.MskConnect.Inputs.CustomPluginLocationS3Args
{
BucketArn = example.Arn,
FileKey = exampleBucketObjectv2.Key,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.BucketV2Args;
import com.pulumi.aws.s3.BucketObjectv2;
import com.pulumi.aws.s3.BucketObjectv2Args;
import com.pulumi.aws.mskconnect.CustomPlugin;
import com.pulumi.aws.mskconnect.CustomPluginArgs;
import com.pulumi.aws.mskconnect.inputs.CustomPluginLocationArgs;
import com.pulumi.aws.mskconnect.inputs.CustomPluginLocationS3Args;
import com.pulumi.asset.FileAsset;
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 example = new BucketV2("example", BucketV2Args.builder()
.bucket("example")
.build());
var exampleBucketObjectv2 = new BucketObjectv2("exampleBucketObjectv2", BucketObjectv2Args.builder()
.bucket(example.id())
.key("debezium.zip")
.source(new FileAsset("debezium.zip"))
.build());
var exampleCustomPlugin = new CustomPlugin("exampleCustomPlugin", CustomPluginArgs.builder()
.name("debezium-example")
.contentType("ZIP")
.location(CustomPluginLocationArgs.builder()
.s3(CustomPluginLocationS3Args.builder()
.bucketArn(example.arn())
.fileKey(exampleBucketObjectv2.key())
.build())
.build())
.build());
}
}
resources:
example:
type: aws:s3:BucketV2
properties:
bucket: example
exampleBucketObjectv2:
type: aws:s3:BucketObjectv2
name: example
properties:
bucket: ${example.id}
key: debezium.zip
source:
fn::FileAsset: debezium.zip
exampleCustomPlugin:
type: aws:mskconnect:CustomPlugin
name: example
properties:
name: debezium-example
contentType: ZIP
location:
s3:
bucketArn: ${example.arn}
fileKey: ${exampleBucketObjectv2.key}
Create CustomPlugin Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CustomPlugin(name: string, args: CustomPluginArgs, opts?: CustomResourceOptions);
@overload
def CustomPlugin(resource_name: str,
args: CustomPluginArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CustomPlugin(resource_name: str,
opts: Optional[ResourceOptions] = None,
content_type: Optional[str] = None,
location: Optional[CustomPluginLocationArgs] = None,
description: Optional[str] = None,
name: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None)
func NewCustomPlugin(ctx *Context, name string, args CustomPluginArgs, opts ...ResourceOption) (*CustomPlugin, error)
public CustomPlugin(string name, CustomPluginArgs args, CustomResourceOptions? opts = null)
public CustomPlugin(String name, CustomPluginArgs args)
public CustomPlugin(String name, CustomPluginArgs args, CustomResourceOptions options)
type: aws:mskconnect:CustomPlugin
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 CustomPluginArgs
- 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 CustomPluginArgs
- 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 CustomPluginArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CustomPluginArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CustomPluginArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var customPluginResource = new Aws.MskConnect.CustomPlugin("customPluginResource", new()
{
ContentType = "string",
Location = new Aws.MskConnect.Inputs.CustomPluginLocationArgs
{
S3 = new Aws.MskConnect.Inputs.CustomPluginLocationS3Args
{
BucketArn = "string",
FileKey = "string",
ObjectVersion = "string",
},
},
Description = "string",
Name = "string",
Tags =
{
{ "string", "string" },
},
});
example, err := mskconnect.NewCustomPlugin(ctx, "customPluginResource", &mskconnect.CustomPluginArgs{
ContentType: pulumi.String("string"),
Location: &mskconnect.CustomPluginLocationArgs{
S3: &mskconnect.CustomPluginLocationS3Args{
BucketArn: pulumi.String("string"),
FileKey: pulumi.String("string"),
ObjectVersion: pulumi.String("string"),
},
},
Description: pulumi.String("string"),
Name: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
var customPluginResource = new CustomPlugin("customPluginResource", CustomPluginArgs.builder()
.contentType("string")
.location(CustomPluginLocationArgs.builder()
.s3(CustomPluginLocationS3Args.builder()
.bucketArn("string")
.fileKey("string")
.objectVersion("string")
.build())
.build())
.description("string")
.name("string")
.tags(Map.of("string", "string"))
.build());
custom_plugin_resource = aws.mskconnect.CustomPlugin("customPluginResource",
content_type="string",
location={
"s3": {
"bucket_arn": "string",
"file_key": "string",
"object_version": "string",
},
},
description="string",
name="string",
tags={
"string": "string",
})
const customPluginResource = new aws.mskconnect.CustomPlugin("customPluginResource", {
contentType: "string",
location: {
s3: {
bucketArn: "string",
fileKey: "string",
objectVersion: "string",
},
},
description: "string",
name: "string",
tags: {
string: "string",
},
});
type: aws:mskconnect:CustomPlugin
properties:
contentType: string
description: string
location:
s3:
bucketArn: string
fileKey: string
objectVersion: string
name: string
tags:
string: string
CustomPlugin Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The CustomPlugin resource accepts the following input properties:
- Content
Type string - The type of the plugin file. Allowed values are
ZIP
andJAR
. - Location
Custom
Plugin Location - Information about the location of a custom plugin. See
location
Block for details. - Description string
- A summary description of the custom plugin.
- Name string
- The name of the custom plugin..
- Dictionary<string, string>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- Content
Type string - The type of the plugin file. Allowed values are
ZIP
andJAR
. - Location
Custom
Plugin Location Args - Information about the location of a custom plugin. See
location
Block for details. - Description string
- A summary description of the custom plugin.
- Name string
- The name of the custom plugin..
- map[string]string
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- content
Type String - The type of the plugin file. Allowed values are
ZIP
andJAR
. - location
Custom
Plugin Location - Information about the location of a custom plugin. See
location
Block for details. - description String
- A summary description of the custom plugin.
- name String
- The name of the custom plugin..
- Map<String,String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- content
Type string - The type of the plugin file. Allowed values are
ZIP
andJAR
. - location
Custom
Plugin Location - Information about the location of a custom plugin. See
location
Block for details. - description string
- A summary description of the custom plugin.
- name string
- The name of the custom plugin..
- {[key: string]: string}
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- content_
type str - The type of the plugin file. Allowed values are
ZIP
andJAR
. - location
Custom
Plugin Location Args - Information about the location of a custom plugin. See
location
Block for details. - description str
- A summary description of the custom plugin.
- name str
- The name of the custom plugin..
- Mapping[str, str]
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- content
Type String - The type of the plugin file. Allowed values are
ZIP
andJAR
. - location Property Map
- Information about the location of a custom plugin. See
location
Block for details. - description String
- A summary description of the custom plugin.
- name String
- The name of the custom plugin..
- Map<String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
Outputs
All input properties are implicitly available as output properties. Additionally, the CustomPlugin resource produces the following output properties:
- Arn string
- the Amazon Resource Name (ARN) of the custom plugin.
- Id string
- The provider-assigned unique ID for this managed resource.
- Latest
Revision int - an ID of the latest successfully created revision of the custom plugin.
- State string
- the state of the custom plugin.
- Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Arn string
- the Amazon Resource Name (ARN) of the custom plugin.
- Id string
- The provider-assigned unique ID for this managed resource.
- Latest
Revision int - an ID of the latest successfully created revision of the custom plugin.
- State string
- the state of the custom plugin.
- map[string]string
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- the Amazon Resource Name (ARN) of the custom plugin.
- id String
- The provider-assigned unique ID for this managed resource.
- latest
Revision Integer - an ID of the latest successfully created revision of the custom plugin.
- state String
- the state of the custom plugin.
- Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn string
- the Amazon Resource Name (ARN) of the custom plugin.
- id string
- The provider-assigned unique ID for this managed resource.
- latest
Revision number - an ID of the latest successfully created revision of the custom plugin.
- state string
- the state of the custom plugin.
- {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn str
- the Amazon Resource Name (ARN) of the custom plugin.
- id str
- The provider-assigned unique ID for this managed resource.
- latest_
revision int - an ID of the latest successfully created revision of the custom plugin.
- state str
- the state of the custom plugin.
- Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- the Amazon Resource Name (ARN) of the custom plugin.
- id String
- The provider-assigned unique ID for this managed resource.
- latest
Revision Number - an ID of the latest successfully created revision of the custom plugin.
- state String
- the state of the custom plugin.
- Map<String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Look up Existing CustomPlugin Resource
Get an existing CustomPlugin resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: CustomPluginState, opts?: CustomResourceOptions): CustomPlugin
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
content_type: Optional[str] = None,
description: Optional[str] = None,
latest_revision: Optional[int] = None,
location: Optional[CustomPluginLocationArgs] = None,
name: Optional[str] = None,
state: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None) -> CustomPlugin
func GetCustomPlugin(ctx *Context, name string, id IDInput, state *CustomPluginState, opts ...ResourceOption) (*CustomPlugin, error)
public static CustomPlugin Get(string name, Input<string> id, CustomPluginState? state, CustomResourceOptions? opts = null)
public static CustomPlugin get(String name, Output<String> id, CustomPluginState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- the Amazon Resource Name (ARN) of the custom plugin.
- Content
Type string - The type of the plugin file. Allowed values are
ZIP
andJAR
. - Description string
- A summary description of the custom plugin.
- Latest
Revision int - an ID of the latest successfully created revision of the custom plugin.
- Location
Custom
Plugin Location - Information about the location of a custom plugin. See
location
Block for details. - Name string
- The name of the custom plugin..
- State string
- the state of the custom plugin.
- Dictionary<string, string>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Arn string
- the Amazon Resource Name (ARN) of the custom plugin.
- Content
Type string - The type of the plugin file. Allowed values are
ZIP
andJAR
. - Description string
- A summary description of the custom plugin.
- Latest
Revision int - an ID of the latest successfully created revision of the custom plugin.
- Location
Custom
Plugin Location Args - Information about the location of a custom plugin. See
location
Block for details. - Name string
- The name of the custom plugin..
- State string
- the state of the custom plugin.
- map[string]string
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- map[string]string
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- the Amazon Resource Name (ARN) of the custom plugin.
- content
Type String - The type of the plugin file. Allowed values are
ZIP
andJAR
. - description String
- A summary description of the custom plugin.
- latest
Revision Integer - an ID of the latest successfully created revision of the custom plugin.
- location
Custom
Plugin Location - Information about the location of a custom plugin. See
location
Block for details. - name String
- The name of the custom plugin..
- state String
- the state of the custom plugin.
- Map<String,String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn string
- the Amazon Resource Name (ARN) of the custom plugin.
- content
Type string - The type of the plugin file. Allowed values are
ZIP
andJAR
. - description string
- A summary description of the custom plugin.
- latest
Revision number - an ID of the latest successfully created revision of the custom plugin.
- location
Custom
Plugin Location - Information about the location of a custom plugin. See
location
Block for details. - name string
- The name of the custom plugin..
- state string
- the state of the custom plugin.
- {[key: string]: string}
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn str
- the Amazon Resource Name (ARN) of the custom plugin.
- content_
type str - The type of the plugin file. Allowed values are
ZIP
andJAR
. - description str
- A summary description of the custom plugin.
- latest_
revision int - an ID of the latest successfully created revision of the custom plugin.
- location
Custom
Plugin Location Args - Information about the location of a custom plugin. See
location
Block for details. - name str
- The name of the custom plugin..
- state str
- the state of the custom plugin.
- Mapping[str, str]
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- the Amazon Resource Name (ARN) of the custom plugin.
- content
Type String - The type of the plugin file. Allowed values are
ZIP
andJAR
. - description String
- A summary description of the custom plugin.
- latest
Revision Number - an ID of the latest successfully created revision of the custom plugin.
- location Property Map
- Information about the location of a custom plugin. See
location
Block for details. - name String
- The name of the custom plugin..
- state String
- the state of the custom plugin.
- Map<String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.The following arguments are optional:
- Map<String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Supporting Types
CustomPluginLocation, CustomPluginLocationArgs
- S3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See
s3
Block for details..
- S3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See
s3
Block for details..
- s3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See
s3
Block for details..
- s3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See
s3
Block for details..
- s3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See
s3
Block for details..
- s3 Property Map
- Information of the plugin file stored in Amazon S3. See
s3
Block for details..
CustomPluginLocationS3, CustomPluginLocationS3Args
- Bucket
Arn string - The Amazon Resource Name (ARN) of an S3 bucket.
- File
Key string - The file key for an object in an S3 bucket.
- Object
Version string - The version of an object in an S3 bucket.
- Bucket
Arn string - The Amazon Resource Name (ARN) of an S3 bucket.
- File
Key string - The file key for an object in an S3 bucket.
- Object
Version string - The version of an object in an S3 bucket.
- bucket
Arn String - The Amazon Resource Name (ARN) of an S3 bucket.
- file
Key String - The file key for an object in an S3 bucket.
- object
Version String - The version of an object in an S3 bucket.
- bucket
Arn string - The Amazon Resource Name (ARN) of an S3 bucket.
- file
Key string - The file key for an object in an S3 bucket.
- object
Version string - The version of an object in an S3 bucket.
- bucket_
arn str - The Amazon Resource Name (ARN) of an S3 bucket.
- file_
key str - The file key for an object in an S3 bucket.
- object_
version str - The version of an object in an S3 bucket.
- bucket
Arn String - The Amazon Resource Name (ARN) of an S3 bucket.
- file
Key String - The file key for an object in an S3 bucket.
- object
Version String - The version of an object in an S3 bucket.
Import
Using pulumi import
, import MSK Connect Custom Plugin using the plugin’s arn
. For example:
$ pulumi import aws:mskconnect/customPlugin:CustomPlugin example 'arn:aws:kafkaconnect:eu-central-1:123456789012:custom-plugin/debezium-example/abcdefgh-1234-5678-9abc-defghijklmno-4'
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.