bundle

package
v0.0.0-...-9ec3720 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2021 License: AGPL-3.0 Imports: 26 Imported by: 0

Documentation

Overview

Package bundle defines an API endpoint for functions dealing with bundles.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIv1

type APIv1 struct {
	*APIv2
}

APIv1 provides the Bundle API facade for version 1.

func NewBundleAPIv1

func NewBundleAPIv1(
	st Backend,
	auth facade.Authorizer,
	tag names.ModelTag,
) (*APIv1, error)

NewBundleAPIv1 returns the new Bundle APIv1 facade.

func NewFacadeV1

func NewFacadeV1(ctx facade.Context) (*APIv1, error)

NewFacadeV1 provides the signature required for facade registration version 1.

func (*APIv1) ExportBundle

func (u *APIv1) ExportBundle() (_, _ struct{})

ExportBundle is not in V1 API. Mask the new method from V1 API.

func (*APIv1) GetChanges

GetChanges returns the list of changes required to deploy the given bundle data. The changes are sorted by requirements, so that they can be applied in order. V1 GetChanges did not support device.

type APIv2

type APIv2 struct {
	*BundleAPI
}

APIv2 provides the Bundle API facade for version 2.

func NewFacadeV2

func NewFacadeV2(ctx facade.Context) (*APIv2, error)

NewFacadeV2 provides the signature required for facade registration for version 2.

type APIv3

type APIv3 struct {
	*BundleAPI
}

APIv3 provides the Bundle API facade for version 3. It is otherwise identical to V2 with the exception that the V3 ExportBundle implementation also exposes the the current trust status for each application.

func NewFacadeV3

func NewFacadeV3(ctx facade.Context) (*APIv3, error)

NewFacadeV3 provides the signature required for facade registration for version 3.

func (*APIv3) GetChangesMapArgs

func (u *APIv3) GetChangesMapArgs() (_, _ struct{})

GetChangesMapArgs is not in V3 API or less. Mask the new method from V3 API or less.

type APIv4

type APIv4 struct {
	*BundleAPI
}

APIv4 provides the Bundle API facade for version 4. It is otherwise identical to V3 with the exception that the V4 now has GetChangesAsMap, which returns the same data as GetChanges, but with better args data.

func NewFacadeV4

func NewFacadeV4(ctx facade.Context) (*APIv4, error)

NewFacadeV4 provides the signature required for facade registration for version 4.

type Backend

type Backend interface {
	ExportPartial(cfg state.ExportConfig) (description.Model, error)
	GetExportConfig() state.ExportConfig
	state.EndpointBinding
}

func NewStateShim

func NewStateShim(st *state.State) Backend

NewStateShim creates new state shim to be used by bundle Facade.

type BundleAPI

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

BundleAPI implements the Bundle interface and is the concrete implementation of the API end point.

func NewBundleAPI

func NewBundleAPI(
	st Backend,
	auth facade.Authorizer,
	tag names.ModelTag,
) (*BundleAPI, error)

NewBundleAPI returns the new Bundle API facade.

func (*BundleAPI) ExportBundle

func (b *BundleAPI) ExportBundle() (params.StringResult, error)

ExportBundle exports the current model configuration as bundle.

func (*BundleAPI) GetChanges

GetChanges returns the list of changes required to deploy the given bundle data. The changes are sorted by requirements, so that they can be applied in order. GetChanges has been superseded in favour of GetChangesMapArgs. It's preferable to use that new method to add new functionality and move clients away from this one.

func (*BundleAPI) GetChangesMapArgs

GetChangesMapArgs returns the list of changes required to deploy the given bundle data. The changes are sorted by requirements, so that they can be applied in order. V4 GetChangesMapArgs is not supported on anything less than v4

Jump to

Keyboard shortcuts

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