common

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2021 License: AGPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const RemoteStateMarkerCatName = "RemoteStateMarkers"

RemoteStateMarkerCatName - name of markers category for remote states

Variables

This section is empty.

Functions

func DependencyToBashRemoteState added in v0.4.6

func DependencyToBashRemoteState(dep *project.DependencyOutput) (remoteStateRef string)

func DependencyToRemoteStateRef added in v0.4.6

func DependencyToRemoteStateRef(dep *project.DependencyOutput) (remoteStateRef string)

Types

type RequiredProvider

type RequiredProvider struct {
	Source  string `json:"source"`
	Version string `json:"version"`
}

type StateCommon

type StateCommon interface {
}

type StateDep

type StateDep struct {
	Stack string `json:"infra"`
	Unit  string `json:"unit"`
}

type StateSpecCommon

type StateSpecCommon struct {
	BackendName      string                      `json:"backend_name"`
	PreHook          *hookSpec                   `json:"pre_hook,omitempty"`
	PostHook         *hookSpec                   `json:"post_hook,omitempty"`
	Providers        interface{}                 `json:"providers,omitempty"`
	Markers          map[string]interface{}      `json:"markers,omitempty"`
	Dependencies     []StateDep                  `json:"dependencies,omitempty"`
	RequiredProvider map[string]RequiredProvider `json:"required_providers,omitempty"`
	Outputs          map[string]bool             `json:"outputs,omitempty"`
}

type StateSpecDiffCommon

type StateSpecDiffCommon struct {
	// BackendName string      `json:"backend_name"`
	PreHook   *hookSpec         `json:"pre_hook,omitempty"`
	PostHook  *hookSpec         `json:"post_hook,omitempty"`
	Providers interface{}       `json:"providers,omitempty"`
	Outputs   map[string]string `json:"outputs,omitempty"`
}

type TerraformTemplateDriver

type TerraformTemplateDriver struct {
}

func (*TerraformTemplateDriver) AddTemplateFunctions

func (m *TerraformTemplateDriver) AddTemplateFunctions(p *project.Project)

func (*TerraformTemplateDriver) Name

func (m *TerraformTemplateDriver) Name() string

type Unit added in v0.5.0

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

Unit describe cluster.dev unit to deploy/destroy terraform modules.

func (*Unit) AddRequiredProvider added in v0.5.0

func (m *Unit) AddRequiredProvider(name, source, version string)

func (*Unit) Apply added in v0.5.0

func (m *Unit) Apply() error

func (*Unit) ApplyOutput added in v0.5.0

func (m *Unit) ApplyOutput() []byte

ApplyOutput return output of last unit applying.

func (*Unit) Backend added in v0.5.0

func (m *Unit) Backend() project.Backend

Backend return unit backend.

func (*Unit) Build added in v0.5.0

func (m *Unit) Build() error

func (*Unit) CodeDir added in v0.5.0

func (m *Unit) CodeDir() string

CodeDir return path to unit code directory.

func (*Unit) CreateCodeDir added in v0.5.0

func (m *Unit) CreateCodeDir() error

CreateCodeDir generate all terraform code for project.

func (*Unit) Dependencies added in v0.5.0

func (m *Unit) Dependencies() *[]*project.DependencyOutput

Dependencies return slice of unit dependencies.

func (*Unit) Destroy added in v0.5.0

func (m *Unit) Destroy() error

Destroy unit.

func (*Unit) ExpectedOutputs added in v0.5.0

func (m *Unit) ExpectedOutputs() map[string]*project.DependencyOutput

func (*Unit) FilesList added in v0.5.0

func (m *Unit) FilesList() map[string][]byte

func (*Unit) GetStateCommon added in v0.5.0

func (m *Unit) GetStateCommon() StateSpecCommon

func (*Unit) GetStateDiffCommon added in v0.5.0

func (m *Unit) GetStateDiffCommon() StateSpecDiffCommon

func (*Unit) GetTemplateDriver added in v0.5.0

func (m *Unit) GetTemplateDriver() (string, project.TemplateDriver)

GetTemplateDriver return template driver to add template functions into the project.

func (*Unit) Init added in v0.5.0

func (m *Unit) Init() error

func (*Unit) Key added in v0.5.0

func (m *Unit) Key() string

Key return uniq unit index (string key for maps).

func (*Unit) LoadStateCommon added in v0.5.0

func (m *Unit) LoadStateCommon(spec StateCommon, modKey string, p *project.StateProject) error

func (*Unit) Markers added in v0.5.0

func (m *Unit) Markers() map[string]interface{}

func (*Unit) Name added in v0.5.0

func (m *Unit) Name() string

Name return unit name.

func (*Unit) Output added in v0.5.0

func (m *Unit) Output() (string, error)

Output unit.

func (*Unit) Plan added in v0.5.0

func (m *Unit) Plan() error

Plan unit.

func (*Unit) ProjectPtr added in v0.5.0

func (m *Unit) ProjectPtr() *project.Project

ProjectPtr return ptr to unit project.

func (*Unit) ReadConfig added in v0.5.0

func (m *Unit) ReadConfig(spec map[string]interface{}, stack *project.Stack) error

func (*Unit) RemoteStatesScanner added in v0.5.0

func (m *Unit) RemoteStatesScanner(data reflect.Value, unit project.Unit) (reflect.Value, error)

RemoteStatesScanner - project scanner function, witch process dependencies markers in unit data setted by AddRemoteStateMarker template function.

func (*Unit) ReplaceMarkers added in v0.5.0

func (m *Unit) ReplaceMarkers(inheritedUnit project.Unit) error

ReplaceMarkers replace all templated markers with values.

func (*Unit) ReplaceRemoteStatesForDiff added in v0.5.0

func (m *Unit) ReplaceRemoteStatesForDiff(in, out interface{}) error

ReplaceRemoteStatesForDiff replace remote state markers in struct to <remote state stack.mod.output> to show in diff.

func (*Unit) StackName added in v0.5.0

func (m *Unit) StackName() string

StackName return unit stack name.

func (*Unit) StackPtr added in v0.5.0

func (m *Unit) StackPtr() *project.Stack

StackPtr return ptr to unit stack.

func (*Unit) UpdateProjectRuntimeData added in v0.5.0

func (m *Unit) UpdateProjectRuntimeData(p *project.Project) error

UpdateProjectRuntimeData update project runtime dataset, adds unit outputs.

func (*Unit) WasApplied added in v0.5.0

func (m *Unit) WasApplied() bool

WasApplied return true if unit's method Apply was runned.

Jump to

Keyboard shortcuts

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