class Aws::MWAA::Types::CreateEnvironmentInput

This section contains the Amazon Managed Workflows for Apache Airflow (MWAA) API reference documentation to create an environment. For more information, see [Get started with Amazon Managed Workflows for Apache Airflow].

[1]: docs.aws.amazon.com/mwaa/latest/userguide/get-started.html

@note When making an API call, you may pass CreateEnvironmentInput

data as a hash:

    {
      airflow_configuration_options: {
        "ConfigKey" => "ConfigValue",
      },
      airflow_version: "AirflowVersion",
      dag_s3_path: "RelativePath", # required
      environment_class: "EnvironmentClass",
      execution_role_arn: "IamRoleArn", # required
      kms_key: "KmsKey",
      logging_configuration: {
        dag_processing_logs: {
          enabled: false, # required
          log_level: "CRITICAL", # required, accepts CRITICAL, ERROR, WARNING, INFO, DEBUG
        },
        scheduler_logs: {
          enabled: false, # required
          log_level: "CRITICAL", # required, accepts CRITICAL, ERROR, WARNING, INFO, DEBUG
        },
        task_logs: {
          enabled: false, # required
          log_level: "CRITICAL", # required, accepts CRITICAL, ERROR, WARNING, INFO, DEBUG
        },
        webserver_logs: {
          enabled: false, # required
          log_level: "CRITICAL", # required, accepts CRITICAL, ERROR, WARNING, INFO, DEBUG
        },
        worker_logs: {
          enabled: false, # required
          log_level: "CRITICAL", # required, accepts CRITICAL, ERROR, WARNING, INFO, DEBUG
        },
      },
      max_workers: 1,
      min_workers: 1,
      name: "EnvironmentName", # required
      network_configuration: { # required
        security_group_ids: ["SecurityGroupId"],
        subnet_ids: ["SubnetId"],
      },
      plugins_s3_object_version: "S3ObjectVersion",
      plugins_s3_path: "RelativePath",
      requirements_s3_object_version: "S3ObjectVersion",
      requirements_s3_path: "RelativePath",
      schedulers: 1,
      source_bucket_arn: "S3BucketArn", # required
      tags: {
        "TagKey" => "TagValue",
      },
      webserver_access_mode: "PRIVATE_ONLY", # accepts PRIVATE_ONLY, PUBLIC_ONLY
      weekly_maintenance_window_start: "WeeklyMaintenanceWindowStart",
    }

@!attribute [rw] airflow_configuration_options

