driver

package
v2.0.0-alpha.3+incompa... Latest Latest
Warning

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

Go to latest
Published: Aug 10, 2016 License: Apache-2.0 Imports: 12 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrReleaseNotFound indicates that a release is not found.
	ErrReleaseNotFound = errors.New("release: not found")
	// ErrReleaseExists indicates that a release already exists.
	ErrReleaseExists = errors.New("release: already exists")
)

Functions

This section is empty.

Types

type ConfigMaps

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

ConfigMaps is a wrapper around an implementation of a kubernetes ConfigMapsInterface.

func NewConfigMaps

func NewConfigMaps(impl client.ConfigMapsInterface) *ConfigMaps

NewConfigMaps initializes a new ConfigMaps wrapping an implmenetation of the kubernetes ConfigMapsInterface.

func (*ConfigMaps) Create

func (cfgmaps *ConfigMaps) Create(rls *rspb.Release) error

Create creates a new ConfigMap holding the release. If the ConfigMap already exists, ErrReleaseExists is returned.

func (*ConfigMaps) Delete

func (cfgmaps *ConfigMaps) Delete(key string) (rls *rspb.Release, err error)

Delete deletes the ConfigMap holding the release named by key.

func (*ConfigMaps) Get

func (cfgmaps *ConfigMaps) Get(key string) (*rspb.Release, error)

Get fetches the release named by key. The corresponding release is returned or error if not found.

func (*ConfigMaps) List

func (cfgmaps *ConfigMaps) List(filter func(*rspb.Release) bool) ([]*rspb.Release, error)

List fetches all releases and returns the list releases such that filter(release) == true. An error is returned if the configmap fails to retrieve the releases.

func (*ConfigMaps) Update

func (cfgmaps *ConfigMaps) Update(rls *rspb.Release) error

Update updates the ConfigMap holding the release. If not found the ConfigMap is created to hold the release.

type Creator

type Creator interface {
	Create(rls *rspb.Release) error
}

Creator is the interface that wraps the Create method.

Create stores the release or returns ErrReleaseExists if an identical release already exists.

type Deletor

type Deletor interface {
	Delete(key string) (*rspb.Release, error)
}

Deletor is the interface that wraps the Delete method.

Delete deletes the release named by key or returns ErrReleaseNotFound if the release does not exist.

type Driver

type Driver interface {
	Creator
	Updator
	Deletor
	Queryor
}

Driver is the interface composed of Creator, Updator, Deletor, Queryor interfaces. It defines the behavior for storing, updating, deleted, and retrieving tiller releases from some underlying storage mechanism, e.g. memory, configmaps.

type Memory

type Memory struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

Memory is the in-memory storage driver implementation.

func NewMemory

func NewMemory() *Memory

NewMemory initializes a new memory driver.

func (*Memory) Create

func (mem *Memory) Create(rls *rspb.Release) error

Create creates a new release or returns ErrReleaseExists.

func (*Memory) Delete

func (mem *Memory) Delete(key string) (*rspb.Release, error)

Delete deletes a release or returns ErrReleaseNotFound.

func (*Memory) Get

func (mem *Memory) Get(key string) (*rspb.Release, error)

Get returns the release named by key or returns ErrReleaseNotFound.

func (*Memory) List

func (mem *Memory) List(filter func(*rspb.Release) bool) ([]*rspb.Release, error)

List returns the list of all releases such that filter(release) == true

func (*Memory) Update

func (mem *Memory) Update(rls *rspb.Release) error

Update updates a release or returns ErrReleaseNotFound.

type Queryor

type Queryor interface {
	Get(key string) (*rspb.Release, error)
	List(filter func(*rspb.Release) bool) ([]*rspb.Release, error)
}

Queryor is the interface that wraps the Get and List methods.

Get returns the release named by key or returns ErrReleaseNotFound if the release does not exist.

List returns the set of all releases that satisfy the filter predicate.

type Updator

type Updator interface {
	Update(rls *rspb.Release) error
}

Updator is the interface that wraps the Update method.

Update updates an existing release or returns ErrReleaseNotFound if the release does not exist.

Jump to

Keyboard shortcuts

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