MDAA TS Docs
    Preparing search index...

    Interface MdaaMwaaEnvironmentProps

    Properties for the MdaaMwaaEnvironment construct.

    interface MdaaMwaaEnvironmentProps {
        airflowConfigurationOptions?: { [key: string]: string };
        airflowVersion?: string;
        createOutputs?: boolean;
        createParams?: boolean;
        dagS3Path?: string;
        environmentClass?: string;
        environmentName: string;
        executionRoleArn: string;
        kmsKey: IKey;
        loggingConfiguration?: MwaaLoggingConfig;
        logRetention?: RetentionDays;
        maxWebservers?: number;
        maxWorkers?: number;
        minWebservers?: number;
        minWorkers?: number;
        naming: IMdaaResourceNaming;
        networkConfiguration: MwaaNetworkConfig;
        pluginsS3Path?: string;
        requirementsS3Path?: string;
        schedulers?: number;
        sourceBucketArn: string;
        startupScriptS3Path?: string;
        webserverAccessMode?: MwaaWebserverAccessMode;
        weeklyMaintenanceWindowStart?: string;
    }

    Hierarchy (View Summary)

    Index

    Properties

    airflowConfigurationOptions?: { [key: string]: string }

    Airflow configuration overrides as key-value pairs. Keys use the format 'section.option' (e.g., 'core.default_timezone').

    airflowVersion?: string

    Apache Airflow version for the environment.

    '2.10.3'
    
    createOutputs?: boolean

    Flag controlling CloudFormation output and stack export creation for construct resources

    createParams?: boolean

    Flag controlling SSM parameter creation for construct resource references enabling

    dagS3Path?: string

    Relative path to the DAGs folder within the source bucket.

    'dags'
    
    environmentClass?: string

    Environment class determining container and database sizing.

    'mw1.small'
    
    environmentName: string

    Name of the MWAA environment. Processed through MDAA naming conventions.

    executionRoleArn: string

    ARN of the IAM execution role for the MWAA environment.

    kmsKey: IKey

    KMS key for encrypting environment data at rest. Encrypts the metadata database, DAG storage, and CloudWatch logs.

    loggingConfiguration?: MwaaLoggingConfig

    Logging configuration for each Airflow component.

    logRetention?: RetentionDays

    Retention period for the service-managed CloudWatch log groups MWAA creates for each enabled Airflow component. The construct pre-creates these log groups (KMS-encrypted, with this retention) so retention is applied by default rather than left at MWAA's never-expire default.

    RetentionDays.TWO_YEARS
    
    maxWebservers?: number

    Maximum number of web servers.

    maxWorkers?: number

    Maximum number of workers for auto-scaling.

    10
    
    minWebservers?: number

    Minimum number of web servers.

    minWorkers?: number

    Minimum number of workers for auto-scaling.

    1
    
    naming: IMdaaResourceNaming

    MDAA naming implementation for consistent resource naming across all MDAA constructs

    networkConfiguration: MwaaNetworkConfig

    Network configuration for the MWAA environment.

    pluginsS3Path?: string

    Relative path to the plugins ZIP file within the source bucket.

    requirementsS3Path?: string

    Relative path to the requirements.txt file within the source bucket.

    schedulers?: number

    Number of Airflow schedulers to run. When omitted, the property is left unset on the environment and MWAA applies its own service default of 2 — this construct does not impose a default of its own.

    sourceBucketArn: string

    ARN of the S3 bucket containing DAGs, plugins, and requirements.

    startupScriptS3Path?: string

    Relative path to the startup shell script within the source bucket.

    webserverAccessMode?: MwaaWebserverAccessMode

    Web server access mode controlling how the Airflow UI is accessed.

    WARNING: PUBLIC_ONLY exposes the Airflow web server to the public internet, removing the VPC network-isolation control. Access is still authenticated via IAM, but the endpoint is publicly reachable. Prefer the PRIVATE_ONLY default and reach the UI over VPN/Direct Connect or a VPC endpoint.

    'PRIVATE_ONLY'
    
    weeklyMaintenanceWindowStart?: string

    Weekly maintenance window start in 'DAY:HH:MM' format (UTC).

    'SUN:03:00'