Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var StepTypes = map[string]bool{ "stage": true, "container": true, "command": true, "export": true, }
StepTypes - Defines step types
Functions ¶
This section is empty.
Types ¶
type CorkTemplateRenderer ¶
type CorkTemplateRenderer struct {
Outputs map[string]map[string]string
RequiredVars map[string]TemplateVar
UserParams map[string]string
FuncMap template.FuncMap
WorkDir string
HostWorkDir string
CacheDir string
}
func NewTemplateRenderer ¶
func NewTemplateRenderer() *CorkTemplateRenderer
func NewTemplateRendererWithOptions ¶
func NewTemplateRendererWithOptions(options CorkTemplateRendererOptions) *CorkTemplateRenderer
func (*CorkTemplateRenderer) AddOutput ¶
func (c *CorkTemplateRenderer) AddOutput(stepName string, varName string, value string)
func (*CorkTemplateRenderer) ListRequiredVars ¶ added in v0.2.0
func (c *CorkTemplateRenderer) ListRequiredVars() map[string]TemplateVar
func (*CorkTemplateRenderer) Render ¶
func (c *CorkTemplateRenderer) Render(templateStr string) (string, error)
func (*CorkTemplateRenderer) ResetRequiredVarTracker ¶ added in v0.2.0
func (c *CorkTemplateRenderer) ResetRequiredVarTracker()
type Param ¶ added in v0.2.0
type Param struct {
Type string `yaml:"type"`
Default *string `yaml:"default,omitempty"`
Description string `yaml:"description"`
IsSensitive bool `yaml:"is_sensitive"`
}
func (Param) HasDefault ¶ added in v0.2.0
type ServerDefinition ¶
type ServerDefinition struct {
Stages map[string]Stage `yaml:"stages"`
Params map[string]Param `yaml:"params"`
Tags []string `yaml:"tags"`
Version int `yaml:"version"`
// contains filtered or unexported fields
}
ServerDefinition - Defines a cork server
func LoadFromBytes ¶
func LoadFromBytes(defBytes []byte) (*ServerDefinition, error)
LoadFromBytes - Loads the server definition from bytes
func LoadFromDir ¶
func LoadFromDir(corkDir string) (*ServerDefinition, error)
Load - Loads the server definition from the default location
func LoadFromPath ¶
func LoadFromPath(defPath string) (*ServerDefinition, error)
LoadFromPath - Loads the server definition from the specified path
func LoadFromString ¶
func LoadFromString(defStr string) (*ServerDefinition, error)
LoadFromString - Loads the server definition from a string
func (*ServerDefinition) ListStages ¶ added in v0.2.0
func (sd *ServerDefinition) ListStages() []string
func (*ServerDefinition) ListSteps ¶
func (sd *ServerDefinition) ListSteps(stageName string) ([]*Step, error)
ListSteps - Traverses the steps of a stage and resolves everything to a step
func (*ServerDefinition) RequiredUserParamsForStage ¶ added in v0.2.0
func (sd *ServerDefinition) RequiredUserParamsForStage(stageName string) ([]string, error)
RequiredUserParamsForStage gathers the required user params for a specific stage
func (*ServerDefinition) Validate ¶
func (sd *ServerDefinition) Validate() error
Validate validates a definition file by running through the stages
type Step ¶
type Step struct {
Type string `yaml:"type"`
Name string `yaml:"name,omitempty"`
Args StepArgs `yaml:"args,omitempty"`
MatchTags []string `yaml:"match_tags,omitempty"`
SkipTags []string `yaml:"skip_tags,omitempty"`
Outputs []string `yaml:"outputs,omitempty"`
}
Step - Defines a step
func (*Step) ReferenceName ¶ added in v0.2.0
type StepArgs ¶
type StepArgs struct {
Image string `yaml:"image,omitempty"`
Command string `yaml:"command,omitempty"`
Stage string `yaml:"stage,omitempty"`
Params map[string]string `yaml:"params,omitempty"`
Export Export `yaml:"export,omitempty"`
}
StepArgs - Defines a step's arguments
func (*StepArgs) ResolveArgs ¶
func (sa *StepArgs) ResolveArgs(renderer *CorkTemplateRenderer) (*StepArgs, error)
type TemplateRenderer ¶
type TemplateRenderer interface {
Render(templateStr string)
AddOutput(stepName string, varName string, value string)
}
TemplateRenderer - Interface to user for the template rendering