Skip to main content

Aviv CDK Python library

Project description

AVIV CDK for Python

A set of AWS CDK examples and constructs.

Install

Requires:

  • Python >= 3.6, pip
  • cdk
npm install -g aws-cdk
pip install aviv-cdk

# With 'extra' to install additionnal libraries
pip install aviv-cdk[data]

Use it

import aviv_cdk

CICD

from aws_cdk import App
from aviv_cdk.cicd.stack import CodePipelineStack

app = App()
CodePipelineStack(
    app, 'cicd-stack',
    connections={'myorg': dict(connection_name='myorg')},
    sources={'cicd-stack': dict(repo_string='myorg/repo', branch='main')},
    pipeline=dict(
        self_mutation=False
    )
  )
app.synth()

Route53

from aviv_cdk.route53 import DomainZone

# Creates a new HostedZone
z = DomainZone(stack, 'myzone', fqdn='mydomain.com')
# add record
z.a('toto.mydomain.com', '10.0.0.1')

# Use an existing Zone
z = DomainZone(stack, 'myzone', fqdn='mydomain.com', zone_id='42')
z.txt('mydomain.com', 'my-dummy-check')

RDS

Fargate

Development

Develop and contribute :)

Requirements:

  • pipenv, cdk client
  • [optional] docker & AWS codebuild docker image (standard >= 4.0)
git clone https://github.com/aviv-group/aviv-cdk-python && cd aviv-cdk-python
pipenv install -d -e .

# Build with codebuild agent - see: buildspec.yml
codebuild_build.sh -i aws/codebuild/standard:4.0 -a cdk.out

# Run tests
pipenv run pytest -v tests/

Build, distrib & release

Requires twine to be installed (pip install twine) and credentials to upload a new verison to pypi.

# Test and build
python3 setup.py sdist bdist_wheel

# Release on pypi
python3 -m twine upload --repository testpypi dist/*
python3 -m twine upload --repository pypi dist/*

Contribute

Yes please! Fork this project, tweak it and share it back by sending your PRs.
Have a look at the TODO's and changelog file if you're looking for inspiration.

License

This project is developed under the MIT license.

Author(s) and Contributors

Project details


Download files

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

Source Distribution

aviv-cdk-0.3.13.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

aviv_cdk-0.3.13-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file aviv-cdk-0.3.13.tar.gz.

File metadata

  • Download URL: aviv-cdk-0.3.13.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for aviv-cdk-0.3.13.tar.gz
Algorithm Hash digest
SHA256 03a51257dc9d6dfee54e86622245e8ebb7f7d02103a287b06058da73818b1833
MD5 5bae4610650f169e5658faf5786795fd
BLAKE2b-256 004eaec196abf028e7d7d60a226bdc3b7feb274987701859e41b5413ce2978a9

See more details on using hashes here.

File details

Details for the file aviv_cdk-0.3.13-py3-none-any.whl.

File metadata

  • Download URL: aviv_cdk-0.3.13-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for aviv_cdk-0.3.13-py3-none-any.whl
Algorithm Hash digest
SHA256 73ff69457f10f581457f934b943186693512c627fcbe4831d601b17f4d885ae8
MD5 f054af30e4c7e6ca6c1e7510bd03316f
BLAKE2b-256 a29af94a64733eb641a6db77d0e0687b088eb18f7921e34f49a086b2b7d4566e

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