Fugue.Core.AWS.EC2

Table of Contents

Module Members

CustomerGateway

(Type)

type CustomerGateway:
  | CustomerGateway
      type: VpnGatewayType
      ipAddress: String
      bgpAsn: Int
      tags: Optional<List<Tag>>
      region: Region

CustomerGateway

(Constructor)

Argument:

Record {

Field: type
Type: VpnGatewayType
Field: ipAddress
Type: String
Field: bgpAsn
Type: Int
Field: tags
Type: Optional<List<Tag>>
Field: region
Type: Region

}

DeviceType

(Type)

type DeviceType:
  | Ebs
  | InstanceStore

Ebs

(Constructor)

InstanceStore

(Constructor)

DhcpOptions

(Type)

type DhcpOptions:
  | DhcpOptions
      tags: Optional<List<Tag>>
      domainNameServers: Optional<List<String>>
      domainName: Optional<String>
      ntpServers: Optional<List<String>>
      netBiosNameServers: Optional<List<String>>
      netBiosNodeType: Optional<NetBiosNodeType>
      region: Region

DhcpOptions

(Constructor)

Argument:

Record {

Field: tags
Type: Optional<List<Tag>>
Field: domainNameServers
Type: Optional<List<String>>
Field: domainName
Type: Optional<String>
Field: ntpServers
Type: Optional<List<String>>
Field: netBiosNameServers
Type: Optional<List<String>>
Field: netBiosNodeType
Type: Optional<NetBiosNodeType>
Field: region
Type: Region

}

EbsInstanceBlockDevice

(Type)

type EbsInstanceBlockDevice:
  | EbsInstanceBlockDevice
      volume: Volume
      deleteOnTermination: Optional<Bool>

EbsInstanceBlockDevice

(Constructor)

Argument:

Record {

Field: volume
Type: Volume
Field: deleteOnTermination
Type: Optional<Bool>

}

ElasticIP

(Type)

type ElasticIP:
  | ElasticIP
      region: Region

ElasticIP

(Constructor)

Argument:

Record {

Field: region
Type: Region

}

ElasticIpAttachment

(Type)

type ElasticIpAttachment:
  | ElasticIpAttachment
      elasticIP: ElasticIP
      privateIP: Optional<String>

ElasticIpAttachment

(Constructor)

Argument:

Record {

Field: elasticIP
Type: ElasticIP
Field: privateIP
Type: Optional<String>

}

IcmpTypeCode

(Type)

type IcmpTypeCode:
  | IcmpTypeCode
      type: Int
      code: Int

IcmpTypeCode

(Constructor)

Argument:

Record {

Field: type
Type: Int
Field: code
Type: Int

}

Instance

(Type)

type Instance:
  | Instance
      keyName: Optional<String>
      instanceType: Optional<InstanceType>
      monitoring: Optional<Bool>
      blockDeviceMappings: Optional<List<InstanceBlockDeviceMapping>>
      tags: Optional<List<Tag>>
      iamInstanceProfile: Optional<InstanceProfile>
      ebsOptimized: Optional<Bool>
      sriovNetSupport: Optional<NotImplemented>
      image: String
      disableApiTermination: Optional<Bool>
      instanceInitiatedShutdownBehavior: Optional<InstanceShutdownBehavior>
      userData: Optional<String>
      kernel: Optional<NotImplemented>
      ramdisk: Optional<NotImplemented>
      enaSupport: Optional<NotImplemented>
      primaryNetworkInterface: PrimaryInstanceNetworkInterface
      secondaryNetworkInterfaces: Optional<List<InstanceNetworkInterfaceAttachment>>

Instance

(Constructor)

Argument:

