Skip to main content

cdk-mwaa

Project description

cdk-mwaa

This project provides an AWS CDK construct library for creating and managing Amazon Managed Workflows for Apache Airflow (MWAA) environments.

Features

  • Create and manage MWAA environments
  • Configure environment properties such as webserver access mode, Airflow version, environment class, and more
  • Validate and set default values for environment properties
  • Automatically create and configure necessary AWS resources such as S3 buckets and VPCs

Installation

To use this construct library in your AWS CDK project, add it as a dependency:

npm install cdk-mwaa
# or
yarn add cdk-mwaa

Usage

Here is an example of how to use the cdk-mwaa construct library in your AWS CDK project:

import * as path from 'node:path';
import * as cdk from 'aws-cdk-lib';
import * as mwaa from 'cdk-mwaa';

const app = new cdk.App();
const stack = new cdk.Stack(app, 'MwaaStack');

const dagStorage = new mwaa.DagStorage(stack, 'MyMwaaDagStorage', {
    bucketName: 'my-mwaa-dag-storage',
    dagsOptions: {
        localPath: path.join(__dirname, 'dags'),
        s3Path: 'dags/',
      },
    // additional configuration options...
});

new mwaa.Environment(stack, 'MyMwaaEnvironment', {
    name: 'my-mwaa-environment',
    dagStorage,
    airflowVersion: '2.10.3',
    sizing: mwaa.Sizing.mw1Micro(),
    // additional configuration options...
});

app.synth();

Enabling Secrets Backend

To enable the secrets backend for your MWAA environment, you can use the enableSecretsBackend method. This allows you to securely manage secrets and environment variables.

Here is an example of how to enable the secrets backend in your MWAA environment:

import * as cdk from 'aws-cdk-lib';
import * as mwaa from 'cdk-mwaa';

const app = new cdk.App();
const stack = new cdk.Stack(app, 'MwaaStack');

const dagStorage = new mwaa.DagStorage(stack, 'MyMwaaDagStorage', {
    bucketName: 'my-mwaa-dag-storage',
    // additional configuration options...
});

const environment = new mwaa.Environment(stack, 'MyMwaaEnvironment', {
    name: 'my-mwaa-environment',
    dagStorage,
    airflowVersion: '2.10.3',
    sizing: mwaa.Sizing.mw1Micro(),
    // additional configuration options...
});

// Enabling Secrets Backend
environment.enableSecretsBackend();

app.synth();

License

This project is licensed under the MIT License. See the LICENSE file for details.

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

cdk_mwaa-0.0.7.tar.gz (80.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cdk_mwaa-0.0.7-py3-none-any.whl (78.1 kB view details)

Uploaded Python 3

File details

Details for the file cdk_mwaa-0.0.7.tar.gz.

File metadata

  • Download URL: cdk_mwaa-0.0.7.tar.gz
  • Upload date:
  • Size: 80.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for cdk_mwaa-0.0.7.tar.gz
Algorithm Hash digest
SHA256 bbded3253d2782e8f2ade70357636d7de9dbc92eb94140b05eabe91157e58b75
MD5 f9768882c8a09ebc3e9e9b9cf422e53a
BLAKE2b-256 a2f67b5b11a66aebf8fd38e7f493aa4c9d47a047aa8b62a60ee772e7dd0ba728

See more details on using hashes here.

File details

Details for the file cdk_mwaa-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: cdk_mwaa-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 78.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for cdk_mwaa-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 bff544dad09560af26099a983c3d9459df787d77e337eacb60c9b3255a161d09
MD5 30efca50498a35f8f453b952391a26b0
BLAKE2b-256 2bcfcef94e83ea5c9a8ef8ef7992985c13f38f0523011a9b80bd6599857a7f26

See more details on using hashes here.

Supported by

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