scope

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Feb 18, 2019 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Debug = false

Debug is debug mode flag

Functions

This section is empty.

Types

type CommandEvaluator

type CommandEvaluator interface {
	// Call executes a shell command
	Call(string) ([]byte, error)
}

CommandEvaluator represents command runner and wraps shell calls

type Context

type Context struct {
	Globals   Vars // Globals is set of global variables for all tasks
	Variables Vars // Variables is set of variables for specific job

	Environment struct {
		ProjectDirectory string
	}
	// contains filtered or unexported fields
}

Context contains a set of globals and variables related to specific job

func CreateContext

func CreateContext(projectDirectory string, vars Vars) (c *Context)

CreateContext creates a new context

func (*Context) AppendGlobals

func (c *Context) AppendGlobals(globals Vars) *Context

AppendGlobals appends global variables to the context

func (*Context) Environ

func (c *Context) Environ() (env []string)

Environ gets list of OS environment variables with globals

func (*Context) ExpandVariables

func (c *Context) ExpandVariables(str string) (out string, err error)

ExpandVariables expands an expression stored inside a passed string

func (*Context) Global

func (c *Context) Global(varName string) (out string, ok bool)

Global returns a global variable value by it's name

func (*Context) Var

func (c *Context) Var(varName string) (isLocal bool, out string, ok bool)

Var returns a local variable value by it's name

type ExpressionProcessor

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

ExpressionProcessor evaluates template literals inside the string

func NewExpressionProcessor

func NewExpressionProcessor(ctx *Context) ExpressionProcessor

NewExpressionProcessor creates a new processor instance

func (*ExpressionProcessor) ContainsExpression

func (p *ExpressionProcessor) ContainsExpression(str string) bool

ContainsExpression checks if passed string contains template expressions

func (*ExpressionProcessor) ReadExpression

func (p *ExpressionProcessor) ReadExpression(exp []byte) (result []byte, err error)

ReadExpression evaluates an expression string

func (*ExpressionProcessor) ReadString

func (p *ExpressionProcessor) ReadString(input string) (result string, err error)

ReadString parses and evaluates expressions inside the string

type Vars

type Vars map[string]string

Vars is a set of declared variables

Jump to

Keyboard shortcuts

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