hyperone

package
v1.4.1 Latest Latest
Warning

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

Go to latest
Published: May 15, 2019 License: MPL-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

View Source
const BuilderID = "hyperone.builder"

Variables

This section is empty.

Functions

This section is empty.

Types

type Artifact

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

func (*Artifact) BuilderId

func (a *Artifact) BuilderId() string

func (*Artifact) Destroy

func (a *Artifact) Destroy() error

func (*Artifact) Files

func (a *Artifact) Files() []string

func (*Artifact) Id

func (a *Artifact) Id() string

func (*Artifact) State

func (a *Artifact) State(name string) interface{}

func (*Artifact) String

func (a *Artifact) String() string

type Builder

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

func (*Builder) Prepare

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

func (*Builder) Run

func (b *Builder) Run(ctx context.Context, ui packer.Ui, hook packer.Hook) (packer.Artifact, error)

type ChrootCommunicator

type ChrootCommunicator struct {
	Chroot     string
	CmdWrapper CommandWrapper
	Wrapped    packer.Communicator
}

ChrootCommunicator works as a wrapper on SSHCommunicator, modyfing paths in flight to be run in a chroot.

func (*ChrootCommunicator) Download

func (c *ChrootCommunicator) Download(src string, w io.Writer) error

func (*ChrootCommunicator) DownloadDir

func (c *ChrootCommunicator) DownloadDir(src string, dst string, exclude []string) error

func (*ChrootCommunicator) Start

func (*ChrootCommunicator) Upload

func (c *ChrootCommunicator) Upload(dst string, r io.Reader, fi *os.FileInfo) error

func (*ChrootCommunicator) UploadDir

func (c *ChrootCommunicator) UploadDir(dst string, src string, exclude []string) error

type CommandWrapper

type CommandWrapper func(string) (string, error)

type Config

type Config struct {
	common.PackerConfig `mapstructure:",squash"`
	Comm                communicator.Config `mapstructure:",squash"`

	APIURL     string `mapstructure:"api_url"`
	Token      string `mapstructure:"token"`
	Project    string `mapstructure:"project"`
	TokenLogin string `mapstructure:"token_login"`

	StateTimeout time.Duration `mapstructure:"state_timeout"`

	SourceImage      string                 `mapstructure:"source_image"`
	ImageName        string                 `mapstructure:"image_name"`
	ImageDescription string                 `mapstructure:"image_description"`
	ImageTags        map[string]interface{} `mapstructure:"image_tags"`
	ImageService     string                 `mapstructure:"image_service"`

	VmType string                 `mapstructure:"vm_type"`
	VmName string                 `mapstructure:"vm_name"`
	VmTags map[string]interface{} `mapstructure:"vm_tags"`

	DiskName string  `mapstructure:"disk_name"`
	DiskType string  `mapstructure:"disk_type"`
	DiskSize float32 `mapstructure:"disk_size"`

	Network             string `mapstructure:"network"`
	PrivateIP           string `mapstructure:"private_ip"`
	PublicIP            string `mapstructure:"public_ip"`
	PublicNetAdpService string `mapstructure:"public_netadp_service"`

	ChrootDisk           bool       `mapstructure:"chroot_disk"`
	ChrootDiskSize       float32    `mapstructure:"chroot_disk_size"`
	ChrootDiskType       string     `mapstructure:"chroot_disk_type"`
	ChrootMountPath      string     `mapstructure:"chroot_mount_path"`
	ChrootMounts         [][]string `mapstructure:"chroot_mounts"`
	ChrootCopyFiles      []string   `mapstructure:"chroot_copy_files"`
	ChrootCommandWrapper string     `mapstructure:"chroot_command_wrapper"`

	MountOptions      []string `mapstructure:"mount_options"`
	MountPartition    string   `mapstructure:"mount_partition"`
	PreMountCommands  []string `mapstructure:"pre_mount_commands"`
	PostMountCommands []string `mapstructure:"post_mount_commands"`

	SSHKeys  []string `mapstructure:"ssh_keys"`
	UserData string   `mapstructure:"user_data"`
	// contains filtered or unexported fields
}

func NewConfig

func NewConfig(raws ...interface{}) (*Config, []string, error)

Jump to

Keyboard shortcuts

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