CloudFormation allows you to define your AWS infrastructure in JSON or YAML files that can be managed witin your source code repository (Git for example). You can do pull requests and code reviews. When everything looks good, you can use these files as input into an automated process (CI/CD) that deploys your infrastructure changes.
So AWS Python CDK builds on AWS CloudFormation and uses it as the engine for provisioning AWS resources. It allows you to compose new abstractions that hide details and simplify common use cases, then it packages the code up as a library in Python. This blog shows you how to get sarted with AWS Python CDK.
Prerequisites
- Node.js (>= 8.11.x): Why? AWS CDK is developed in TypeScript and transpiled to JavaScript. Bindings for Python make use of the AWS CDK back-end running on Node.js, as does the cdk command-line tool.
- Your AWS profile and credentials
- Python >= 3.6
Install AWS Python CDK
1. Check npm version
2. Install AWS CDK$ npm -v 6.10.0
3. Check CDK version$ npm install -g aws-cdk/usr/local/bin/cdk -> /usr/local/lib/node_modules/aws-cdk/bin/cdk > core-js@2.6.9 postinstall /usr/local/lib/node_modules/aws-cdk/node_modules/core-js > node scripts/postinstall || echo "ignore" Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library! The project needs your help! Please consider supporting of core-js on Open Collective or Patreon: > https://opencollective.com/core-js > https://www.patreon.com/zloirock Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -) + aws-cdk@1.3.0
$ cdk --version 1.3.0 (build bba9914)4. Check Python version
$ python3.7 -V Python 3.7.15. Create a Python virtual env
$ python3.7 -m venv cdk-venv $ source cdk-venv/bin/activate (cdk-venv) $6. Updating Python Dependencies
(cdk-venv) $ which pip /Users/txu/code/cdk-venv/bin/pip (cdk-venv) $ pip install --upgrade aws-cdk.cdk Collecting aws-cdk.cdk Downloading https://files.pythonhosted.org/packages/45/77/07f23d943aece234c91230844595f5495ae6ef5be668b2c9e818ee479ef3/aws_cdk.cdk-0.36.1-py3-none-any.whl Collecting publication>=0.0.3 (from aws-cdk.cdk) ... Installing collected packages: publication, typing-extensions, mypy-extensions, attrs, cattrs, six, python-dateutil, jsii, aws-cdk.cdk Successfully installed attrs-19.1.0 aws-cdk.cdk-0.36.1 cattrs-0.9.0 jsii-0.13.4 mypy-extensions-0.4.1 publication-0.0.3 python-dateutil-2.8.0 six-1.12.0 typing-extensions-3.7.4
7. Create AWS profiles (If you don't have one already)
(cdk-venv) $ aws configure --profile test-dev AWS Access Key ID [None]: xxxxx AWS Secret Access Key [None]: xxxx Default region name [None]: ca-central-1 Default output format [None]: json8. Check CDK version
(cdk-venv) $ cdk --version 1.3.0 (build bba9914)
At this point, you have successfully installed AWS CDK for Python and connected your Python with AWS CDK.
In our next blog, we will create a example app stack.
No comments:
Post a Comment