stemsrepo

package
v0.0.0-...-718b947 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2017 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Extra_

type Extra_ struct {
	XMLName xml.Name `json:"-" yaml:"-"`
	Data    string   `xml:",innerxml"`
}

type File

type File struct {
	XMLName     xml.Name   `xml:"file" json:"-" yaml:"-"`
	Name        string     `xml:"name,attr" json:"name" yaml:"name"`
	Copyright   string     `xml:"copyright,,omitempty" json:"copyright,omitempty" yaml:"copyright,omitempty"`
	Description string     `xml:"description,,omitempty" json:"description,omitempty" yaml:"description,omitempty"`
	Hashes      []Hash     `xml:"hash,,omitempty" json:"hashes,omitempty" yaml:"hashes,omitempty"`
	Identity    string     `xml:"identity,,omitempty" json:"identity,omitempty" yaml:"identity,omitempty"`
	Language    []string   `xml:"language,,omitempty" json:"language,omitempty" yaml:"language,omitempty"`
	MetaURLs    []MetaURL  `xml:"metaurl,,omitempty" json:"metaurl,omitempty" yaml:"metaurl,omitempty"`
	OS          []string   `xml:"os,,omitempty" json:"os,omitempty" yaml:"os,omitempty"`
	Pieces      []Piece    `xml:"pieces,,omitempty" json:"piece,omitempty" yaml:"piece,omitempty"`
	Publisher   *Publisher `xml:"publisher" json:"publisher,omitempty" yaml:"publisher,omitempty"`
	Signature   *Signature `xml:"signature" json:"signature,omitempty" yaml:"signature,omitempty"`
	Size        uint64     `xml:"size,,omitempty" json:"size,omitempty" yaml:"size,omitempty"`
	URLs        []URL      `xml:"url,,omitempty" json:"url,omitempty" yaml:"url,omitempty"`
	Version     string     `xml:"version,omitempty" json:"version,omitempty" yaml:"version,omitempty"`
}

type Hash

type Hash struct {
	XMLName xml.Name `xml:"hash" json:"-" yaml:"-"`
	Type    string   `xml:"type,attr" json:"type" yaml:"type"`
	Hash    string   `xml:",chardata" json:"hash" yaml:"hash"`
}

type MetaURL

type MetaURL struct {
	XMLName   xml.Name `xml:"metaurl" json:"-" yaml:"-"`
	Priority  *uint    `xml:"priority,attr,omitempty" json:"priority,omitempty" yaml:"priority,omitempty"`
	MediaType string   `xml:"mediatype,attr" json:"mediatype" yaml:"mediatype"`
	Name      string   `xml:"name,attr,omitempty" json:"name,omitempty" yaml:"name,omitempty"`
	URL       string   `xml:",chardata" json:"url" yaml:"url"`
}
type Metalink struct {
	XMLName   xml.Name   `xml:"urn:ietf:params:xml:ns:metalink metalink" json:"-" yaml:"-"`
	Files     []File     `xml:"file" json:"files,omitempty" yaml:"files,omitempty"`
	Generator string     `xml:"generator,,omitempty" json:"generator,omitempty" yaml:"generator,omitempty"`
	Origin    *Origin    `xml:"origin,,omitempty" json:"origin,omitempty" yaml:"origin,omitempty"`
	Published *time.Time `xml:"published,,omitempty" json:"published,omitempty" yaml:"published,omitempty"`
	Updated   *time.Time `xml:"updated,,omitempty" json:"updated,omitempty" yaml:"updated,omitempty"`
}

type Origin

type Origin struct {
	XMLName xml.Name `xml:"origin" json:"-" yaml:"-"`
	Dynamic *bool    `xml:"dynamic,attr,omitempty" json:"dynamic,omitempty" yaml:"dynamic,omitempty"`
	URL     string   `xml:",chardata" json:"url" yaml:"url"`
}

type Piece

type Piece struct {
	XMLName xml.Name `xml:"pieces" json:"-" yaml:"-"`
	Type    string   `xml:"type,attr" json:"type" yaml:"type"`
	Length  string   `xml:"length,attr" json:"length" yaml:"length"`
	Hash    []string `xml:"hash,chardata" json:"hash" yaml:"hash"`
}