A list of key-value pairs containing the Apache Airflow
configuration options you want to attach to your environment. To
learn more, see [Apache Airflow configuration options][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html
@return [Hash<String,String>]

@!attribute [rw] airflow_version

The Apache Airflow version for your environment. For example,
`v1.10.12`. If no value is specified, defaults to the latest
version. Valid values: `v1.10.12`.
@return [String]

@!attribute [rw] dag_s3_path

The relative path to the DAGs folder on your Amazon S3 bucket. For
example, `dags`. To learn more, see [Adding or updating DAGs][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-folder.html
@return [String]

@!attribute [rw] environment_class

The environment class type. Valid values: `mw1.small`, `mw1.medium`,
`mw1.large`. To learn more, see [Amazon MWAA environment class][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html
@return [String]

@!attribute [rw] execution_role_arn

The Amazon Resource Name (ARN) of the execution role for your
environment. An execution role is an AWS Identity and Access
Management (IAM) role that grants MWAA permission to access AWS
services and resources used by your environment. For example,
`arn:aws:iam::123456789:role/my-execution-role`. To learn more, see
[Amazon MWAA Execution role][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html
@return [String]

@!attribute [rw] kms_key

The AWS Key Management Service (KMS) key to encrypt the data in your
environment. You can use an AWS owned CMK, or a Customer managed CMK
(advanced). To learn more, see [Get started with Amazon Managed
Workflows for Apache Airflow][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/get-started.html
@return [String]

@!attribute [rw] logging_configuration

Defines the Apache Airflow logs to send to CloudWatch Logs:
`DagProcessingLogs`, `SchedulerLogs`, `TaskLogs`, `WebserverLogs`,
`WorkerLogs`.
@return [Types::LoggingConfigurationInput]

@!attribute [rw] max_workers

The maximum number of workers that you want to run in your
environment. MWAA scales the number of Apache Airflow workers up to
the number you specify in the `MaxWorkers` field. For example, `20`.
When there are no more tasks running, and no more in the queue, MWAA
disposes of the extra workers leaving the one worker that is
included with your environment, or the number you specify in
`MinWorkers`.
@return [Integer]

@!attribute [rw] min_workers

The minimum number of workers that you want to run in your
environment. MWAA scales the number of Apache Airflow workers up to
the number you specify in the `MaxWorkers` field. When there are no
more tasks running, and no more in the queue, MWAA disposes of the
extra workers leaving the worker count you specify in the
`MinWorkers` field. For example, `2`.
@return [Integer]

@!attribute [rw] name

The name of the Amazon MWAA environment. For example,
`MyMWAAEnvironment`.
@return [String]

@!attribute [rw] network_configuration

The VPC networking components used to secure and enable network
traffic between the AWS resources for your environment. To learn
more, see [About networking on Amazon MWAA][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html
@return [Types::NetworkConfiguration]

@!attribute [rw] plugins_s3_object_version

The version of the plugins.zip file on your Amazon S3 bucket. A
version must be specified each time a plugins.zip file is updated.
To learn more, see [How S3 Versioning works][1].

[1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html
@return [String]

@!attribute [rw] plugins_s3_path

The relative path to the `plugins.zip` file on your Amazon S3
bucket. For example, `plugins.zip`. If specified, then the
plugins.zip version is required. To learn more, see [Installing
custom plugins][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-dag-import-plugins.html
@return [String]

@!attribute [rw] requirements_s3_object_version

The version of the requirements.txt file on your Amazon S3 bucket. A
version must be specified each time a requirements.txt file is
updated. To learn more, see [How S3 Versioning works][1].

[1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/versioning-workflows.html
@return [String]

@!attribute [rw] requirements_s3_path

The relative path to the `requirements.txt` file on your Amazon S3
bucket. For example, `requirements.txt`. If specified, then a file
version is required. To learn more, see [Installing Python
dependencies][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html
@return [String]

@!attribute [rw] schedulers

The number of Apache Airflow schedulers to run in your environment.
@return [Integer]

@!attribute [rw] source_bucket_arn

The Amazon Resource Name (ARN) of the Amazon S3 bucket where your
DAG code and supporting files are stored. For example,
`arn:aws:s3:::my-airflow-bucket-unique-name`. To learn more, see
[Create an Amazon S3 bucket for Amazon MWAA][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-s3-bucket.html
@return [String]

@!attribute [rw] tags

The key-value tag pairs you want to associate to your environment.
For example, `"Environment": "Staging"`. To learn more, see [Tagging
AWS resources][1].

[1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
@return [Hash<String,String>]

@!attribute [rw] webserver_access_mode

The Apache Airflow *Web server* access mode. To learn more, see
[Apache Airflow access modes][1].

[1]: https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html
@return [String]

@!attribute [rw] weekly_maintenance_window_start

The day and time of the week to start weekly maintenance updates of
your environment in the following format: `DAY:HH:MM`. For example:
`TUE:03:30`. You can specify a start time in 30 minute increments
only. Supported input includes the following:

* MON\|TUE\|WED\|THU\|FRI\|SAT\|SUN:(\[01\]\\\\d\|2\[0-3\]):(00\|30)

^
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/mwaa-2020-07-01/CreateEnvironmentInput AWS API Documentation

Constants

SENSITIVE