Fugue.Core.AWS.AutoScaling

Module Members

AdjustmentType

(Type)

type AdjustmentType:
  | ChangeInCapacity
  | ExactCapacity
  | PercentChangeInCapacity

ChangeInCapacity

(Constructor)

ExactCapacity

(Constructor)

PercentChangeInCapacity

(Constructor)

AutoScalingGroup

(Type)

type AutoScalingGroup:
  | AutoScalingGroup
      minSize: Int
      maxSize: Int
      desiredCapacity: Optional<NotImplemented>
      defaultCooldown: Int
      healthCheckType: HealthCheck
      healthCheckGracePeriod: Optional<Int>
      placementGroup: Optional<String>
      enabledMetrics: Optional<List<Metric>>
      tags: Optional<List<Tag>>
      terminationPolicies: Optional<List<TerminationPolicy>>
      newInstancesProtectedFromScaleIn: Optional<Bool>
      launchConfiguration: LaunchConfiguration
      subnets: List<Subnet>
      loadBalancers: Optional<List<LoadBalancer>>
      name: Optional<String>
      notificationConfigurations: Optional<List<NotificationConfiguration>>
      instance: Optional<NotImplemented>
      targetGroups: Optional<NotImplemented>
      region: Region

AutoScalingGroup

(Constructor)

Argument:

Record {

Field: minSize
Type: Int
Field: maxSize
Type: Int
Field: desiredCapacity
Type: Optional<NotImplemented>
Field: defaultCooldown
Type: Int
Field: healthCheckType
Type: HealthCheck
Field: healthCheckGracePeriod
Type: Optional<Int>
Field: placementGroup
Type: Optional<String>
Field: enabledMetrics
Type: Optional<List<Metric>>
Field: tags
Type: Optional<List<Tag>>
Field: terminationPolicies
Type: Optional<List<TerminationPolicy>>
Field: newInstancesProtectedFromScaleIn
Type: Optional<Bool>
Field: launchConfiguration
Type: LaunchConfiguration
Field: subnets
Type: List<Subnet>
Field: loadBalancers
Type: Optional<List<LoadBalancer>>
Field: name
Type: Optional<String>
Field: notificationConfigurations
Type: Optional<List<NotificationConfiguration>>
Field: instance
Type: Optional<NotImplemented>
Field: targetGroups
Type: Optional<NotImplemented>
Field: region
Type: Region

}

HealthCheck

(Type)

type HealthCheck:
  | Ec2
  | Elb

Ec2

(Constructor)

Elb

(Constructor)

LaunchConfiguration

(Type)

type LaunchConfiguration:
  | LaunchConfiguration
      keyName: Optional<String>
      securityGroups: List<SecurityGroup>
      userData: Optional<String>
      instanceType: InstanceType
      blockDeviceMappings: Optional<List<InstanceBlockDeviceMapping>>
      instanceMonitoring: Optional<Bool>
      spotPrice: Optional<String>
      iamInstanceProfile: Optional<InstanceProfile>
      ebsOptimized: Optional<Bool>
      associatePublicIpAddress: Optional<Bool>
      placementTenancy: Optional<Tenancy>
      image: String
      kernel: Optional<NotImplemented>
      ramdisk: Optional<NotImplemented>
      name: Optional<String>
      instance: Optional<NotImplemented>
      region: Region

LaunchConfiguration

(Constructor)

Argument:

Record {

Field: keyName
Type: Optional<String>
Field: securityGroups
Type: List<SecurityGroup>
Field: userData
Type: Optional<String>
Field: instanceType
Type: InstanceType
Field: blockDeviceMappings
Type: Optional<List<InstanceBlockDeviceMapping>>
Field: instanceMonitoring
Type: Optional<Bool>
Field: spotPrice
Type: Optional<String>
Field: iamInstanceProfile
Type: Optional<InstanceProfile>
Field: ebsOptimized
Type: Optional<Bool>
Field: associatePublicIpAddress
Type: Optional<Bool>
Field: placementTenancy
Type: Optional<Tenancy>
Field: image
Type: String
Field: kernel
Type: Optional<NotImplemented>
Field: ramdisk
Type: Optional<NotImplemented>
Field: name
Type: Optional<String>
Field: instance
Type: Optional<NotImplemented>
Field: region
Type: Region

}