type Publisher

type Publisher struct {
	XMLName xml.Name `xml:"publisher" json:"-" yaml:"-"`
	Name    string   `xml:"name,attr" json:"name" yaml:"name"`
	URL     string   `xml:"url,attr,omitempty" json:"url,omitempty" yaml:"url,omitempty"`
}

type S3Stemcell

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

func NewS3Stemcell

func NewS3Stemcell(key, etag, sha1 string, size uint64, lastModified, url string) *S3Stemcell

func (S3Stemcell) AgentType

func (f S3Stemcell) AgentType() string

func (S3Stemcell) DiskFormat

func (f S3Stemcell) DiskFormat() string

func (S3Stemcell) HvName

func (f S3Stemcell) HvName() string

func (S3Stemcell) InfName

func (f S3Stemcell) InfName() string

func (S3Stemcell) IsDeprecated

func (f S3Stemcell) IsDeprecated() bool

func (S3Stemcell) IsForChina

func (f S3Stemcell) IsForChina() bool

func (S3Stemcell) IsLight

func (f S3Stemcell) IsLight() bool

func (S3Stemcell) MD5

func (f S3Stemcell) MD5() string

func (S3Stemcell) MustHaveSHA1

func (f S3Stemcell) MustHaveSHA1() bool

func (S3Stemcell) Name

func (f S3Stemcell) Name() string

func (S3Stemcell) Notes

func (f S3Stemcell) Notes() (bhnotesrepo.NoteRec, bool, error)

func (S3Stemcell) OSName

func (f S3Stemcell) OSName() string

func (S3Stemcell) OSVersion

func (f S3Stemcell) OSVersion() string

func (S3Stemcell) SHA1

func (f S3Stemcell) SHA1() string

func (S3Stemcell) Size

func (f S3Stemcell) Size() uint64

func (S3Stemcell) URL

func (f S3Stemcell) URL() string

func (S3Stemcell) UpdatedAt

func (f S3Stemcell) UpdatedAt() string

func (S3Stemcell) Version

func (f S3Stemcell) Version() semiver.Version

type S3StemcellsRepository

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

func NewS3StemcellsRepository

func NewS3StemcellsRepository(
	legacyStemcellsIndexDir string,
	stemcellsIndexDirs []string,
	notesRepo bhnotesrepo.NotesRepository,
	fs boshsys.FileSystem,
	logger boshlog.Logger,
) S3StemcellsRepository

func (S3StemcellsRepository) FindAll

func (r S3StemcellsRepository) FindAll(name string) ([]Stemcell, error)

type Signature

type Signature struct {
	XMLName   xml.Name `xml:"signature" json:"-" yaml:"-"`
	MediaType string   `xml:"mediatype,attr" json:"mediatype" yaml:"mediatype"`
	Signature string   `xml:",cdata" json:"signature" yaml:"signature"`
}

type Stemcell

type Stemcell interface {
	Name() string

	Version() semiver.Version
	UpdatedAt() string

	Size() uint64
	MD5() string
	SHA1() string // could be empty

	InfName() string    // e.g. aws
	HvName() string     // e.g. kvm
	DiskFormat() string // e.g. raw

	OSName() string    // e.g. Ubuntu
	OSVersion() string // e.g. Trusty

	IsLight() bool
	IsForChina() bool

	URL() string

	Notes() (bhnotesrepo.NoteRec, bool, error)
}

type StemcellsRepository

type StemcellsRepository interface {
	FindAll(string) ([]Stemcell, error)
}

type URL

type URL struct {
	XMLName  xml.Name `xml:"url" json:"-" yaml:"-"`
	Location string   `xml:"location,attr,omitempty" json:"location,omitempty" yaml:"location,omitempty"`
	Priority *uint    `xml:"priority,attr,omitempty" json:"priority,omitempty" yaml:"priority,omitempty"`
	URL      string   `xml:",chardata" json:"url" yaml:"url"`
}

Jump to

Keyboard shortcuts

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