Record {

Field: keyName
Type: Optional<String>
Field: instanceType
Type: Optional<InstanceType>
Field: monitoring
Type: Optional<Bool>
Field: blockDeviceMappings
Type: Optional<List<InstanceBlockDeviceMapping>>
Field: tags
Type: Optional<List<Tag>>
Field: iamInstanceProfile
Type: Optional<InstanceProfile>
Field: ebsOptimized
Type: Optional<Bool>
Field: sriovNetSupport
Type: Optional<NotImplemented>
Field: image
Type: String
Field: disableApiTermination
Type: Optional<Bool>
Field: instanceInitiatedShutdownBehavior
Type: Optional<InstanceShutdownBehavior>
Field: userData
Type: Optional<String>
Field: kernel
Type: Optional<NotImplemented>
Field: ramdisk
Type: Optional<NotImplemented>
Field: enaSupport
Type: Optional<NotImplemented>
Field: primaryNetworkInterface
Type: PrimaryInstanceNetworkInterface
Field: secondaryNetworkInterfaces
Type: Optional<List<InstanceNetworkInterfaceAttachment>>

}

InstanceBlockDeviceMapping

(Type)

type InstanceBlockDeviceMapping:
  | InstanceBlockDeviceMapping
      deviceName: String
      ebs: Optional<EbsInstanceBlockDevice>
      virtualName: Optional<String>
      noDevice: Optional<Bool>

InstanceBlockDeviceMapping

(Constructor)

Argument:

Record {

Field: deviceName
Type: String
Field: ebs
Type: Optional<EbsInstanceBlockDevice>
Field: virtualName
Type: Optional<String>
Field: noDevice
Type: Optional<Bool>

}

InstanceNetworkInterfaceAttachment

(Type)

type InstanceNetworkInterfaceAttachment:
  | InstanceNetworkInterfaceAttachment
      device: Int
      networkInterface: NetworkInterface

InstanceNetworkInterfaceAttachment

(Constructor)

Argument:

Record {

Field: device
Type: Int
Field: networkInterface
Type: NetworkInterface

}

InstanceShutdownBehavior

(Type)

type InstanceShutdownBehavior:
  | Stop
  | Terminate

Stop

(Constructor)

Terminate

(Constructor)

InstanceType

(Type)

type InstanceType:
  | T1_micro
  | M1_small
  | M1_medium
  | M1_large
  | M1_xlarge
  | M3_medium
  | M3_large
  | M3_xlarge
  | M3_2xlarge
  | M4_large
  | M4_xlarge
  | M4_2xlarge
  | M4_4xlarge
  | M4_10xlarge
  | T2_nano
  | T2_micro
  | T2_small
  | T2_medium
  | T2_large
  | M2_xlarge
  | M2_2xlarge
  | M2_4xlarge
  | Cr1_8xlarge
  | I2_xlarge
  | I2_2xlarge
  | I2_4xlarge
  | I2_8xlarge
  | Hi1_4xlarge
  | Hs1_8xlarge
  | C1_medium
  | C1_xlarge
  | C3_large
  | C3_xlarge
  | C3_2xlarge
  | C3_4xlarge
  | C3_8xlarge
  | C4_large
  | C4_xlarge
  | C4_2xlarge
  | C4_4xlarge
  | C4_8xlarge
  | Cc1_4xlarge
  | Cc2_8xlarge
  | G2_2xlarge
  | G2_8xlarge
  | Cg1_4xlarge
  | R3_large
  | R3_xlarge
  | R3_2xlarge
  | R3_4xlarge
  | R3_8xlarge
  | D2_xlarge
  | D2_2xlarge
  | D2_4xlarge
  | D2_8xlarge
  | M4_16xlarge
  | X1_16xlarge
  | X1_32xlarge
  | P2_xlarge
  | P2_8xlarge
  | P2_16xlarge

C1_medium

(Constructor)

C1_xlarge

(Constructor)

C3_2xlarge

(Constructor)

C3_4xlarge

(Constructor)

C3_8xlarge

(Constructor)

C3_large

(Constructor)

C3_xlarge

(Constructor)

C4_2xlarge

(Constructor)

C4_4xlarge

(Constructor)

C4_8xlarge

(Constructor)

C4_large

(Constructor)

C4_xlarge

(Constructor)

Cc1_4xlarge

(Constructor)

Cc2_8xlarge

