store

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 23, 2020 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Download

func Download(ctx context.Context, store Store, prefix, dstDir string, ignore []string) ([]string, error)

Download files from the store with the given prefix to the given dst dir

func Upload

func Upload(ctx context.Context, store Store, prefix, srcDir string, ignore []string) ([]string, error)

Upload a local directory to the store at the specified prefix

Types

type Item

type Item struct {
	Key          string
	ETag         string
	Version      string
	Size         int64
	LastModified time.Time
	Meta         map[string]string
}

Item in storage

func (Item) Exists

func (item Item) Exists() bool

Exists returns true if it is a valid Item

type NotFound

type NotFound string

NotFound indicates an object does not exist

func (NotFound) Error

func (e NotFound) Error() string

type Store

type Store interface {

	// Get an item from the Store
	Get(ctx context.Context, key, dst string) error

	// Put an item in the Store
	Put(ctx context.Context, key, src string, meta map[string]string) error

	// List contents of the Store
	List(ctx context.Context, prefix string) ([]string, error)

	// Head checks if the item exists in the store
	Head(ctx context.Context, key string) (Item, error)
}

Store is an interface to Get and Put items into storage

func NewHTTP

func NewHTTP(signingURL, authToken string) Store

NewHTTP returns an HTTP storage interface

func NewS3

func NewS3(api s3iface.S3API, bucket string) Store

NewS3 returns an S3 storage interface

Jump to

Keyboard shortcuts

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