GradientEdge CDK Utils
    Preparing search index...

    Provides a construct to create and deploy a site hosted with an clustered ECS/ELB backend

    import { SiteWithEcsBackend, SiteWithEcsBackendProps } '@gradientedge/cdk-utils'
    import { Construct } from 'constructs'

    class CustomConstruct extends SiteWithEcsBackend {
    constructor(parent: Construct, id: string, props: SiteWithEcsBackendProps) {
    super(parent, id, props)
    this.props = props
    this.id = id
    this.initResources()
    }
    }

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Methods

    Constructors

    Properties

    acmManager: AcmManager

    Manager for AWS Certificate Manager operations

    apiManager: ApiManager

    Manager for API Gateway operations

    appConfigManager: AppConfigManager

    Manager for AWS AppConfig operations

    cloudFrontManager: CloudFrontManager

    Manager for CloudFront distribution operations

    cloudTrailManager: CloudTrailManager

    Manager for CloudTrail operations

    cloudWatchManager: CloudWatchManager

    Manager for CloudWatch operations

    codeBuildManager: CodeBuildManager

    Manager for AWS CodeBuild operations

    dynamodbManager: DynamodbManager

    Manager for DynamoDB operations

    ecrManager: EcrManager

    Manager for Elastic Container Registry operations

    ecsManager: EcsManager

    Manager for Elastic Container Service operations

    efsManager: EfsManager

    Manager for Elastic File System operations

    eksManager: EksManager

    Manager for Elastic Kubernetes Service operations

    elasticacheManager: ElastiCacheManager

    Manager for ElastiCache operations

    eventManager: EventManager

    Manager for EventBridge operations

    eventTargetManager: EventTargetManager

    Manager for EventBridge target operations

    evidentlyManager: EvidentlyManager

    Manager for CloudWatch Evidently operations

    fullyQualifiedDomainName: string

    The fully qualified domain name resolved from domainName and subDomain

    iamManager: IamManager

    Manager for IAM operations

    id: string

    The scoped id of this construct

    kmsManager: KmsManager

    Manager for KMS operations

    lambdaManager: LambdaManager

    Manager for Lambda operations

    logManager: LogManager

    Manager for CloudWatch Logs operations

    node: Node

    The tree node.

    The site with ECS backend properties

    resourceNameFormatter: ResourceNameFormatter

    Utility for formatting resource names with prefix/suffix conventions

    route53Manager: Route53Manager

    Manager for Route53 operations

    s3Manager: S3Manager

    Manager for S3 operations

    secretsManager: SecretsManager

    Manager for Secrets Manager operations

    sfnManager: SfnManager

    Manager for Step Functions operations

    siteCachePolicy: CachePolicy

    The CloudFront cache policy

    siteCertificate: ICertificate

    The global (edge) SSL/TLS certificate

    siteCloudfrontFunction: IFunction

    The CloudFront function attached to the distribution

    siteDistribution: Distribution

    The CloudFront distribution for the site

    siteDomainNames: string[]

    The list of domain names associated with the CloudFront distribution

    siteEcsBuildArgs: any = {}

    Docker build arguments for the ECS container image

    siteEcsCluster: Cluster

    The ECS cluster

    siteEcsContainerImage: AssetImage

    The Docker container image for the ECS task

    siteEcsEnvironment: { [key: string]: string }

    The environment variables passed to the ECS container

    siteEcsListener: ApplicationListener

    The Application Load Balancer listener

    siteEcsLoadBalancer: ApplicationLoadBalancer

    The Application Load Balancer

    siteEcsLogGroup: LogGroup

    The CloudWatch log group for ECS task logs

    siteEcsPolicy: PolicyDocument

    The IAM policy for the ECS task execution role

    siteEcsRole: Role

    The IAM role for the ECS task execution

    siteEcsService: FargateService

    The ECS Fargate service

    siteEcsTargetGroup: ApplicationTargetGroup

    The ALB target group

    siteEcsTaskDefinition: FargateTaskDefinition

    The ECS Fargate task definition

    siteExternalDomainName: string

    The external domain name exposed to end users via CloudFront

    siteFileSystem: FileSystem

    The EFS file system for persistent storage

    siteFunctionAssociations: FunctionAssociation[]

    The CloudFront function associations for the distribution behaviours

    siteHostedZone: IHostedZone

    The Route53 hosted zone for the site domain

    siteInternalDomainName: string

    The internal domain name used by the ECS load balancer

    siteLogBucket: IBucket

    The S3 bucket used for ALB and CloudFront access logs

    siteOrigin: HttpOrigin

    The HTTP origin pointing to the ECS backend

    siteOriginRequestPolicy: OriginRequestPolicy

    The CloudFront origin request policy

    siteOriginResponseHeadersPolicy?: ResponseHeadersPolicy

    The CloudFront response headers policy

    siteRegionalCertificate: ICertificate

    The regional SSL/TLS certificate

    siteSecrets: any

    The resolved secrets from SecretsManager

    siteVpc: IVpc

    The VPC for the ECS cluster

    snsManager: SnsManager

    Manager for SNS operations

    sqsManager: SqsManager

    Manager for SQS operations

    ssmManager: SsmManager

    Manager for Systems Manager operations

    vpcManager: VpcManager

    Manager for VPC operations

    wafManager: WafManager

    Manager for WAF operations

    Methods

    • Parameters

      • id: string

        scoped id of the resource

      • value: string

        the value of the exported output

      • Optionaldescription: string

        optional description for the output

      • overrideId: boolean = true

        Flag which indicates whether to override the default logical id of the output

      Returns CfnOutput

    • Returns a string representation of this construct.

      Returns string

    • Applies one or more mixins to this construct.

      Mixins are applied in order. The list of constructs is captured at the start of the call, so constructs added by a mixin will not be visited. Use multiple with() calls if subsequent mixins should apply to added constructs.

      Parameters

      • ...mixins: IMixin[]

        The mixins to apply

      Returns IConstruct

      This construct for chaining

    • Checks if x is a construct.

      Use this method instead of instanceof to properly detect Construct instances, even when the construct library is symlinked.

      Explanation: in JavaScript, multiple copies of the constructs library on disk are seen as independent, completely different libraries. As a consequence, the class Construct in each copy of the constructs library is seen as a different class, and an instance of one class will not test as instanceof the other class. npm install will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the constructs library can be accidentally installed, and instanceof will behave unpredictably. It is safest to avoid using instanceof, and using this type-testing method instead.

      Parameters

      • x: any

        Any object

      Returns x is Construct

      true if x is an object created from a class which extends Construct.