(Constructor)

Cg1_4xlarge

(Constructor)

Cr1_8xlarge

(Constructor)

D2_2xlarge

(Constructor)

D2_4xlarge

(Constructor)

D2_8xlarge

(Constructor)

D2_xlarge

(Constructor)

G2_2xlarge

(Constructor)

G2_8xlarge

(Constructor)

Hi1_4xlarge

(Constructor)

Hs1_8xlarge

(Constructor)

I2_2xlarge

(Constructor)

I2_4xlarge

(Constructor)

I2_8xlarge

(Constructor)

I2_xlarge

(Constructor)

M1_large

(Constructor)

M1_medium

(Constructor)

M1_small

(Constructor)

M1_xlarge

(Constructor)

M2_2xlarge

(Constructor)

M2_4xlarge

(Constructor)

M2_xlarge

(Constructor)

M3_2xlarge

(Constructor)

M3_large

(Constructor)

M3_medium

(Constructor)

M3_xlarge

(Constructor)

M4_10xlarge

(Constructor)

M4_16xlarge

(Constructor)

M4_2xlarge

(Constructor)

M4_4xlarge

(Constructor)

M4_large

(Constructor)

M4_xlarge

(Constructor)

P2_16xlarge

(Constructor)

P2_8xlarge

(Constructor)

P2_xlarge

(Constructor)

R3_2xlarge

(Constructor)

R3_4xlarge

(Constructor)

R3_8xlarge

(Constructor)

R3_large

(Constructor)

R3_xlarge

(Constructor)

T1_micro

(Constructor)

T2_large

(Constructor)

T2_medium

(Constructor)

T2_micro

(Constructor)

T2_nano

(Constructor)

T2_small

(Constructor)

X1_16xlarge

(Constructor)

X1_32xlarge

(Constructor)

InternetGateway

(Type)

type InternetGateway:
  | InternetGateway
      tags: Optional<List<Tag>>
      vpc: Optional<Vpc>
      region: Region

InternetGateway

(Constructor)

Argument:

Record {

Field: tags
Type: Optional<List<Tag>>
Field: vpc
Type: Optional<Vpc>
Field: region
Type: Region

}

IpPermission

(Type)

type IpPermission:
  | IpPermission
      ipProtocol: String
      fromPort: Int
      toPort: Int
      prefixLists: Optional<NotImplemented>
      target: IpPermissionTarget

IpPermission

(Constructor)

Argument:

Record {

Field: ipProtocol
Type: String
Field: fromPort
Type: Int
Field: toPort
Type: Int
Field: prefixLists
Type: Optional<NotImplemented>
Field: target
Type: IpPermissionTarget

}

IpPermissionTarget

(Type)

type IpPermissionTarget:
  | IpRanges List<IpRange>
  | SecurityGroups List<SecurityGroup>

IpRanges

(Constructor)

Argument:
Ludwig.List<IpRange>

SecurityGroups

(Constructor)

Argument:
Ludwig.List<SecurityGroup>

IpRange

(Type)

type IpRange:
  | IpRange
      cidrIp: String

IpRange

(Constructor)

Argument:

Record {

Field: cidrIp
Type: String

}

NatGateway

(Type)

type NatGateway:
  | NatGateway
      subnet: Subnet
      elasticIP: ElasticIP

NatGateway

(Constructor)

Argument:

Record {

Field: subnet
Type: Subnet
Field: elasticIP
Type: ElasticIP

}

NetBiosNodeType

(Type)

type NetBiosNodeType:
  | BNode
  | HNode
  | MNode
  | PNode

BNode

(Constructor)

HNode

(Constructor)

MNode

(Constructor)

PNode

(Constructor)

NetworkAcl

(Type)

type NetworkAcl:
  | NetworkAcl
      vpc: Vpc
      entries: Optional<List<NetworkAclEntry>>
      associations: Optional<List<Subnet>>
      tags: Optional<List<Tag>>

NetworkAcl

(Constructor)

Argument:

