auto_scaling

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2016 License: MIT Imports: 4 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AutoScalingGroup = Resource{
	AwsType: "AWS::AutoScaling::AutoScalingGroup",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"AvailabilityZones": Schema{
			Type:     Multiple(AvailabilityZone),
			Required: constraints.PropertyNotExists("VPCZoneIdentifier"),
		},

		"Cooldown": Schema{
			Type: ValueString,
		},

		"DesiredCapacity": Schema{
			Type: ValueString,
		},

		"HealthCheckGracePeriod": Schema{
			Type: ValueNumber,
		},

		"HealthCheckType": Schema{
			Type: healthCheckType,
		},

		"InstanceId": Schema{
			Type:     InstanceID,
			Required: constraints.PropertyNotExists("LaunchConfigurationName"),
		},

		"LaunchConfigurationName": Schema{
			Type:     ValueString,
			Required: constraints.PropertyNotExists("InstanceId"),
		},

		"LoadBalancerNames": Schema{
			Type: Multiple(ValueString),
		},

		"MaxSize": Schema{
			Type: ValueString,
		},

		"MetricsCollection": Schema{
			Type: Multiple(metricsCollection),
		},

		"MinSize": Schema{
			Type: ValueString,
		},

		"NotificationConfiguration": Schema{
			Deprecated: deprecations.Deprecated("A single NotificationConfiguration should be specified as a list in the NotificationConfigurations property."),
		},

		"NotificationConfigurations": Schema{
			Type: Multiple(notificationConfiguration),
		},

		"PlacementGroup": Schema{
			Type: ValueString,
		},

		"Tags": Schema{
			Type: Multiple(autoScalingTag),
		},

		"TerminationPolicies": Schema{
			Type: Multiple(ValueString),
		},

		"VPCZoneIdentifier": Schema{
			Type:     Multiple(SubnetID),
			Required: constraints.PropertyNotExists("AvailabilityZones"),
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html

View Source
var LaunchConfiguration = Resource{
	AwsType: "AWS::AutoScaling::LaunchConfiguration",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"AssociatePublicIpAddress": Schema{
			Type: ValueBool,
		},

		"BlockDeviceMappings": Schema{
			Type: Multiple(autoScalingBlockDeviceMapping),
		},

		"ClassicLinkVPCId": Schema{
			Type: VpcID,
		},

		"ClassicLinkVPCSecurityGroups": Schema{
			Type:     Multiple(SecurityGroupID),
			Required: constraints.PropertyExists("ClassicLinkVPCId"),
		},

		"EbsOptimized": Schema{
			Type:    ValueBool,
			Default: false,
		},

		"IamInstanceProfile": Schema{
			Type:         ValueString,
			ValidateFunc: StringLengthValidate(1, 1600),
		},

		"ImageId": Schema{
			Type: ImageID,
		},

		"InstanceId": Schema{
			Type: InstanceID,
		},

		"InstanceMonitoring": Schema{
			Type:    ValueBool,
			Default: true,
		},

		"InstanceType": Schema{
			Type: ValueString,
		},

		"KernelId": Schema{
			Type: ValueString,
		},

		"KeyName": Schema{
			Type: KeyName,
		},

		"PlacementTenancy": Schema{
			Type: placementTenancy,
		},

		"RamDiskId": Schema{
			Type: ValueString,
		},

		"SecurityGroups": Schema{
			Type: Multiple(SecurityGroupName),
		},

		"SpotPrice": Schema{
			Type: ValueString,
		},

		"UserData": Schema{
			Type: ValueString,
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html

View Source
var LifecycleHook = Resource{
	AwsType: "AWS::AutoScaling::LifecycleHook",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"AutoScalingGroupName": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"DefaultResult": Schema{
			Type: ValueString,
		},

		"HeartbeatTimeout": Schema{
			Type: ValueNumber,
		},

		"LifecycleTransition": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"NotificationMetadata": Schema{
			Type: ValueString,
		},

		"NotificationTargetARN": Schema{
			Type:     ARN,
			Required: constraints.Always,
		},

		"RoleARN": Schema{
			Type:     ARN,
			Required: constraints.Always,
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html

View Source
var ScalingPolicy = Resource{
	AwsType: "AWS::AutoScaling::ScalingPolicy",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"AdjustmentType": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"AutoScalingGroupName": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"Cooldown": Schema{
			Type:      ValueString,
			Conflicts: constraints.PropertyIs("PolicyType", "StepScaling"),
		},

		"EstimatedInstanceWarmup": Schema{
			Type:      ValueNumber,
			Conflicts: constraints.PropertyIs("PolicyType", "SimpleScaling"),
		},

		"MetricAggregationType": Schema{
			Type:      metricAggregationType,
			Default:   "Average",
			Conflicts: constraints.PropertyIs("PolicyType", "SimpleScaling"),
		},

		"MinAdjustmentMagnitude": Schema{
			Type: ValueNumber,
		},

		"MinAdjustmentStep": Schema{
			Deprecated: deprecations.Deprecated("MinAdjustmentStep is deprecated, use the MinAdjustmentMagnitude property instead."),
		},

		"PolicyType": Schema{
			Type:    policyType,
			Default: "SimpleScaling",
		},

		"ScalingAdjustment": Schema{
			Type:      ValueNumber,
			Required:  constraints.PropertyIs("PolicyType", "SimpleScaling"),
			Conflicts: constraints.Not(constraints.PropertyIs("PolicyType", "SimpleScaling")),
		},

		"StepAdjustments": Schema{
			Type:      Multiple(stepAdjustment),
			Required:  constraints.PropertyIs("PolicyType", "StepScaling"),
			Conflicts: constraints.PropertyNot("PolicyType", "StepScaling"),
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html

View Source
var ScheduledAction = Resource{
	AwsType: "AWS::AutoScaling::ScheduledAction",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"AutoScalingGroupName": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"DesiredCapacity": Schema{
			Type: ValueNumber,
		},

		"EndTime": Schema{
			Type: Timestamp,
		},

		"MaxSize": Schema{
			Type: ValueNumber,
		},

		"MinSize": Schema{
			Type: ValueNumber,
		},

		"Recurrence": Schema{
			Type: ValueString,
		},

		"StartTime": Schema{
			Type: Timestamp,
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
⌂ 换网址