context

package
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Dec 26, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func APIResourcesAndComputesMatch

func APIResourcesAndComputesMatch(ctx1 *Context, ctx2 *Context) bool

func ExtractResourceWorkloadIDs

func ExtractResourceWorkloadIDs(resources []ComputedResource) map[string]string

Types

type API

type API struct {
	*userconfig.API
	*ComputedResourceFields
}

type APIs

type APIs map[string]*API

func (APIs) OneByID

func (apis APIs) OneByID(id string) *API

type App

type App struct {
	*userconfig.App
	ID string `json:"id"`
}

type ComputedResource

type ComputedResource interface {
	Resource
	GetWorkloadID() string
	SetWorkloadID(string)
}

type ComputedResourceFields

type ComputedResourceFields struct {
	*ResourceFields
	WorkloadID string `json:"workload_id"`
}

func (*ComputedResourceFields) GetWorkloadID

func (r *ComputedResourceFields) GetWorkloadID() string

func (*ComputedResourceFields) SetWorkloadID

func (r *ComputedResourceFields) SetWorkloadID(workloadID string)

type Context

type Context struct {
	ID                string                        `json:"id"`
	Key               string                        `json:"key"`
	CreatedEpoch      int64                         `json:"created_epoch"`
	ClusterConfig     *clusterconfig.InternalConfig `json:"cluster_config"`
	DeploymentVersion string                        `json:"deployment_version"`
	Root              string                        `json:"root"`
	MetadataRoot      string                        `json:"metadata_root"`
	StatusPrefix      string                        `json:"status_prefix"`
	App               *App                          `json:"app"`
	APIs              APIs                          `json:"apis"`
	ProjectID         string                        `json:"project_id"`
	ProjectKey        string                        `json:"project_key"`
}

func FromMsgpackBytes

func FromMsgpackBytes(b []byte) (*Context, error)

func (*Context) APIResourceWorkloadIDs

func (ctx *Context) APIResourceWorkloadIDs() map[string]string

func (*Context) APIResources

func (ctx *Context) APIResources() []ComputedResource

func (*Context) AllComputedResourceDependencies

func (ctx *Context) AllComputedResourceDependencies(resourceIDs ...string) strset.Set

Get all dependencies for resourceID(s). Note: provided resourceIDs are not included in the dependency set

func (*Context) AllResources

func (ctx *Context) AllResources() []Resource

func (*Context) AllResourcesByName

func (ctx *Context) AllResourcesByName(name string) []Resource

func (*Context) CheckAllWorkloadIDsPopulated

func (ctx *Context) CheckAllWorkloadIDsPopulated() error

func (*Context) ComputedResourceIDs

func (ctx *Context) ComputedResourceIDs() strset.Set

func (*Context) ComputedResourceResourceWorkloadIDs

func (ctx *Context) ComputedResourceResourceWorkloadIDs() map[string]string

func (*Context) ComputedResourceWorkloadIDs

func (ctx *Context) ComputedResourceWorkloadIDs() strset.Set

func (*Context) ComputedResources

func (ctx *Context) ComputedResources() []ComputedResource

func (*Context) DataComputedResources

func (ctx *Context) DataComputedResources() []ComputedResource

func (*Context) DataResourceWorkloadIDs

func (ctx *Context) DataResourceWorkloadIDs() map[string]string

func (*Context) DirectComputedResourceDependencies

func (ctx *Context) DirectComputedResourceDependencies(resourceIDs ...string) strset.Set

Get all dependencies for resourceID(s). Note: provided resourceIDs are not included in the dependency set

func (*Context) LogGroupName added in v0.8.0

func (ctx *Context) LogGroupName(apiName string) string

func (Context) MarshalJSON

func (ctx Context) MarshalJSON() ([]byte, error)

func (*Context) OneResourceByID

func (ctx *Context) OneResourceByID(resourceID string) Resource

Note: there may be >1 resources with the ID, this returns one of them

func (Context) ToMsgpackBytes

func (ctx Context) ToMsgpackBytes() ([]byte, error)

func (*Context) UnmarshalJSON

func (ctx *Context) UnmarshalJSON(b []byte) error

func (*Context) Validate

func (ctx *Context) Validate() error

func (*Context) VisibleResourceByName

func (ctx *Context) VisibleResourceByName(name string) (ComputedResource, error)

func (*Context) VisibleResourceByNameAndType

func (ctx *Context) VisibleResourceByNameAndType(name string, resourceTypeStr string) (ComputedResource, error)

func (*Context) VisibleResourcesByName

func (ctx *Context) VisibleResourcesByName(name string) []ComputedResource

func (*Context) VisibleResourcesMap

func (ctx *Context) VisibleResourcesMap() map[string][]ComputedResource

type Resource

type Resource interface {
	userconfig.Resource
	GetID() string
}

type ResourceFields

type ResourceFields struct {
	ID           string        `json:"id"`
	ResourceType resource.Type `json:"resource_type"`
}

func (*ResourceFields) GetID

func (r *ResourceFields) GetID() string

Jump to

Keyboard shortcuts

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