We recommend new projects start with resources from the AWS provider.
aws-native.ExtensionResource
Explore with Pulumi AI
We recommend new projects start with resources from the AWS provider.
A special resource that enables deploying CloudFormation Extensions (third-party resources). An extension has to be pre-registered in your AWS account in order to use this resource.
Create ExtensionResource Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ExtensionResource(name: string, args: ExtensionResourceArgs, opts?: CustomResourceOptions);@overload
def ExtensionResource(resource_name: str,
                      args: ExtensionResourceArgs,
                      opts: Optional[ResourceOptions] = None)
@overload
def ExtensionResource(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      properties: Optional[Mapping[str, Any]] = None,
                      type: Optional[str] = None,
                      auto_naming: Optional[AutoNamingArgs] = None,
                      create_only: Optional[Sequence[str]] = None,
                      tags_property: Optional[str] = None,
                      tags_style: Optional[str] = None,
                      write_only: Optional[Sequence[str]] = None)func NewExtensionResource(ctx *Context, name string, args ExtensionResourceArgs, opts ...ResourceOption) (*ExtensionResource, error)public ExtensionResource(string name, ExtensionResourceArgs args, CustomResourceOptions? opts = null)
public ExtensionResource(String name, ExtensionResourceArgs args)
public ExtensionResource(String name, ExtensionResourceArgs args, CustomResourceOptions options)
type: aws-native:ExtensionResource
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 ExtensionResourceArgs
- 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 ExtensionResourceArgs
- 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 ExtensionResourceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ExtensionResourceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ExtensionResourceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
ExtensionResource 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 ExtensionResource resource accepts the following input properties:
- Properties Dictionary<string, object>
- Property bag containing the properties for the resource. These should be defined using the casing expected by the CloudControl API as these values are sent exact as provided.
- Type string
- CloudFormation type name. This has three parts, each separated by two colons. For AWS resources this starts with AWS::e.g.AWS::Logs::LogGroup. Third party resources should use a namespace prefix e.g.MyCompany::MyService::MyResource.
- AutoNaming Pulumi.Aws Native. Inputs. Auto Naming 
- Optional auto-naming specification for the resource. If provided and the name is not specified manually, the provider will automatically generate a name based on the Pulumi resource name and a random suffix.
- CreateOnly List<string>
- Property names as defined by createOnlyPropertiesin the CloudFormation schema. Create-only properties can't be set during updates, so will not be included in patches even if they are also marked as write-only, and will cause an error if attempted to be updated. Therefore any property here should also be included in thereplaceOnChangesresource option too. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- string
- Optional name of the property containing the tags. Defaults to "Tags" if the tagsStyleis set to either "stringMap" or "keyValueArray". This is used to apply default tags to the resource and can be ignored if not using default tags.
- string
- Optional style of tags this resource uses. Valid values are "stringMap", "keyValueArray" or "none". Defaults to keyValueArrayiftagsPropertyis set. This is used to apply default tags to the resource and can be ignored if not using default tags.
- WriteOnly List<string>
- Property names as defined by writeOnlyPropertiesin the CloudFormation schema. Write-only properties are not returned during read operations and have to be included in all update operations as CloudControl itself can't read their previous values. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- Properties map[string]interface{}
- Property bag containing the properties for the resource. These should be defined using the casing expected by the CloudControl API as these values are sent exact as provided.
- Type string
- CloudFormation type name. This has three parts, each separated by two colons. For AWS resources this starts with AWS::e.g.AWS::Logs::LogGroup. Third party resources should use a namespace prefix e.g.MyCompany::MyService::MyResource.
- AutoNaming AutoNaming Args 
- Optional auto-naming specification for the resource. If provided and the name is not specified manually, the provider will automatically generate a name based on the Pulumi resource name and a random suffix.
- CreateOnly []string
- Property names as defined by createOnlyPropertiesin the CloudFormation schema. Create-only properties can't be set during updates, so will not be included in patches even if they are also marked as write-only, and will cause an error if attempted to be updated. Therefore any property here should also be included in thereplaceOnChangesresource option too. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- string
- Optional name of the property containing the tags. Defaults to "Tags" if the tagsStyleis set to either "stringMap" or "keyValueArray". This is used to apply default tags to the resource and can be ignored if not using default tags.
- string
- Optional style of tags this resource uses. Valid values are "stringMap", "keyValueArray" or "none". Defaults to keyValueArrayiftagsPropertyis set. This is used to apply default tags to the resource and can be ignored if not using default tags.
- WriteOnly []string
- Property names as defined by writeOnlyPropertiesin the CloudFormation schema. Write-only properties are not returned during read operations and have to be included in all update operations as CloudControl itself can't read their previous values. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- properties Map<String,Object>
- Property bag containing the properties for the resource. These should be defined using the casing expected by the CloudControl API as these values are sent exact as provided.
- type String
- CloudFormation type name. This has three parts, each separated by two colons. For AWS resources this starts with AWS::e.g.AWS::Logs::LogGroup. Third party resources should use a namespace prefix e.g.MyCompany::MyService::MyResource.
- autoNaming AutoNaming 
- Optional auto-naming specification for the resource. If provided and the name is not specified manually, the provider will automatically generate a name based on the Pulumi resource name and a random suffix.
- createOnly List<String>
- Property names as defined by createOnlyPropertiesin the CloudFormation schema. Create-only properties can't be set during updates, so will not be included in patches even if they are also marked as write-only, and will cause an error if attempted to be updated. Therefore any property here should also be included in thereplaceOnChangesresource option too. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- String
- Optional name of the property containing the tags. Defaults to "Tags" if the tagsStyleis set to either "stringMap" or "keyValueArray". This is used to apply default tags to the resource and can be ignored if not using default tags.
- String
- Optional style of tags this resource uses. Valid values are "stringMap", "keyValueArray" or "none". Defaults to keyValueArrayiftagsPropertyis set. This is used to apply default tags to the resource and can be ignored if not using default tags.
- writeOnly List<String>
- Property names as defined by writeOnlyPropertiesin the CloudFormation schema. Write-only properties are not returned during read operations and have to be included in all update operations as CloudControl itself can't read their previous values. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- properties {[key: string]: any}
- Property bag containing the properties for the resource. These should be defined using the casing expected by the CloudControl API as these values are sent exact as provided.
- type string
- CloudFormation type name. This has three parts, each separated by two colons. For AWS resources this starts with AWS::e.g.AWS::Logs::LogGroup. Third party resources should use a namespace prefix e.g.MyCompany::MyService::MyResource.
- autoNaming AutoNaming 
- Optional auto-naming specification for the resource. If provided and the name is not specified manually, the provider will automatically generate a name based on the Pulumi resource name and a random suffix.
- createOnly string[]
- Property names as defined by createOnlyPropertiesin the CloudFormation schema. Create-only properties can't be set during updates, so will not be included in patches even if they are also marked as write-only, and will cause an error if attempted to be updated. Therefore any property here should also be included in thereplaceOnChangesresource option too. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- string
- Optional name of the property containing the tags. Defaults to "Tags" if the tagsStyleis set to either "stringMap" or "keyValueArray". This is used to apply default tags to the resource and can be ignored if not using default tags.
- string
- Optional style of tags this resource uses. Valid values are "stringMap", "keyValueArray" or "none". Defaults to keyValueArrayiftagsPropertyis set. This is used to apply default tags to the resource and can be ignored if not using default tags.
- writeOnly string[]
- Property names as defined by writeOnlyPropertiesin the CloudFormation schema. Write-only properties are not returned during read operations and have to be included in all update operations as CloudControl itself can't read their previous values. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- properties Mapping[str, Any]
- Property bag containing the properties for the resource. These should be defined using the casing expected by the CloudControl API as these values are sent exact as provided.
- type str
- CloudFormation type name. This has three parts, each separated by two colons. For AWS resources this starts with AWS::e.g.AWS::Logs::LogGroup. Third party resources should use a namespace prefix e.g.MyCompany::MyService::MyResource.
- auto_naming AutoNaming Args 
- Optional auto-naming specification for the resource. If provided and the name is not specified manually, the provider will automatically generate a name based on the Pulumi resource name and a random suffix.
- create_only Sequence[str]
- Property names as defined by createOnlyPropertiesin the CloudFormation schema. Create-only properties can't be set during updates, so will not be included in patches even if they are also marked as write-only, and will cause an error if attempted to be updated. Therefore any property here should also be included in thereplaceOnChangesresource option too. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- str
- Optional name of the property containing the tags. Defaults to "Tags" if the tagsStyleis set to either "stringMap" or "keyValueArray". This is used to apply default tags to the resource and can be ignored if not using default tags.
- str
- Optional style of tags this resource uses. Valid values are "stringMap", "keyValueArray" or "none". Defaults to keyValueArrayiftagsPropertyis set. This is used to apply default tags to the resource and can be ignored if not using default tags.
- write_only Sequence[str]
- Property names as defined by writeOnlyPropertiesin the CloudFormation schema. Write-only properties are not returned during read operations and have to be included in all update operations as CloudControl itself can't read their previous values. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- properties Map<Any>
- Property bag containing the properties for the resource. These should be defined using the casing expected by the CloudControl API as these values are sent exact as provided.
- type String
- CloudFormation type name. This has three parts, each separated by two colons. For AWS resources this starts with AWS::e.g.AWS::Logs::LogGroup. Third party resources should use a namespace prefix e.g.MyCompany::MyService::MyResource.
- autoNaming Property Map
- Optional auto-naming specification for the resource. If provided and the name is not specified manually, the provider will automatically generate a name based on the Pulumi resource name and a random suffix.
- createOnly List<String>
- Property names as defined by createOnlyPropertiesin the CloudFormation schema. Create-only properties can't be set during updates, so will not be included in patches even if they are also marked as write-only, and will cause an error if attempted to be updated. Therefore any property here should also be included in thereplaceOnChangesresource option too. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
- String
- Optional name of the property containing the tags. Defaults to "Tags" if the tagsStyleis set to either "stringMap" or "keyValueArray". This is used to apply default tags to the resource and can be ignored if not using default tags.
- String
- Optional style of tags this resource uses. Valid values are "stringMap", "keyValueArray" or "none". Defaults to keyValueArrayiftagsPropertyis set. This is used to apply default tags to the resource and can be ignored if not using default tags.
- writeOnly List<String>
- Property names as defined by writeOnlyPropertiesin the CloudFormation schema. Write-only properties are not returned during read operations and have to be included in all update operations as CloudControl itself can't read their previous values. In the CloudFormation schema these are fully qualified property paths (e.g./properties/AccessToken) whereas here we only include the top-level property name (e.g.AccessToken).
Outputs
All input properties are implicitly available as output properties. Additionally, the ExtensionResource resource produces the following output properties:
Supporting Types
AutoNaming, AutoNamingArgs    
- MaxLength int
- The maximum length of the name.
- MinLength int
- The minimum length of the name.
- PropertyName string
- The name of the property in the Cloud Control payload that is used to set the name of the resource.
- MaxLength int
- The maximum length of the name.
- MinLength int
- The minimum length of the name.
- PropertyName string
- The name of the property in the Cloud Control payload that is used to set the name of the resource.
- maxLength Integer
- The maximum length of the name.
- minLength Integer
- The minimum length of the name.
- propertyName String
- The name of the property in the Cloud Control payload that is used to set the name of the resource.
- maxLength number
- The maximum length of the name.
- minLength number
- The minimum length of the name.
- propertyName string
- The name of the property in the Cloud Control payload that is used to set the name of the resource.
- max_length int
- The maximum length of the name.
- min_length int
- The minimum length of the name.
- property_name str
- The name of the property in the Cloud Control payload that is used to set the name of the resource.
- maxLength Number
- The maximum length of the name.
- minLength Number
- The minimum length of the name.
- propertyName String
- The name of the property in the Cloud Control payload that is used to set the name of the resource.
Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
We recommend new projects start with resources from the AWS provider.