1.153.1 • Published 2 years ago

@makemydeal/cdk-dr-constructs v1.153.1

Weekly downloads
498
License
ISC
Repository
-
Last release
2 years ago

@makemydeal/cdk-dr-constructs

This package contains DR specific implementations of most of the types above. This will take some opinions from Accelerate, for example, using the SSM Parameter Store to retrieve ARN values for IAM roles.

Constructs

NameDescription
EncryptionReads an Encryption Key from SSM /dr/global/encryption/{keyName} where Keyname is a property passed
IAMReads 7 different IAM roles from SSM all in /dr/global/iam. CodeBuild (NonProd and Prod), CodePipeline (NonProd and Prod), CloudFormation (NonProd and Prod) along with Lambda Execution Role (read during build from the appropriate account)
SsmPropertiesClass to read SSM properties.
VpcConfigGiven a VpcId, SecurityGroup Ids and Subnet Ids it will read these resources from the account/region given to the stack. VPC requires concrete values to be read (cannot come from SSM or other dynamic sources)
VpcEndpointGiven a VpcConfig, it can read an existing VPC Endpoint or create a new one.

Factories

The following factories exist to build their corresponding construct above. This allows these factories to be passed to the main stack allowing you to customize construction of the objects or supply your own object with your implementation.

  • EncryptionFactory
  • EncryptionFactoryProps (takes properties to specify region or a different key)
  • IamFactory
  • SsmPropertiesFactory
  • VpcConfigFactory

Usage

import { VpcConfigFactory } from '@makemydeal/cdk-dr-constructs';

const factory = VpcConfigFactory({
    // VPC Configuration coming from the process.env variables from CodeBuild.  These NEED to be concrete, cannot come from SSM directly in the stack
    vpcId,
    securityGroupIds,
    subnetIds
})

Parameter Store Dependencies

All Deployments

KeyConstructDescription
/dr/global/iam/code-build-service-roleIAMCode Build Service Role
/dr/global/iam/crossaccount-build-roleIAMRole used for cross account builds (production)
/dr/global/iam/code-pipeline-service-roleIAMCode Pipeline Service Role
/dr/global/iam/crossaccount-deploy-roleIAMRole used for cross account deployment (production)
/dr/global/iam/cfn-service-role-prodIAMProduction Account CloudFormation role
/dr/global/iam/cfn-service-roleIAMNon-Production Account CloudFormation role
/dr/global/iam/lambda-execution-roleIAMLambda Execution Role
/dr/global/iam/s3-replication-roleIAMRole used to set up replication between s3 buckets
/dr/global/certificates/makemydealcomDRCertificateDefault ARN to use for Certificate
/dr/global/network/hosted-zone-ids/makemydealcomDRHostedZoneDefault Hosted Zone ID

Single Region Deployments

To support backward compatibility, we will support the existing keys when a region is not specified.

KeyConstructDescription
/dr/global/encryption/basicKeyEncryptionKMS key used for encryption

Multi Region Deployments

For multi region deployments, we need to support a region for these values. This is used in the pipeline only so the keys change

KeyConstructDescription
/dr/global/cdk/regions/${region}/encryption/basicKeyEncryptionKMS key used for encryption
1.153.1

2 years ago

1.153.2-alpha.0

2 years ago

1.143.42

2 years ago

1.143.41

2 years ago

1.143.44

2 years ago

1.143.43

2 years ago

1.143.35

2 years ago

1.143.37

2 years ago

1.143.36

2 years ago

1.143.40

2 years ago

1.143.39

2 years ago

1.143.38

2 years ago

1.143.31

2 years ago

1.143.30

2 years ago

1.143.32

2 years ago

1.143.28

2 years ago

1.143.27

2 years ago

1.143.29

2 years ago

1.143.24

2 years ago

1.143.23

2 years ago

1.143.26

2 years ago

1.143.25

2 years ago

1.143.22

2 years ago

1.143.21

2 years ago

1.143.31-alpha.4

2 years ago

1.143.14-alpha.0

2 years ago

1.143.14

2 years ago

1.143.13-alpha.0