Metric

(Type)

type Metric:
  | GroupDesiredCapacity
  | GroupInServiceInstances
  | GroupMaxSize
  | GroupMinSize
  | GroupPendingInstances
  | GroupStandbyInstances
  | GroupTerminatingInstances
  | GroupTotalInstances

GroupDesiredCapacity

(Constructor)

GroupInServiceInstances

(Constructor)

GroupMaxSize

(Constructor)

GroupMinSize

(Constructor)

GroupPendingInstances

(Constructor)

GroupStandbyInstances

(Constructor)

GroupTerminatingInstances

(Constructor)

GroupTotalInstances

(Constructor)

MetricAggregationType

(Type)

type MetricAggregationType:
  | Average
  | Minimum
  | Maximum

Average

(Constructor)

Maximum

(Constructor)

Minimum

(Constructor)

NotificationConfiguration

(Type)

type NotificationConfiguration:
  | NotificationConfiguration
      topic: Topic
      notificationTypes: List<NotificationType>

NotificationConfiguration

(Constructor)

Argument:

Record {

Field: topic
Type: Topic
Field: notificationTypes
Type: List<NotificationType>

}

NotificationType

(Type)

type NotificationType:
  | InstanceLaunch
  | InstanceTerminate
  | InstanceLaunchError
  | InstanceTerminateError

InstanceLaunch

(Constructor)

InstanceLaunchError

(Constructor)

InstanceTerminate

(Constructor)

InstanceTerminateError

(Constructor)

PolicyType

(Type)

type PolicyType:
  | SimpleScaling
  | StepScaling

SimpleScaling

(Constructor)

StepScaling

(Constructor)

ScalingPolicy

(Type)

type ScalingPolicy:
  | ScalingPolicy
      policyName: String
      policyType: Optional<PolicyType>
      adjustmentType: AdjustmentType
      minAdjustmentMagnitude: Optional<Int>
      scalingAdjustment: Optional<Int>
      cooldown: Optional<Int>
      stepAdjustments: Optional<List<StepAdjustment>>
      metricAggregationType: Optional<MetricAggregationType>
      estimatedInstanceWarmup: Optional<Int>
      autoScalingGroup: AutoScalingGroup

ScalingPolicy

(Constructor)

Argument:

Record {

Field: policyName
Type: String
Field: policyType
Type: Optional<PolicyType>
Field: adjustmentType
Type: AdjustmentType
Field: minAdjustmentMagnitude
Type: Optional<Int>
Field: scalingAdjustment
Type: Optional<Int>
Field: cooldown
Type: Optional<Int>
Field: stepAdjustments
Type: Optional<List<StepAdjustment>>
Field: metricAggregationType
Type: Optional<MetricAggregationType>
Field: estimatedInstanceWarmup
Type: Optional<Int>
Field: autoScalingGroup
Type: AutoScalingGroup

}

StepAdjustment

(Type)

type StepAdjustment:
  | StepAdjustment
      metricIntervalLowerBound: Optional<Float>
      metricIntervalUpperBound: Optional<Float>
      scalingAdjustment: Int

StepAdjustment

(Constructor)

Argument:

Record {

Field: metricIntervalLowerBound
Type: Optional<Float>
Field: metricIntervalUpperBound
Type: Optional<Float>
Field: scalingAdjustment
Type: Int

}

TerminationPolicy

(Type)

type TerminationPolicy:
  | OldestInstance
  | OldestLaunchConfiguration
  | NewestInstance
  | ClosestToNextInstanceHour
  | DefaultTerminationPolicy

ClosestToNextInstanceHour

(Constructor)

DefaultTerminationPolicy

(Constructor)

NewestInstance

(Constructor)

OldestInstance

(Constructor)

OldestLaunchConfiguration

(Constructor)