Record {

Field: vpc
Type: Vpc
Field: entries
Type: Optional<List<NetworkAclEntry>>
Field: associations
Type: Optional<List<Subnet>>
Field: tags
Type: Optional<List<Tag>>

}

NetworkAclEntry

(Type)

type NetworkAclEntry:
  | NetworkAclEntry
      ruleNumber: Int
      protocol: String
      ruleAction: RuleAction
      egress: Bool
      cidrBlock: String
      icmpTypeCode: Optional<IcmpTypeCode>
      portRange: Optional<PortRange>

NetworkAclEntry

(Constructor)

Argument:

Record {

Field: ruleNumber
Type: Int
Field: protocol
Type: String
Field: ruleAction
Type: RuleAction
Field: egress
Type: Bool
Field: cidrBlock
Type: String
Field: icmpTypeCode
Type: Optional<IcmpTypeCode>
Field: portRange
Type: Optional<PortRange>

}

NetworkInterface

(Type)

type NetworkInterface:
  | NetworkInterface
      subnet: Subnet
      description: Optional<String>
      privateIpAddress: Optional<String>
      sourceDestCheck: Optional<Bool>
      privateIpAddresses: Optional<List<String>>
      tags: Optional<List<Tag>>
      securityGroups: Optional<List<SecurityGroup>>
      numSecondaryPrivateIpAddresses: Optional<Int>
      elasticIPs: Optional<List<ElasticIpAttachment>>

NetworkInterface

(Constructor)

Argument:

Record {

Field: subnet
Type: Subnet
Field: description
Type: Optional<String>
Field: privateIpAddress
Type: Optional<String>
Field: sourceDestCheck
Type: Optional<Bool>
Field: privateIpAddresses
Type: Optional<List<String>>
Field: tags
Type: Optional<List<Tag>>
Field: securityGroups
Type: Optional<List<SecurityGroup>>
Field: numSecondaryPrivateIpAddresses
Type: Optional<Int>
Field: elasticIPs
Type: Optional<List<ElasticIpAttachment>>

}

PeerVpc

(Type)

type PeerVpc:
  | ManagedVpc
      vpc: Vpc
      options: Optional<PeeringOptions>
  | UnmanagedVpc
      vpcIdentifier: String
      owner: String

ManagedVpc

(Constructor)

Argument:

Record {

Field: vpc
Type: Vpc
Field: options
Type: Optional<PeeringOptions>

}

UnmanagedVpc

(Constructor)

Argument:

Record {

Field: vpcIdentifier
Type: String
Field: owner
Type: String

}

PeeringOptions

(Type)

type PeeringOptions:
  | PeeringOptions
      allowEgressFromLocalClassicLinkToRemoteVpc: Optional<Bool>
      allowEgressFromLocalVpcToRemoteClassicLink: Optional<Bool>
      allowDnsResolutionFromRemoteVpc: Optional<Bool>

PeeringOptions

(Constructor)

Argument:

Record {

Field: allowEgressFromLocalClassicLinkToRemoteVpc
Type: Optional<Bool>
Field: allowEgressFromLocalVpcToRemoteClassicLink
Type: Optional<Bool>
Field: allowDnsResolutionFromRemoteVpc
Type: Optional<Bool>

}

PortRange

(Type)

type PortRange:
  | PortRange
      from: Int
      to: Int

PortRange

(Constructor)

Argument:

Record {

Field: from
Type: Int
Field: to
Type: Int

}

PrimaryInstanceNetworkInterface

(Type)

type PrimaryInstanceNetworkInterface:
  | PrimaryInstanceNetworkInterface
      associatePublicIpAddress: Optional<Bool>
      subnet: Subnet
      description: Optional<String>
      privateIpAddress: Optional<String>
      sourceDestCheck: Optional<Bool>
      privateIpAddresses: Optional<List<String>>
      tags: Optional<List<Tag>>
      securityGroups: Optional<List<SecurityGroup>>
      numSecondaryPrivateIpAddresses: Optional<Int>
      elasticIPs: Optional<List<ElasticIpAttachment>>