2 years ago

1.143.26-alpha.0

2 years ago

1.143.32-alpha.2

2 years ago

1.143.32-alpha.1

2 years ago

1.143.32-alpha.0

2 years ago

1.143.32-alpha.4

2 years ago

1.143.32-alpha.3

2 years ago

1.143.12-alpha.0

2 years ago

1.143.8-alpha.0

2 years ago

1.143.11-alpha.0

2 years ago

1.143.5

2 years ago

1.111.0

2 years ago

1.114.0

2 years ago

1.143.1

2 years ago

1.143.2

2 years ago

1.143.3

2 years ago

1.113.0

2 years ago

1.105.0

3 years ago

1.106.0

3 years ago

1.100.1-alpha.0

3 years ago

1.95.0

3 years ago

1.89.0

3 years ago

1.83.0

3 years ago

1.82.1-alpha.0

3 years ago

1.79.0

3 years ago

1.82.0

3 years ago

1.78.0

3 years ago

1.76.1-alpha.0

3 years ago

1.77.0

3 years ago

1.75.1-alpha.0

3 years ago

1.76.0

3 years ago

1.69.0

3 years ago

1.68.18-alpha.0

3 years ago

1.68.14-alpha.0

3 years ago

1.68.12-alpha.0

3 years ago

1.68.7-alpha.0

3 years ago

1.68.9-alpha.0

3 years ago

1.68.3-alpha.0

3 years ago

1.68.1-alpha.0

3 years ago

1.67.0

3 years ago

1.64.6-alpha.0

3 years ago

1.65.0

3 years ago

1.60.0

3 years ago

1.59.0

3 years ago

1.58.9-alpha.0

3 years ago

1.58.8-alpha.0

3 years ago

1.58.7-alpha.0

3 years ago

1.58.5-alpha.0

3 years ago

1.58.4-alpha.0

3 years ago

1.58.2-alpha.0

3 years ago

1.58.1-alpha.0

3 years ago

1.58.0

3 years ago

1.56.0

3 years ago

1.55.0

3 years ago

1.51.0

3 years ago

1.50.0

3 years ago

1.49.0-alpha.0

3 years ago

1.47.0

3 years ago

1.44.1-alpha.0

3 years ago

1.44.0

3 years ago

1.45.0

3 years ago

1.43.3-alpha.0

3 years ago

1.43.1-alpha.0

3 years ago

1.41.1-alpha.0

3 years ago

1.42.0

3 years ago

1.43.0

3 years ago

1.41.0

3 years ago

1.40.1-alpha.0

3 years ago

1.37.0

3 years ago

1.39.0

3 years ago

1.30.0

3 years ago

1.25.0

3 years ago

1.22.0

4 years ago

1.23.0

4 years ago

1.24.0

4 years ago

1.20.0

4 years ago

1.15.0

4 years ago

1.13.0

4 years ago

1.11.0

4 years ago

1.4.0

4 years ago

1.3.0

4 years ago

1.2.0

4 years ago

1.1.7-alpha.8

4 years ago

1.1.7-alpha.4

4 years ago

1.1.7-alpha.2

4 years ago

1.1.7-alpha.0

4 years ago

1.1.6

4 years ago

1.1.5

4 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.1-alpha.7

4 years ago

1.0.1-alpha.44

4 years ago

1.0.1-alpha.42

4 years ago

1.0.1-alpha.38

4 years ago

1.0.1-alpha.35

4 years ago

1.0.1-alpha.33

4 years ago

1.0.1-alpha.31

4 years ago

1.0.1-alpha.23

4 years ago

1.0.1-alpha.22

4 years ago

1.0.1-alpha.21

4 years ago

1.0.1-alpha.15

4 years ago

1.0.1-alpha.19

4 years ago

1.0.1-alpha.18

4 years ago

1.0.1-alpha.16

4 years ago

1.0.1-alpha.20

4 years ago

1.0.1-alpha.3

4 years ago

1.0.1-alpha.9

4 years ago

1.0.1-alpha.1

4 years ago

1.0.1-alpha.0

4 years ago