Interface IProductStackProps
Product stack props.
Namespace: Amazon.CDK.AWS.Servicecatalog
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface IProductStackProps
Syntax (vb)
Public Interface IProductStackProps
Remarks
ExampleMetadata: infused
Examples
using Amazon.CDK.AWS.Lambda;
using Amazon.CDK;
using Amazon.CDK.AWS.S3;
class LambdaProduct : ProductStack
{
public LambdaProduct(Construct scope, string id, ProductStackProps props) : base(scope, id, props)
{
new Function(this, "LambdaProduct", new FunctionProps {
Runtime = Runtime.PYTHON_3_9,
Code = Code.FromAsset("./assets"),
Handler = "index.handler"
});
}
}
var userDefinedBucket = new Bucket(this, "UserDefinedBucket", new BucketProps {
BucketName = "amzn-s3-demo-bucket"
});
var product = new CloudFormationProduct(this, "Product", new CloudFormationProductProps {
ProductName = "My Product",
Owner = "Product Owner",
ProductVersions = new [] { new CloudFormationProductVersion {
ProductVersionName = "v1",
CloudFormationTemplate = CloudFormationTemplate.FromProductStack(new LambdaProduct(this, "LambdaFunctionProduct", new ProductStackProps {
AssetBucket = userDefinedBucket
}))
} }
});
Synopsis
Properties
AssetBucket | A Bucket can be passed to store assets, enabling ProductStack Asset support. |
MemoryLimit | The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket. |
ServerSideEncryption | A ServerSideEncryption can be enabled to encrypt assets that are put into assetBucket. |
ServerSideEncryptionAwsKmsKeyId | For AWS_KMS ServerSideEncryption a KMS KeyId must be provided which will be used to encrypt assets. |
Properties
AssetBucket
A Bucket can be passed to store assets, enabling ProductStack Asset support.
virtual IBucket AssetBucket { get; }
Property Value
Remarks
Default: - No Bucket provided and Assets will not be supported.
MemoryLimit
The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket.
virtual Nullable<double> MemoryLimit { get; }
Property Value
System.Nullable<System.Double>
Remarks
If you are deploying large files, you will need to increase this number accordingly.
Default: 128
ServerSideEncryption
A ServerSideEncryption can be enabled to encrypt assets that are put into assetBucket.
virtual Nullable<ServerSideEncryption> ServerSideEncryption { get; }
Property Value
System.Nullable<ServerSideEncryption>
Remarks
Default: - No encryption is used
ServerSideEncryptionAwsKmsKeyId
For AWS_KMS ServerSideEncryption a KMS KeyId must be provided which will be used to encrypt assets.
virtual string ServerSideEncryptionAwsKmsKeyId { get; }
Property Value
System.String
Remarks
Default: - No KMS KeyId and SSE_KMS encryption cannot be used