PrimaryInstanceNetworkInterface

(Constructor)

Argument:

Record {

Field: associatePublicIpAddress
Type: Optional<Bool>
Field: subnet
Type: Subnet
Field: description
Type: Optional<String>
Field: privateIpAddress
Type: Optional<String>
Field: sourceDestCheck
Type: Optional<Bool>
Field: privateIpAddresses
Type: Optional<List<String>>
Field: tags
Type: Optional<List<Tag>>
Field: securityGroups
Type: Optional<List<SecurityGroup>>
Field: numSecondaryPrivateIpAddresses
Type: Optional<Int>
Field: elasticIPs
Type: Optional<List<ElasticIpAttachment>>

}

Route

(Type)

type Route:
  | Route
      destinationCidrBlock: String
      target: RouteTarget

Route

(Constructor)

Argument:

Record {

Field: destinationCidrBlock
Type: String
Field: target
Type: RouteTarget

}

RouteTable

(Type)

type RouteTable:
  | RouteTable
      vpc: Vpc
      routes: Optional<List<Route>>
      associations: Optional<List<Subnet>>
      tags: Optional<List<Tag>>
      routePropagatingVpnGateways: Optional<List<VpnGateway>>

RouteTable

(Constructor)

Argument:

Record {

Field: vpc
Type: Vpc
Field: routes
Type: Optional<List<Route>>
Field: associations
Type: Optional<List<Subnet>>
Field: tags
Type: Optional<List<Tag>>
Field: routePropagatingVpnGateways
Type: Optional<List<VpnGateway>>

}

RouteTarget

(Type)

type RouteTarget:
  | GatewayTarget InternetGateway
  | NatTarget NatGateway
  | InterfaceTarget NetworkInterface
  | InstanceTarget Instance
  | VpcPeeringConnectionTarget VpcPeeringConnection
  | VpnGatewayTarget VpnGateway

GatewayTarget

(Constructor)

Argument:
InternetGateway

InstanceTarget

(Constructor)

Argument:
Instance

InterfaceTarget

(Constructor)

Argument:
NetworkInterface

NatTarget

(Constructor)

Argument:
NatGateway

VpcPeeringConnectionTarget

(Constructor)

Argument:
VpcPeeringConnection

VpnGatewayTarget

(Constructor)

Argument:
VpnGateway

RuleAction

(Type)

type RuleAction:
  | Allow
  | Deny

Allow

(Constructor)

Deny

(Constructor)

SecurityGroup

(Type)

type SecurityGroup:
  | SecurityGroup
      description: String
      ipPermissions: Optional<List<IpPermission>>
      ipPermissionsEgress: Optional<List<IpPermission>>
      vpc: Vpc
      tags: Optional<List<Tag>>

SecurityGroup

(Constructor)

Argument:

Record {

Field: description
Type: String
Field: ipPermissions
Type: Optional<List<IpPermission>>
Field: ipPermissionsEgress
Type: Optional<List<IpPermission>>
Field: vpc
Type: Vpc
Field: tags
Type: Optional<List<Tag>>

}

Subnet

(Type)

type Subnet:
  | Subnet
      vpc: Vpc
      cidrBlock: String
      availabilityZone: Optional<AvailabilityZone>
      defaultForAz: Optional<Bool>
      mapPublicIpOnLaunch: Optional<Bool>
      tags: Optional<List<Tag>>

Subnet

(Constructor)

Argument:

Record {

Field: vpc
Type: Vpc
Field: cidrBlock
Type: String
Field: availabilityZone
Type: Optional<AvailabilityZone>
Field: defaultForAz
Type: Optional<Bool>
Field: mapPublicIpOnLaunch
Type: Optional<Bool>
Field: tags
Type: Optional<List<Tag>>

}

Tenancy

(Type)

type Tenancy:
  | DefaultTenancy
  | Dedicated

Dedicated

(Constructor)

DefaultTenancy

(Constructor)

Volume

(Type)

