Skip to main content

cdk-extensions

Project description

Vibe.io

Vibe.io CDK extensions is a library of opinionated CDK constructs that will accelerate your project by laying a solid cloud foundation for your team to build on top of. Keeping your team focused on business value, while relying on a community to manage the common fundamentals like VPC, EKS, Cross Account Management, etc.

Meet the Maintainers

RightBrain Networks has spent the past decade forging cloud patterns, working with startups and enterprise clients to find the sweet spot where cloud infrastructure sits in a Software Development LifeCycle (SDLC). Identifying the right amount of self-service to unblock development, but with the right amount of support from operations to ensure we're building a secure, and auditable platform. We've found that the CDK construct library pattern lends itself in line with our goals, and provides a framework for adoption that enables us to share our work with the cloud operations community.

We are confident in our vision that Infrastructure as Code should follow an Environments as Cattle approach. We've attempted to open source our patterns many times throughout the years, by way of CloudFormation repositories and troposphere initiatives and the like. CDK broke this wide open for us. We're able to develop and iterate on our patterns with true imperative code, that can be imported as a library by a consumer and used as necessary.

If you need help, we're a community.

Use the GitHub issues to address problems

If you have immediate concerns, email Joe

Email: joe@rightbrainetworks.com

Joe Coleman

Getting Started

TypeScript

Installation

$ npm install cdk-extensions

Python

Installation

$ pip install cdk-extensions

Examples

AwsLoggingStack

Minimal deployable example creates the default logging strategy defined in AwsLoggingStack for Elastic Load Balancer, CloudFront, CloudTrail, VPC Flow Logs, S3 access logs, SES logs, and WAF logs. For each service, an S3 bucket is created and a Glue crawler to analyze and categorize the data and store the associated metadata in the AWS Glue Data Catalog. Default named queries have been defined for each AWS service. For more details on this and the other available stacks and constructs, consult the respective READMEs.

TypeScript

import { AwsLoggingStack } from 'cdk-extensions/stacks';
new AwsLoggingStack(this, 'AwsLoggingStack')

Python

from cdk_extensions.stacks import (
  AwsLoggingStack
)
aws_logging_stack = AwsLoggingStack(self, 'AwsLoggingStack')

Deploy

$ cdk deploy

CDK-Extensions Design Principles

All cdk-extensions constructs should

  • Expose their configurations so other resources can make informed decisions about the resource it’s working on.

  • Be fully compatible with aws-cdk-lib constructs

  • Expose every single field in the resources, so they can be configured

    • In some cases, this may rely on custom features built into the cdk-extensions constructs, to allow configuration of Cfn fields not normally exposed by CDK
    • Anything that can be configured on a resource should be something that can be customized using CDK
  • However, all fields have sane defaults, following best practices(i.e most secure way)

    • Using the most secure settings should be a feature one opts out of, not the other way around
    • We should be able to launch constructs that adhere to best practices without a lot of customization

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cdk-extensions-0.0.96.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

cdk_extensions-0.0.96-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file cdk-extensions-0.0.96.tar.gz.

File metadata

  • Download URL: cdk-extensions-0.0.96.tar.gz
  • Upload date:
  • Size: 2.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for cdk-extensions-0.0.96.tar.gz
Algorithm Hash digest
SHA256 a8c97d73a77a317353dda250eda73913692901c40b4bb487b46298bff2560d48
MD5 28786f158d5ae07d20ea26b63a5e5fa6
BLAKE2b-256 075d1f95573e43fd4d9f1f9359bd69193b710db198c0303a8443a956db9a8dc5

See more details on using hashes here.

File details

Details for the file cdk_extensions-0.0.96-py3-none-any.whl.

File metadata

File hashes

Hashes for cdk_extensions-0.0.96-py3-none-any.whl
Algorithm Hash digest
SHA256 08f741d19a6af72037773ecbddbfe72cf04b74b9fb518760b8a548e3d501710f
MD5 4c764f9c5979c690948793a4cf58be1f
BLAKE2b-256 120589628c015e85ed3924ea1078d70807aa8da5d8781fd4a6f19a0bf192b54c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page