Try AWS Native preview for resources not in the classic version.
aws.mskconnect.CustomPlugin
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
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": {
"bucketArn": example.arn,
"fileKey": 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)
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",
});
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"),
})
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")
.build());
custom_plugin_resource = aws.mskconnect.CustomPlugin("customPluginResource",
content_type="string",
location={
"s3": {
"bucketArn": "string",
"fileKey": "string",
"objectVersion": "string",
},
},
description="string",
name="string")
const customPluginResource = new aws.mskconnect.CustomPlugin("customPluginResource", {
contentType: "string",
location: {
s3: {
bucketArn: "string",
fileKey: "string",
objectVersion: "string",
},
},
description: "string",
name: "string",
});
type: aws:mskconnect:CustomPlugin
properties:
contentType: string
description: string
location:
s3:
bucketArn: string
fileKey: string
objectVersion: string
name: 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
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 below.
The following arguments are optional:
- Description string
- A summary description of the custom plugin.
- Name string
- The name of the custom plugin..
- 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 below.
The following arguments are optional:
- Description string
- A summary description of the custom plugin.
- Name string
- The name of the custom plugin..
- 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 below.
The following arguments are optional:
- description String
- A summary description of the custom plugin.
- name String
- The name of the custom plugin..
- 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 below.
The following arguments are optional:
- description string
- A summary description of the custom plugin.
- name string
- The name of the custom plugin..
- 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 below.
The following arguments are optional:
- description str
- A summary description of the custom plugin.
- name str
- The name of the custom plugin..
- 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 below.
The following arguments are optional:
- description String
- A summary description of the custom plugin.
- name String
- The name of the custom plugin..
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.
- 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.
- 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.
- 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.
- 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.
- 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.
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) -> 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 below.
The following arguments are optional:
- Name string
- The name of the custom plugin..
- State string
- the state of the custom plugin.
- 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 below.
The following arguments are optional:
- Name string
- The name of the custom plugin..
- State string
- the state of the custom plugin.
- 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 below.
The following arguments are optional:
- name String
- The name of the custom plugin..
- state String
- the state of the custom plugin.
- 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 below.
The following arguments are optional:
- name string
- The name of the custom plugin..
- state string
- the state of the custom plugin.
- 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 below.
The following arguments are optional:
- name str
- The name of the custom plugin..
- state str
- the state of the custom plugin.
- 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 below.
The following arguments are optional:
- name String
- The name of the custom plugin..
- state String
- the state of the custom plugin.
Supporting Types
CustomPluginLocation, CustomPluginLocationArgs
- S3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See below.
- S3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See below.
- s3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See below.
- s3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See below.
- s3
Custom
Plugin Location S3 - Information of the plugin file stored in Amazon S3. See below.
- s3 Property Map
- Information of the plugin file stored in Amazon S3. See below.
CustomPluginLocationS3, CustomPluginLocationS3Args
- Bucket
Arn string - File
Key string - Object
Version string
- Bucket
Arn string - File
Key string - Object
Version string
- bucket
Arn String - file
Key String - object
Version String
- bucket
Arn string - file
Key string - object
Version string
- bucket_
arn str - file_
key str - object_
version str
- bucket
Arn String - file
Key String - object
Version String
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.
Try AWS Native preview for resources not in the classic version.