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

common

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Jul 3, 2013 License: MPL-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MultistepDebugFn

func MultistepDebugFn(ui packer.Ui) multistep.DebugPauseFn

MultistepDebugFn will return a proper multistep.DebugPauseFn to use for debugging if you're using multistep in your builder.

Types

type DownloadClient

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

A DownloadClient helps download, verify checksums, etc.

func NewDownloadClient

func NewDownloadClient(c *DownloadConfig) *DownloadClient

NewDownloadClient returns a new DownloadClient for the given configuration.

func (*DownloadClient) Cancel

func (d *DownloadClient) Cancel()

func (*DownloadClient) Get

func (d *DownloadClient) Get() (string, error)

func (*DownloadClient) PercentProgress

func (d *DownloadClient) PercentProgress() uint

PercentProgress returns the download progress as a percentage.

func (*DownloadClient) VerifyChecksum

func (d *DownloadClient) VerifyChecksum(path string) (bool, error)

VerifyChecksum tests that the path matches the checksum for the download.

type DownloadConfig

type DownloadConfig struct {
	// The source URL in the form of a string.
	Url string

	// This is the path to download the file to.
	TargetPath string

	// DownloaderMap maps a schema to a Download.
	DownloaderMap map[string]Downloader

	// If true, this will copy even a local file to the target
	// location. If false, then it will "download" the file by just
	// returning the local path to the file.
	CopyFile bool

	// The hashing implementation to use to checksum the downloaded file.
	Hash hash.Hash

	// The checksum for the downloaded file. The hash implementation configuration
	// for the downloader will be used to verify with this checksum after
	// it is downloaded.
	Checksum []byte
}

DownloadConfig is the configuration given to instantiate a new download instance. Once a configuration is used to instantiate a download client, it must not be modified.

type Downloader

type Downloader interface {
	Cancel()
	Download(io.Writer, *url.URL) error
	Progress() uint
	Total() uint
}

A downloader is responsible for actually taking a remote URL and downloading it.

type HTTPDownloader

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

HTTPDownloader is an implementation of Downloader that downloads files over HTTP.

func (*HTTPDownloader) Cancel

func (*HTTPDownloader) Cancel()

func (*HTTPDownloader) Download

func (d *HTTPDownloader) Download(dst io.Writer, src *url.URL) error

func (*HTTPDownloader) Progress

func (d *HTTPDownloader) Progress() uint

func (*HTTPDownloader) Total

func (d *HTTPDownloader) Total() uint

Jump to

Keyboard shortcuts

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