Documentation ¶
Index ¶
Constants ¶
View Source
const StepNameApply = "terraform.apply"
View Source
const StepNameConfig = "render.config"
View Source
const StepNameConfirm = "render.confirm"
StepNameConfirm means that config is confirmed and assets are being rendered
View Source
const StepNameHelmIntro = "helm.intro"
View Source
const StepNameHelmValues = "helm.values"
View Source
const StepNameKustomize = "kustomize"
View Source
const StepNameMessage = "message"
View Source
const StepNamePlan = "terraform.plan"
View Source
const StepNameReport = "terraform.report"
View Source
const StepNameStream = "stream"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Action ¶
type Action struct { Sort int32 `json:"sort,omitempty"` ButtonType string `json:"buttonType,omitempty"` Text string `json:"text,omitempty"` LoadingText string `json:"loadingText,omitempty"` OnClick ActionRequest `json:"onclick,omitempty"` }
type ActionRequest ¶
type Daemon ¶
type Daemon interface { StatusReceiver EnsureStarted(context.Context, *api.Release) chan error PushRenderStep(context.Context, Render) PushHelmIntroStep(context.Context, HelmIntro, []Action) PushHelmValuesStep(context.Context, HelmValues, []Action) PushKustomizeStep(context.Context, Kustomize) AllStepsDone(context.Context) CleanPreviousStep() MessageConfirmedChan() chan string ConfigSavedChan() chan interface{} TerraformConfirmedChan() chan bool KustomizeSavedChan() chan interface{} GetCurrentConfig() map[string]interface{} AwaitShutdown() error }
Daemon is a sort of UI interface. Some implementations start an API to power the on-prem web console. A headless implementation logs progress to stdout.
A daemon is manipulated by lifecycle step handlers to present the correct UI to the user and collect necessary information
type HelmValues ¶
type KustomizeIntro ¶
type KustomizeIntro struct { }
type Progress ¶
type Progress struct { Source string `json:"source"` Type string `json:"type"` // string, json, etc Level string `json:"level"` // string, json, etc Detail string `json:"detail,omitempty"` }
func JSONProgress ¶
func MessageProgress ¶
func StringProgress ¶
type ProgressMap ¶
the empty value is initialized and ready to use
func (*ProgressMap) Delete ¶
func (p *ProgressMap) Delete(stepID string)
func (*ProgressMap) Store ¶
func (p *ProgressMap) Store(stepID string, progress Progress)
type StatusReceiver ¶
type Step ¶
type Step struct { Source api.Step `json:"-"` Message *Message `json:"message,omitempty"` Render *Render `json:"render,omitempty"` HelmIntro *HelmIntro `json:"helmIntro,omitempty"` HelmValues *HelmValues `json:"helmValues,omitempty"` Kustomize *Kustomize `json:"kustomize,omitempty"` KustomizeIntro *KustomizeIntro `json:"kustomizeIntro,omitempty"` Config *Config `json:"config,omitempty"` }
the api abstraction for objects written in the YAML is starting to leak a little, so duplicating some stuff here
Click to show internal directories.
Click to hide internal directories.