diff --git a/sdk/dotnet/CloudFormation/CustomResourceEmulator.cs b/sdk/dotnet/CloudFormation/CustomResourceEmulator.cs new file mode 100644 index 0000000000..ea8b527dae --- /dev/null +++ b/sdk/dotnet/CloudFormation/CustomResourceEmulator.cs @@ -0,0 +1,160 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CloudFormation +{ + /// + /// TODO + /// + [AwsNativeResourceType("aws-native:cloudformation:CustomResourceEmulator")] + public partial class CustomResourceEmulator : global::Pulumi.CustomResource + { + /// + /// The name of the S3 bucket to use for storing the response from the Custom Resource. + /// + [Output("bucket")] + public Output Bucket { get; private set; } = null!; + + /// + /// The response data returned by invoking the Custom Resource. + /// + [Output("data")] + public Output> Data { get; private set; } = null!; + + /// + /// Whether the response data contains sensitive information that should be marked as secret and not logged. + /// + [Output("noEcho")] + public Output NoEcho { get; private set; } = null!; + + /// + /// The name or unique identifier that corresponds to the `PhysicalResourceId` included in the Custom Resource response. If no `PhysicalResourceId` is provided in the response, a random ID will be generated. + /// + [Output("physicalResourceId")] + public Output PhysicalResourceId { get; private set; } = null!; + + /// + /// The CloudFormation type of the Custom Resource provider. For example, `Custom::MyCustomResource`. + /// + [Output("resourceType")] + public Output ResourceType { get; private set; } = null!; + + /// + /// The service token, such as a Lambda function ARN, that is invoked when the resource is created, updated, or deleted. + /// + [Output("serviceToken")] + public Output ServiceToken { get; private set; } = null!; + + /// + /// A stand-in value for the CloudFormation stack ID. + /// + [Output("stackId")] + public Output StackId { get; private set; } = null!; + + + /// + /// Create a CustomResourceEmulator resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public CustomResourceEmulator(string name, CustomResourceEmulatorArgs args, CustomResourceOptions? options = null) + : base("aws-native:cloudformation:CustomResourceEmulator", name, args ?? new CustomResourceEmulatorArgs(), MakeResourceOptions(options, "")) + { + } + + private CustomResourceEmulator(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:cloudformation:CustomResourceEmulator", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing CustomResourceEmulator resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// A bag of options that control this resource's behavior + public static CustomResourceEmulator Get(string name, Input id, CustomResourceOptions? options = null) + { + return new CustomResourceEmulator(name, id, options); + } + } + + public sealed class CustomResourceEmulatorArgs : global::Pulumi.ResourceArgs + { + /// + /// The prefix to use for the bucket key when storing the response from the Custom Resource provider. + /// + [Input("bucketKeyPrefix", required: true)] + public Input BucketKeyPrefix { get; set; } = null!; + + /// + /// The name of the S3 bucket to use for storing the response from the Custom Resource. + /// + /// The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + /// + [Input("bucketName", required: true)] + public Input BucketName { get; set; } = null!; + + [Input("customResourceProperties", required: true)] + private InputMap? _customResourceProperties; + + /// + /// The properties to pass as an input to the Custom Resource. + /// The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + /// + public InputMap CustomResourceProperties + { + get => _customResourceProperties ?? (_customResourceProperties = new InputMap()); + set => _customResourceProperties = value; + } + + /// + /// The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + /// This is required for CloudFormation interoperability. + /// + [Input("resourceType", required: true)] + public Input ResourceType { get; set; } = null!; + + /// + /// The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + /// This can be a Lambda Function ARN with optional version or alias identifiers. + /// + /// The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + /// + [Input("serviceToken", required: true)] + public Input ServiceToken { get; set; } = null!; + + /// + /// A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + /// If not provided, the Pulumi Stack ID is used. + /// + [Input("stackId")] + public Input? StackId { get; set; } + + public CustomResourceEmulatorArgs() + { + } + public static new CustomResourceEmulatorArgs Empty => new CustomResourceEmulatorArgs(); + } +} diff --git a/sdk/go/aws/cloudformation/customResourceEmulator.go b/sdk/go/aws/cloudformation/customResourceEmulator.go new file mode 100644 index 0000000000..0d1da5d0fa --- /dev/null +++ b/sdk/go/aws/cloudformation/customResourceEmulator.go @@ -0,0 +1,211 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudformation + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// TODO +type CustomResourceEmulator struct { + pulumi.CustomResourceState + + // The name of the S3 bucket to use for storing the response from the Custom Resource. + Bucket pulumi.StringOutput `pulumi:"bucket"` + // The response data returned by invoking the Custom Resource. + Data pulumi.MapOutput `pulumi:"data"` + // Whether the response data contains sensitive information that should be marked as secret and not logged. + NoEcho pulumi.BoolOutput `pulumi:"noEcho"` + // The name or unique identifier that corresponds to the `PhysicalResourceId` included in the Custom Resource response. If no `PhysicalResourceId` is provided in the response, a random ID will be generated. + PhysicalResourceId pulumi.StringOutput `pulumi:"physicalResourceId"` + // The CloudFormation type of the Custom Resource provider. For example, `Custom::MyCustomResource`. + ResourceType pulumi.StringOutput `pulumi:"resourceType"` + // The service token, such as a Lambda function ARN, that is invoked when the resource is created, updated, or deleted. + ServiceToken pulumi.StringOutput `pulumi:"serviceToken"` + // A stand-in value for the CloudFormation stack ID. + StackId pulumi.StringOutput `pulumi:"stackId"` +} + +// NewCustomResourceEmulator registers a new resource with the given unique name, arguments, and options. +func NewCustomResourceEmulator(ctx *pulumi.Context, + name string, args *CustomResourceEmulatorArgs, opts ...pulumi.ResourceOption) (*CustomResourceEmulator, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.BucketKeyPrefix == nil { + return nil, errors.New("invalid value for required argument 'BucketKeyPrefix'") + } + if args.BucketName == nil { + return nil, errors.New("invalid value for required argument 'BucketName'") + } + if args.CustomResourceProperties == nil { + return nil, errors.New("invalid value for required argument 'CustomResourceProperties'") + } + if args.ResourceType == nil { + return nil, errors.New("invalid value for required argument 'ResourceType'") + } + if args.ServiceToken == nil { + return nil, errors.New("invalid value for required argument 'ServiceToken'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource CustomResourceEmulator + err := ctx.RegisterResource("aws-native:cloudformation:CustomResourceEmulator", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetCustomResourceEmulator gets an existing CustomResourceEmulator resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetCustomResourceEmulator(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *CustomResourceEmulatorState, opts ...pulumi.ResourceOption) (*CustomResourceEmulator, error) { + var resource CustomResourceEmulator + err := ctx.ReadResource("aws-native:cloudformation:CustomResourceEmulator", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering CustomResourceEmulator resources. +type customResourceEmulatorState struct { +} + +type CustomResourceEmulatorState struct { +} + +func (CustomResourceEmulatorState) ElementType() reflect.Type { + return reflect.TypeOf((*customResourceEmulatorState)(nil)).Elem() +} + +type customResourceEmulatorArgs struct { + // The prefix to use for the bucket key when storing the response from the Custom Resource provider. + BucketKeyPrefix string `pulumi:"bucketKeyPrefix"` + // The name of the S3 bucket to use for storing the response from the Custom Resource. + // + // The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + BucketName string `pulumi:"bucketName"` + // The properties to pass as an input to the Custom Resource. + // The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + CustomResourceProperties map[string]interface{} `pulumi:"customResourceProperties"` + // The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + // This is required for CloudFormation interoperability. + ResourceType string `pulumi:"resourceType"` + // The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + // This can be a Lambda Function ARN with optional version or alias identifiers. + // + // The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + ServiceToken string `pulumi:"serviceToken"` + // A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + // If not provided, the Pulumi Stack ID is used. + StackId *string `pulumi:"stackId"` +} + +// The set of arguments for constructing a CustomResourceEmulator resource. +type CustomResourceEmulatorArgs struct { + // The prefix to use for the bucket key when storing the response from the Custom Resource provider. + BucketKeyPrefix pulumi.StringInput + // The name of the S3 bucket to use for storing the response from the Custom Resource. + // + // The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + BucketName pulumi.StringInput + // The properties to pass as an input to the Custom Resource. + // The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + CustomResourceProperties pulumi.MapInput + // The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + // This is required for CloudFormation interoperability. + ResourceType pulumi.StringInput + // The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + // This can be a Lambda Function ARN with optional version or alias identifiers. + // + // The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + ServiceToken pulumi.StringInput + // A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + // If not provided, the Pulumi Stack ID is used. + StackId pulumi.StringPtrInput +} + +func (CustomResourceEmulatorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*customResourceEmulatorArgs)(nil)).Elem() +} + +type CustomResourceEmulatorInput interface { + pulumi.Input + + ToCustomResourceEmulatorOutput() CustomResourceEmulatorOutput + ToCustomResourceEmulatorOutputWithContext(ctx context.Context) CustomResourceEmulatorOutput +} + +func (*CustomResourceEmulator) ElementType() reflect.Type { + return reflect.TypeOf((**CustomResourceEmulator)(nil)).Elem() +} + +func (i *CustomResourceEmulator) ToCustomResourceEmulatorOutput() CustomResourceEmulatorOutput { + return i.ToCustomResourceEmulatorOutputWithContext(context.Background()) +} + +func (i *CustomResourceEmulator) ToCustomResourceEmulatorOutputWithContext(ctx context.Context) CustomResourceEmulatorOutput { + return pulumi.ToOutputWithContext(ctx, i).(CustomResourceEmulatorOutput) +} + +type CustomResourceEmulatorOutput struct{ *pulumi.OutputState } + +func (CustomResourceEmulatorOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CustomResourceEmulator)(nil)).Elem() +} + +func (o CustomResourceEmulatorOutput) ToCustomResourceEmulatorOutput() CustomResourceEmulatorOutput { + return o +} + +func (o CustomResourceEmulatorOutput) ToCustomResourceEmulatorOutputWithContext(ctx context.Context) CustomResourceEmulatorOutput { + return o +} + +// The name of the S3 bucket to use for storing the response from the Custom Resource. +func (o CustomResourceEmulatorOutput) Bucket() pulumi.StringOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.StringOutput { return v.Bucket }).(pulumi.StringOutput) +} + +// The response data returned by invoking the Custom Resource. +func (o CustomResourceEmulatorOutput) Data() pulumi.MapOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.MapOutput { return v.Data }).(pulumi.MapOutput) +} + +// Whether the response data contains sensitive information that should be marked as secret and not logged. +func (o CustomResourceEmulatorOutput) NoEcho() pulumi.BoolOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.BoolOutput { return v.NoEcho }).(pulumi.BoolOutput) +} + +// The name or unique identifier that corresponds to the `PhysicalResourceId` included in the Custom Resource response. If no `PhysicalResourceId` is provided in the response, a random ID will be generated. +func (o CustomResourceEmulatorOutput) PhysicalResourceId() pulumi.StringOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.StringOutput { return v.PhysicalResourceId }).(pulumi.StringOutput) +} + +// The CloudFormation type of the Custom Resource provider. For example, `Custom::MyCustomResource`. +func (o CustomResourceEmulatorOutput) ResourceType() pulumi.StringOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.StringOutput { return v.ResourceType }).(pulumi.StringOutput) +} + +// The service token, such as a Lambda function ARN, that is invoked when the resource is created, updated, or deleted. +func (o CustomResourceEmulatorOutput) ServiceToken() pulumi.StringOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.StringOutput { return v.ServiceToken }).(pulumi.StringOutput) +} + +// A stand-in value for the CloudFormation stack ID. +func (o CustomResourceEmulatorOutput) StackId() pulumi.StringOutput { + return o.ApplyT(func(v *CustomResourceEmulator) pulumi.StringOutput { return v.StackId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CustomResourceEmulatorInput)(nil)).Elem(), &CustomResourceEmulator{}) + pulumi.RegisterOutputType(CustomResourceEmulatorOutput{}) +} diff --git a/sdk/go/aws/cloudformation/init.go b/sdk/go/aws/cloudformation/init.go index 56cb49ce57..68f5024fc2 100644 --- a/sdk/go/aws/cloudformation/init.go +++ b/sdk/go/aws/cloudformation/init.go @@ -21,6 +21,8 @@ func (m *module) Version() semver.Version { func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { switch typ { + case "aws-native:cloudformation:CustomResourceEmulator": + r = &CustomResourceEmulator{} case "aws-native:cloudformation:HookDefaultVersion": r = &HookDefaultVersion{} case "aws-native:cloudformation:HookTypeConfig": diff --git a/sdk/nodejs/cloudformation/customResourceEmulator.ts b/sdk/nodejs/cloudformation/customResourceEmulator.ts new file mode 100644 index 0000000000..a1863f06d9 --- /dev/null +++ b/sdk/nodejs/cloudformation/customResourceEmulator.ts @@ -0,0 +1,152 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * TODO + */ +export class CustomResourceEmulator extends pulumi.CustomResource { + /** + * Get an existing CustomResourceEmulator resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): CustomResourceEmulator { + return new CustomResourceEmulator(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:cloudformation:CustomResourceEmulator'; + + /** + * Returns true if the given object is an instance of CustomResourceEmulator. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is CustomResourceEmulator { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === CustomResourceEmulator.__pulumiType; + } + + /** + * The name of the S3 bucket to use for storing the response from the Custom Resource. + */ + public /*out*/ readonly bucket!: pulumi.Output; + /** + * The response data returned by invoking the Custom Resource. + */ + public /*out*/ readonly data!: pulumi.Output<{[key: string]: any}>; + /** + * Whether the response data contains sensitive information that should be marked as secret and not logged. + */ + public /*out*/ readonly noEcho!: pulumi.Output; + /** + * The name or unique identifier that corresponds to the `PhysicalResourceId` included in the Custom Resource response. If no `PhysicalResourceId` is provided in the response, a random ID will be generated. + */ + public /*out*/ readonly physicalResourceId!: pulumi.Output; + /** + * The CloudFormation type of the Custom Resource provider. For example, `Custom::MyCustomResource`. + */ + public readonly resourceType!: pulumi.Output; + /** + * The service token, such as a Lambda function ARN, that is invoked when the resource is created, updated, or deleted. + */ + public readonly serviceToken!: pulumi.Output; + /** + * A stand-in value for the CloudFormation stack ID. + */ + public readonly stackId!: pulumi.Output; + + /** + * Create a CustomResourceEmulator resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: CustomResourceEmulatorArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.bucketKeyPrefix === undefined) && !opts.urn) { + throw new Error("Missing required property 'bucketKeyPrefix'"); + } + if ((!args || args.bucketName === undefined) && !opts.urn) { + throw new Error("Missing required property 'bucketName'"); + } + if ((!args || args.customResourceProperties === undefined) && !opts.urn) { + throw new Error("Missing required property 'customResourceProperties'"); + } + if ((!args || args.resourceType === undefined) && !opts.urn) { + throw new Error("Missing required property 'resourceType'"); + } + if ((!args || args.serviceToken === undefined) && !opts.urn) { + throw new Error("Missing required property 'serviceToken'"); + } + resourceInputs["bucketKeyPrefix"] = args ? args.bucketKeyPrefix : undefined; + resourceInputs["bucketName"] = args ? args.bucketName : undefined; + resourceInputs["customResourceProperties"] = args ? args.customResourceProperties : undefined; + resourceInputs["resourceType"] = args ? args.resourceType : undefined; + resourceInputs["serviceToken"] = args ? args.serviceToken : undefined; + resourceInputs["stackId"] = args ? args.stackId : undefined; + resourceInputs["bucket"] = undefined /*out*/; + resourceInputs["data"] = undefined /*out*/; + resourceInputs["noEcho"] = undefined /*out*/; + resourceInputs["physicalResourceId"] = undefined /*out*/; + } else { + resourceInputs["bucket"] = undefined /*out*/; + resourceInputs["data"] = undefined /*out*/; + resourceInputs["noEcho"] = undefined /*out*/; + resourceInputs["physicalResourceId"] = undefined /*out*/; + resourceInputs["resourceType"] = undefined /*out*/; + resourceInputs["serviceToken"] = undefined /*out*/; + resourceInputs["stackId"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(CustomResourceEmulator.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a CustomResourceEmulator resource. + */ +export interface CustomResourceEmulatorArgs { + /** + * The prefix to use for the bucket key when storing the response from the Custom Resource provider. + */ + bucketKeyPrefix: pulumi.Input; + /** + * The name of the S3 bucket to use for storing the response from the Custom Resource. + * + * The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + */ + bucketName: pulumi.Input; + /** + * The properties to pass as an input to the Custom Resource. + * The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + */ + customResourceProperties: pulumi.Input<{[key: string]: any}>; + /** + * The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + * This is required for CloudFormation interoperability. + */ + resourceType: pulumi.Input; + /** + * The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + * This can be a Lambda Function ARN with optional version or alias identifiers. + * + * The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + */ + serviceToken: pulumi.Input; + /** + * A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + * If not provided, the Pulumi Stack ID is used. + */ + stackId?: pulumi.Input; +} diff --git a/sdk/nodejs/cloudformation/index.ts b/sdk/nodejs/cloudformation/index.ts index fdcfe29190..20c88e7a54 100644 --- a/sdk/nodejs/cloudformation/index.ts +++ b/sdk/nodejs/cloudformation/index.ts @@ -5,6 +5,11 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; // Export members: +export { CustomResourceEmulatorArgs } from "./customResourceEmulator"; +export type CustomResourceEmulator = import("./customResourceEmulator").CustomResourceEmulator; +export const CustomResourceEmulator: typeof import("./customResourceEmulator").CustomResourceEmulator = null as any; +utilities.lazyLoad(exports, ["CustomResourceEmulator"], () => require("./customResourceEmulator")); + export { GetHookDefaultVersionArgs, GetHookDefaultVersionResult, GetHookDefaultVersionOutputArgs } from "./getHookDefaultVersion"; export const getHookDefaultVersion: typeof import("./getHookDefaultVersion").getHookDefaultVersion = null as any; export const getHookDefaultVersionOutput: typeof import("./getHookDefaultVersion").getHookDefaultVersionOutput = null as any; @@ -128,6 +133,8 @@ const _module = { version: utilities.getVersion(), construct: (name: string, type: string, urn: string): pulumi.Resource => { switch (type) { + case "aws-native:cloudformation:CustomResourceEmulator": + return new CustomResourceEmulator(name, undefined, { urn }) case "aws-native:cloudformation:HookDefaultVersion": return new HookDefaultVersion(name, undefined, { urn }) case "aws-native:cloudformation:HookTypeConfig": diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index cc157a77b1..0b53dfb219 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -333,6 +333,7 @@ "cleanroomsml/getTrainingDataset.ts", "cleanroomsml/index.ts", "cleanroomsml/trainingDataset.ts", + "cloudformation/customResourceEmulator.ts", "cloudformation/getHookDefaultVersion.ts", "cloudformation/getHookTypeConfig.ts", "cloudformation/getHookVersion.ts", diff --git a/sdk/python/pulumi_aws_native/__init__.py b/sdk/python/pulumi_aws_native/__init__.py index 68642e0a7a..69d2d97614 100644 --- a/sdk/python/pulumi_aws_native/__init__.py +++ b/sdk/python/pulumi_aws_native/__init__.py @@ -1059,6 +1059,7 @@ "mod": "cloudformation", "fqn": "pulumi_aws_native.cloudformation", "classes": { + "aws-native:cloudformation:CustomResourceEmulator": "CustomResourceEmulator", "aws-native:cloudformation:HookDefaultVersion": "HookDefaultVersion", "aws-native:cloudformation:HookTypeConfig": "HookTypeConfig", "aws-native:cloudformation:HookVersion": "HookVersion", diff --git a/sdk/python/pulumi_aws_native/cloudformation/__init__.py b/sdk/python/pulumi_aws_native/cloudformation/__init__.py index 2859a6ec08..eb0dcf4098 100644 --- a/sdk/python/pulumi_aws_native/cloudformation/__init__.py +++ b/sdk/python/pulumi_aws_native/cloudformation/__init__.py @@ -6,6 +6,7 @@ import typing # Export this package's modules as members: from ._enums import * +from .custom_resource_emulator import * from .get_hook_default_version import * from .get_hook_type_config import * from .get_hook_version import *