Help us shape the future of Go! Take the 2026 Go Developer Survey

ebssurrogate

package
v1.0.3 Latest Latest
Warning

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

Go to latest
Published: Jul 17, 2017 License: MPL-2.0 Imports: 12 Imported by: 0

Documentation

Overview

The ebssurrogate package contains a packer.Builder implementation that builds a new EBS-backed AMI using an ephemeral instance.

Index

Constants

View Source
const BuilderId = "mitchellh.amazon.ebssurrogate"

Variables

This section is empty.

Functions

func DeduplicateRootVolume added in v1.0.3

func DeduplicateRootVolume(BlockDevices []*ec2.BlockDeviceMapping, RootDevice RootBlockDevice, snapshotId string) []*ec2.BlockDeviceMapping

Types

type Builder

type Builder struct {
	// contains filtered or unexported fields
}

func (*Builder) Cancel

func (b *Builder) Cancel()

func (*Builder) Prepare

func (b *Builder) Prepare(raws ...interface{}) ([]string, error)

func (*Builder) Run

func (b *Builder) Run(ui packer.Ui, hook packer.Hook, cache packer.Cache) (packer.Artifact, error)

type Config

type Config struct {
	common.PackerConfig    `mapstructure:",squash"`
	awscommon.AccessConfig `mapstructure:",squash"`
	awscommon.RunConfig    `mapstructure:",squash"`
	awscommon.BlockDevices `mapstructure:",squash"`
	awscommon.AMIConfig    `mapstructure:",squash"`

	RootDevice    RootBlockDevice   `mapstructure:"ami_root_device"`
	VolumeRunTags map[string]string `mapstructure:"run_volume_tags"`
	// contains filtered or unexported fields
}

type RootBlockDevice

type RootBlockDevice struct {
	SourceDeviceName    string `mapstructure:"source_device_name"`
	DeviceName          string `mapstructure:"device_name"`
	DeleteOnTermination bool   `mapstructure:"delete_on_termination"`
	IOPS                int64  `mapstructure:"iops"`
	VolumeType          string `mapstructure:"volume_type"`
	VolumeSize          int64  `mapstructure:"volume_size"`
}

func (*RootBlockDevice) Prepare

func (c *RootBlockDevice) Prepare(ctx *interpolate.Context) []error

type StepRegisterAMI

type StepRegisterAMI struct {
	RootDevice   RootBlockDevice
	BlockDevices []*ec2.BlockDeviceMapping
	// contains filtered or unexported fields
}

StepRegisterAMI creates the AMI.

func (*StepRegisterAMI) Cleanup

func (s *StepRegisterAMI) Cleanup(state multistep.StateBag)

func (*StepRegisterAMI) Run

type StepSnapshotNewRootVolume

type StepSnapshotNewRootVolume struct {
	NewRootMountPoint string
	// contains filtered or unexported fields
}

StepSnapshotNewRootVolume creates a snapshot of the created volume.

Produces:

snapshot_id string - ID of the created snapshot

func (*StepSnapshotNewRootVolume) Cleanup

func (s *StepSnapshotNewRootVolume) Cleanup(state multistep.StateBag)

func (*StepSnapshotNewRootVolume) Run

Jump to

Keyboard shortcuts

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