cdktf-metaflow 0.0.7
High level cdktf construct to provision metaflow resources on AWS
License: Apache-2.0
Requires Python: >=3.6

# API Reference <a name="API Reference"></a>

## Constructs <a name="Constructs"></a>

### Common <a name="cdktf-metaflow.Common"></a>

#### Initializer <a name="cdktf-metaflow.Common.Initializer"></a>

```python
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from cdktf_metaflow import Common

Common(scope, Construct, id, string, options?: CommonOptions)
```

##### `scope`<sup>Required</sup> <a name="cdktf-metaflow.Common.parameter.scope"></a>

* *Type:* [`constructs.Construct`](#constructs.Construct)

---


##### `id`<sup>Required</sup> <a name="cdktf-metaflow.Common.parameter.id"></a>

* *Type:* `string`

---


##### `options`<sup>Optional</sup> <a name="cdktf-metaflow.Common.parameter.options"></a>

* *Type:* [`cdktf-metaflow.CommonOptions`](#cdktf-metaflow.CommonOptions)

---


#### Properties <a name="Properties"></a>

##### `appOutput`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.appOutput"></a>

* *Type:* `string`

---


##### `awsRegionsOutput`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.awsRegionsOutput"></a>

* *Type:* `string`

---


##### `envOutput`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.envOutput"></a>

* *Type:* `string`

---


##### `tagsOutput`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.tagsOutput"></a>

* *Type:* `string`

---


##### `workspaceSuffixOutput`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.workspaceSuffixOutput"></a>

* *Type:* `string`

---


##### `app`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.app"></a>

* *Type:* `any`

---


##### `env`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.env"></a>

* *Type:* `any`

---


##### `tags`<sup>Required</sup> <a name="cdktf-metaflow.Common.property.tags"></a>

* *Type:* `any`

---


### Metaflow <a name="cdktf-metaflow.Metaflow"></a>

#### Initializer <a name="cdktf-metaflow.Metaflow.Initializer"></a>

```python
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from cdktf_metaflow import Metaflow

Metaflow(scope, Construct, id, string, options, MetaflowOptions)
```

##### `scope`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.parameter.scope"></a>

* *Type:* [`constructs.Construct`](#constructs.Construct)

---


##### `id`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.parameter.id"></a>

* *Type:* `string`

---


##### `options`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.parameter.options"></a>

* *Type:* [`cdktf-metaflow.MetaflowOptions`](#cdktf-metaflow.MetaflowOptions)

---


#### Properties <a name="Properties"></a>

##### `apiGatewayRestApiIdKeyIdOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.apiGatewayRestApiIdKeyIdOutput"></a>

* *Type:* `string`

---


##### `datastoreS3BucketKmsKeyArnOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.datastoreS3BucketKmsKeyArnOutput"></a>

* *Type:* `string`

---


##### `metadataSvcEcsTaskRoleArnOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metadataSvcEcsTaskRoleArnOutput"></a>

* *Type:* `string`

---


##### `metaflowApiGatewayRestApiIdOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowApiGatewayRestApiIdOutput"></a>

* *Type:* `string`

---


##### `metaflowBatchContainerImageOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowBatchContainerImageOutput"></a>

* *Type:* `string`

---


##### `metaflowBatchJobQueueOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowBatchJobQueueOutput"></a>

* *Type:* `string`

---


##### `metaflowDatastoreSysrootS3Output`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowDatastoreSysrootS3Output"></a>

* *Type:* `string`

---


##### `metaflowDatatoolsS3RootOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowDatatoolsS3RootOutput"></a>

* *Type:* `string`

---


##### `metaflowEcsS3AccessIamRoleOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowEcsS3AccessIamRoleOutput"></a>

* *Type:* `string`

---


##### `metaflowEventsSfnAccessIamRoleOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowEventsSfnAccessIamRoleOutput"></a>

* *Type:* `string`

---


##### `metaflowProfileJsonOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowProfileJsonOutput"></a>

* *Type:* `string`

---


##### `metaflowS3BucketArnOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowS3BucketArnOutput"></a>

* *Type:* `string`

---


##### `metaflowS3BucketNameOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowS3BucketNameOutput"></a>

* *Type:* `string`

---


##### `metaflowServiceInternalUrlOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowServiceInternalUrlOutput"></a>

* *Type:* `string`

---


##### `metaflowServiceUrlOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowServiceUrlOutput"></a>

* *Type:* `string`

---


##### `metaflowSfnDynamoDbTableOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowSfnDynamoDbTableOutput"></a>

* *Type:* `string`

---


##### `metaflowSfnIamRoleOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.metaflowSfnIamRoleOutput"></a>

* *Type:* `string`

---


##### `migrationFunctionArnOutput`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.migrationFunctionArnOutput"></a>

* *Type:* `string`

---


##### `enableStepFunctions`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.enableStepFunctions"></a>

* *Type:* `boolean`

---


##### `resourcePrefix`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.resourcePrefix"></a>

* *Type:* `any`

---


##### `resourceSuffix`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.resourceSuffix"></a>

* *Type:* `any`

---


##### `subnet1Id`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.subnet1Id"></a>

* *Type:* `string`

---


##### `subnet2Id`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.subnet2Id"></a>

* *Type:* `string`

---


##### `tags`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.tags"></a>

* *Type:* {[ key: string ]: `string`}

---


##### `vpcCidrBlock`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.vpcCidrBlock"></a>

* *Type:* `string`

---


##### `vpcId`<sup>Required</sup> <a name="cdktf-metaflow.Metaflow.property.vpcId"></a>

* *Type:* `string`

---


##### `accessListCidrBlocks`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.accessListCidrBlocks"></a>

* *Type:* `string`[]

---


##### `apiBasicAuth`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.apiBasicAuth"></a>

* *Type:* `boolean`

---


##### `batchType`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.batchType"></a>

* *Type:* `string`

---


##### `computeEnvironmentDesiredVcpus`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.computeEnvironmentDesiredVcpus"></a>

* *Type:* `number`

---


##### `computeEnvironmentInstanceTypes`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.computeEnvironmentInstanceTypes"></a>

* *Type:* `string`[]

---


##### `computeEnvironmentMaxVcpus`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.computeEnvironmentMaxVcpus"></a>

* *Type:* `number`

---


##### `computeEnvironmentMinVcpus`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.computeEnvironmentMinVcpus"></a>

* *Type:* `number`

---


##### `enableCustomBatchContainerRegistry`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.enableCustomBatchContainerRegistry"></a>

* *Type:* `boolean`

---


##### `iamPartition`<sup>Optional</sup> <a name="cdktf-metaflow.Metaflow.property.iamPartition"></a>

* *Type:* `string`

---


## Structs <a name="Structs"></a>

### CommonOptions <a name="cdktf-metaflow.CommonOptions"></a>

#### Initializer <a name="[object Object].Initializer"></a>

```python
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from cdktf_metaflow import CommonOptions

common_options = {...}
```

##### `app`<sup>Optional</sup> <a name="cdktf-metaflow.CommonOptions.property.app"></a>

* *Type:* `any`
* *Default:* metaflow

undefined.

---


##### `env`<sup>Optional</sup> <a name="cdktf-metaflow.CommonOptions.property.env"></a>

* *Type:* `any`
* *Default:* dev

undefined.

---


##### `tags`<sup>Optional</sup> <a name="cdktf-metaflow.CommonOptions.property.tags"></a>

* *Type:* `any`
* *Default:* [object Object]

undefined.

---


### MetaflowOptions <a name="cdktf-metaflow.MetaflowOptions"></a>

#### Initializer <a name="[object Object].Initializer"></a>

```python
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from cdktf_metaflow import MetaflowOptions

metaflow_options = {...}
```

##### `enableStepFunctions`<sup>Required</sup> <a name="cdktf-metaflow.MetaflowOptions.property.enableStepFunctions"></a>

* *Type:* `boolean`

Provisions infrastructure for step functions if enabled.

---


##### `subnet1Id`<sup>Required</sup> <a name="cdktf-metaflow.MetaflowOptions.property.subnet1Id"></a>

* *Type:* `string`

First subnet used for availability zone redundancy.

---


##### `subnet2Id`<sup>Required</sup> <a name="cdktf-metaflow.MetaflowOptions.property.subnet2Id"></a>

* *Type:* `string`

Second subnet used for availability zone redundancy.

---


##### `tags`<sup>Required</sup> <a name="cdktf-metaflow.MetaflowOptions.property.tags"></a>

* *Type:* {[ key: string ]: `string`}

aws tags.

---


##### `vpcCidrBlock`<sup>Required</sup> <a name="cdktf-metaflow.MetaflowOptions.property.vpcCidrBlock"></a>

* *Type:* `string`

The VPC CIDR block that we'll access list on our Metadata Service API to allow all internal communications.

---


##### `vpcId`<sup>Required</sup> <a name="cdktf-metaflow.MetaflowOptions.property.vpcId"></a>

* *Type:* `string`

The id of the single VPC we stood up for all Metaflow resources to exist in.

---


##### `accessListCidrBlocks`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.accessListCidrBlocks"></a>

* *Type:* `string`[]

List of CIDRs we want to grant access to our Metaflow Metadata Service.

Usually this is our VPN's CIDR blocks.

---


##### `apiBasicAuth`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.apiBasicAuth"></a>

* *Type:* `boolean`
* *Default:* true

Enable basic auth for API Gateway?

(requires key export)

---


##### `batchType`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.batchType"></a>

* *Type:* `string`
* *Default:* ec2

AWS Batch Compute Type ('ec2', 'fargate').

---


##### `computeEnvironmentDesiredVcpus`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.computeEnvironmentDesiredVcpus"></a>

* *Type:* `number`
* *Default:* 8

Desired Starting VCPUs for Batch Compute Environment [0-16] for EC2 Batch Compute Environment (ignored for Fargate).

---


##### `computeEnvironmentInstanceTypes`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.computeEnvironmentInstanceTypes"></a>

* *Type:* `string`[]
* *Default:* c4.large,c4.xlarge,c4.2xlarge,c4.4xlarge,c4.8xlarge

The instance types for the compute environment.

---


##### `computeEnvironmentMaxVcpus`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.computeEnvironmentMaxVcpus"></a>

* *Type:* `number`
* *Default:* 64

Maximum VCPUs for Batch Compute Environment [16-96].

---


##### `computeEnvironmentMinVcpus`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.computeEnvironmentMinVcpus"></a>

* *Type:* `number`
* *Default:* 8

Minimum VCPUs for Batch Compute Environment [0-16] for EC2 Batch Compute Environment (ignored for Fargate).

---


##### `enableCustomBatchContainerRegistry`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.enableCustomBatchContainerRegistry"></a>

* *Type:* `boolean`

Provisions infrastructure for custom Amazon ECR container registry if enabled.

---


##### `iamPartition`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.iamPartition"></a>

* *Type:* `string`
* *Default:* aws

IAM Partition (Select aws-us-gov for AWS GovCloud, otherwise leave as is).

---


##### `resourcePrefix`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.resourcePrefix"></a>

* *Type:* `any`
* *Default:* metaflow

string prefix for all resources.

---


##### `resourceSuffix`<sup>Optional</sup> <a name="cdktf-metaflow.MetaflowOptions.property.resourceSuffix"></a>

* *Type:* `any`

string suffix for all resources.

---