type Volume:
  | Volume
      size: Optional<Int>
      availabilityZone: AvailabilityZone
      tags: Optional<List<Tag>>
      volumeType: Optional<VolumeType>
      iops: Optional<Int>
      encrypted: Optional<Bool>
      snapshot: Optional<String>

Volume

(Constructor)

Argument:

Record {

Field: size
Type: Optional<Int>
Field: availabilityZone
Type: AvailabilityZone
Field: tags
Type: Optional<List<Tag>>
Field: volumeType
Type: Optional<VolumeType>
Field: iops
Type: Optional<Int>
Field: encrypted
Type: Optional<Bool>
Field: snapshot
Type: Optional<String>

}

VolumeAttachment

(Type)

type VolumeAttachment:
  | VolumeAttachment
      volume: Volume
      deviceName: String

VolumeAttachment

(Constructor)

Argument:

Record {

Field: volume
Type: Volume
Field: deviceName
Type: String

}

VolumeType

(Type)

type VolumeType:
  | Standard
  | Io1
  | Gp2
  | Sc1
  | St1

Gp2

(Constructor)

Io1

(Constructor)

Sc1

(Constructor)

St1

(Constructor)

Standard

(Constructor)

Vpc

(Type)

type Vpc:
  | Vpc
      cidrBlock: String
      tags: Optional<List<Tag>>
      instanceTenancy: Optional<Tenancy>
      region: Region
      enableDnsSupport: Optional<Bool>
      enableDnsHostnames: Optional<Bool>
      dhcpOptions: Optional<DhcpOptions>

Vpc

(Constructor)

Argument:

Record {

Field: cidrBlock
Type: String
Field: tags
Type: Optional<List<Tag>>
Field: instanceTenancy
Type: Optional<Tenancy>
Field: region
Type: Region
Field: enableDnsSupport
Type: Optional<Bool>
Field: enableDnsHostnames
Type: Optional<Bool>
Field: dhcpOptions
Type: Optional<DhcpOptions>

}

VpcPeeringConnection

(Type)

type VpcPeeringConnection:
  | VpcPeeringConnection
      vpc: Vpc
      peerVpc: PeerVpc
      options: Optional<PeeringOptions>
      tags: Optional<List<Tag>>

VpcPeeringConnection

(Constructor)

Argument:

Record {

Field: vpc
Type: Vpc
Field: peerVpc
Type: PeerVpc
Field: options
Type: Optional<PeeringOptions>
Field: tags
Type: Optional<List<Tag>>

}

VpnConnection

(Type)

type VpnConnection:
  | VpnConnection
      type: VpnGatewayType
      customerGateway: CustomerGateway
      vpnGateway: VpnGateway
      tags: Optional<List<Tag>>
      routes: Optional<List<VpnStaticRoute>>
      staticRoutesOnly: Optional<Bool>

VpnConnection

(Constructor)

Argument:

Record {

Field: type
Type: VpnGatewayType
Field: customerGateway
Type: CustomerGateway
Field: vpnGateway
Type: VpnGateway
Field: tags
Type: Optional<List<Tag>>
Field: routes
Type: Optional<List<VpnStaticRoute>>
Field: staticRoutesOnly
Type: Optional<Bool>

}

VpnGateway

(Type)

type VpnGateway:
  | VpnGateway
      type: VpnGatewayType
      tags: Optional<List<Tag>>
      vpcAttachment: Optional<Vpc>
      region: Region

VpnGateway

(Constructor)

Argument:

Record {

Field: type
Type: VpnGatewayType
Field: tags
Type: Optional<List<Tag>>
Field: vpcAttachment
Type: Optional<Vpc>
Field: region
Type: Region

}

VpnGatewayType

(Type)

type VpnGatewayType:
  | Ipsec_1

Ipsec_1

(Constructor)

VpnStaticRoute

(Type)

type VpnStaticRoute:
  | VpnStaticRoute
      destinationCidrBlock: String

VpnStaticRoute

(Constructor)

Argument:

Record {

Field: destinationCidrBlock
Type: String

}