outputs

package
v1.3.3 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2020 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package outputs provides types for implementing instance type output functions as well as prebuilt output functions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CloudFormationSpotMixedInstancesPolicyJSONOutput

func CloudFormationSpotMixedInstancesPolicyJSONOutput(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

CloudFormationSpotMixedInstancesPolicyJSONOutput is an OutputFn which returns an MixedInstancePolicy in CloudFormation JSON syntax

func CloudFormationSpotMixedInstancesPolicyYAMLOutput

func CloudFormationSpotMixedInstancesPolicyYAMLOutput(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

CloudFormationSpotMixedInstancesPolicyYAMLOutput is an OutputFn which returns an ASG MixedInstancePolicy in CloudFormation YAML syntax

func SimpleInstanceTypeOutput

func SimpleInstanceTypeOutput(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

SimpleInstanceTypeOutput is an OutputFn which outputs a slice of instance type names

func TableOutputShort

func TableOutputShort(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

TableOutputShort is an OutputFn which returns a CLI table for easy reading

func TableOutputWide

func TableOutputWide(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

TableOutputWide is an OutputFn which returns a detailed CLI table for easy reading

func TerraformSpotMixedInstancesPolicyHCLOutput

func TerraformSpotMixedInstancesPolicyHCLOutput(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

TerraformSpotMixedInstancesPolicyHCLOutput is an OutputFn which returns an ASG MixedInstancePolicy in Terraform HCL syntax

func VerboseInstanceTypeOutput

func VerboseInstanceTypeOutput(instanceTypeInfoSlice []*ec2.InstanceTypeInfo) []string

VerboseInstanceTypeOutput is an OutputFn which outputs a slice of instance type names

Types

type AutoScalingGroup

type AutoScalingGroup struct {
	Type       string                     `json:"Type"`
	Properties AutoScalingGroupProperties `json:"Properties"`
}

AutoScalingGroup is a struct to represent json for a cloudformation ASG definition

type AutoScalingGroupProperties

type AutoScalingGroupProperties struct {
	AutoScalingGroupName string               `json:"AutoScalingGroupName"`
	MinSize              int                  `json:"MinSize,string"`
	MaxSize              int                  `json:"MaxSize,string"`
	DesiredCapacity      int                  `json:"DesiredCapacity,string"`
	VPCZoneIdentifier    []string             `json:"VPCZoneIdentifier"`
	MixedInstancesPolicy MixedInstancesPolicy `json:"MixedInstancesPolicy"`
}

AutoScalingGroupProperties is a struct to represent json for a cloudformation ASG Properties definition

type InstanceTypeOverride

type InstanceTypeOverride struct {
	InstanceType     string `json:"InstanceType"`
	WeightedCapacity int    `json:"WeightedCapacity,omitempty"`
}

InstanceTypeOverride is a struct to represent json for a cloudformation LaunchTemplate LaunchTemplateSpecification InstanceTypeOverrides definition

type InstancesDistribution

type InstancesDistribution struct {
	OnDemandAllocationStrategy          string `json:"OnDemandAllocationStrategy,omitempty"`
	OnDemandBaseCapacity                int    `json:"OnDemandBaseCapacity"`
	OnDemandPercentageAboveBaseCapacity int    `json:"OnDemandPercentageAboveBaseCapacity"`
	SpotAllocationStrategy              string `json:"SpotAllocationStrategy,omitempty"`
	SpotInstancePools                   int    `json:"SpotInstancePools,omitempty"`
	SpotMaxPrice                        string `json:"SpotMaxPrice,omitempty"`
}

InstancesDistribution is a struct to represent json for a cloudformation ASG MixedInstancesPolicy InstancesDistribution definition

type LaunchTemplate

type LaunchTemplate struct {
	LaunchTemplateSpecification LaunchTemplateSpecification `json:"LaunchTemplateSpecification"`
	Overrides                   []InstanceTypeOverride      `json:"Overrides"`
}

LaunchTemplate is a struct to represent json for a cloudformation LaunchTemplate definition

type LaunchTemplateSpecification

type LaunchTemplateSpecification struct {
	LaunchTemplateID   string `json:"LaunchTemplateId,omitempty"`
	LaunchTemplateName string `json:"LaunchTemplateName,omitempty"`
	Version            string `json:"Version"`
}

LaunchTemplateSpecification is a struct to represent json for a cloudformation LaunchTemplate LaunchTemplateSpecification definition

type MixedInstancesPolicy

type MixedInstancesPolicy struct {
	InstancesDistribution InstancesDistribution `json:"InstancesDistribution"`
	LaunchTemplate        LaunchTemplate        `json:"LaunchTemplate"`
}

MixedInstancesPolicy is a struct to represent json for a cloudformation ASG MixedInstancesPolicy definition

type Resources

type Resources struct {
	Resources map[string]AutoScalingGroup `json:"Resources"`
}

Resources is a struct to represent json for a cloudformation Resources definition block.

Jump to

Keyboard shortcuts

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