Documentation
¶
Index ¶
- Constants
- type CensoredWriter
- type CommandBuilder
- type Context
- func (c *Context) Chdir(dir string)
- func (c *Context) Clearenv()
- func (c *Context) Command(name string, arg ...string) *exec.Cmd
- func (c *Context) CopyDirectory(srcDir, destDir string, includeBaseDir bool) error
- func (c *Context) CopyFile(src, dest string) error
- func (c *Context) Environ() []string
- func (c *Context) EnvironMap() map[string]string
- func (c *Context) ExpandEnv(s string) string
- func (c *Context) Getenv(key string) string
- func (c *Context) Getwd() string
- func (c *Context) IsVerbose() bool
- func (c *Context) LookPath(file string) (string, bool)
- func (c *Context) LookupEnv(key string) (string, bool)
- func (c *Context) SetSensitiveValues(vals []string)
- func (c *Context) SetVerbose(value bool)
- func (c *Context) Setenv(key string, value string)
- func (c *Context) Unsetenv(key string)
- func (c *Context) WriteMixinOutputToFile(filename string, bytes []byte) error
- type PluginDebugContext
- type TestContext
- func (c *TestContext) AddCleanupDir(dir string)
- func (c *TestContext) AddTestDirectory(srcDir, destDir string)
- func (c *TestContext) AddTestDriver(src, name string) string
- func (c *TestContext) AddTestFile(src, dest string) []byte
- func (c *TestContext) AddTestFileContents(file []byte, dest string) error
- func (c *TestContext) Cleanup()
- func (c *TestContext) ClearOutputs()
- func (c *TestContext) FindBinDir() string
- func (c *TestContext) GetError() string
- func (c *TestContext) GetOutput() string
- func (c *TestContext) GetTestDefinitionDirectory() string
- func (c *TestContext) UseFilesystem() (testDir string, homeDir string)
Constants ¶
const (
// MixinOutputsDir represents the directory where mixin output files are written/read
MixinOutputsDir = "/cnab/app/porter/outputs"
)
Variables ¶
Functions ¶
Types ¶
type CensoredWriter ¶
type CensoredWriter struct {
// contains filtered or unexported fields
}
CensoredWriter is a writer wrapping the provided io.Writer with logic to censor certain values
func NewCensoredWriter ¶
func NewCensoredWriter(writer io.Writer) *CensoredWriter
NewCensoredWriter returns a new CensoredWriter
func (*CensoredWriter) SetSensitiveValues ¶
func (cw *CensoredWriter) SetSensitiveValues(vals []string)
SetSensitiveValues sets values needing masking for an CensoredWriter
type CommandBuilder ¶
func NewTestCommand ¶
func NewTestCommand(c *Context) CommandBuilder
type Context ¶
type Context struct { Debug bool DebugPlugins bool FileSystem aferox.Aferox In io.Reader Out io.Writer Err io.Writer NewCommand CommandBuilder PlugInDebugContext *PluginDebugContext // contains filtered or unexported fields }
func (*Context) CopyDirectory ¶
func (*Context) Environ ¶
Environ returns a copy of strings representing the environment, in the form "key=value".
func (*Context) EnvironMap ¶
EnvironMap returns a map of the current environment variables.
func (*Context) ExpandEnv ¶
ExpandEnv replaces ${var} or $var in the string according to the values of the current environment variables. References to undefined variables are replaced by the empty string.
func (*Context) Getenv ¶
Getenv retrieves the value of the environment variable named by the key. It returns the value, which will be empty if the variable is not present. To distinguish between an empty value and an unset value, use LookupEnv.
func (*Context) LookPath ¶
This is a simplified exec.LookPath that checks if command is accessible given a PATH environment variable.
func (*Context) LookupEnv ¶
LookupEnv retrieves the value of the environment variable named by the key. If the variable is present in the environment the value (which may be empty) is returned and the boolean is true. Otherwise the returned value will be empty and the boolean will be false.
func (*Context) SetSensitiveValues ¶
SetSensitiveValues sets the sensitive values needing masking on output/err streams
func (*Context) SetVerbose ¶
func (*Context) Setenv ¶
Setenv sets the value of the environment variable named by the key. It returns an error, if any.
type PluginDebugContext ¶
type PluginDebugContext struct { RunPlugInInDebugger string PlugInWorkingDirectory string DebuggerPort string }
func NewPluginDebugContext ¶
func NewPluginDebugContext(c *Context) *PluginDebugContext
type TestContext ¶
func NewTestContext ¶
func NewTestContext(t *testing.T) *TestContext
NewTestContext initializes a configuration suitable for testing, with the output buffered, and an in-memory file system, using the specified environment variables.
func (*TestContext) AddCleanupDir ¶
func (c *TestContext) AddCleanupDir(dir string)
func (*TestContext) AddTestDirectory ¶
func (c *TestContext) AddTestDirectory(srcDir, destDir string)
func (*TestContext) AddTestDriver ¶
func (c *TestContext) AddTestDriver(src, name string) string
func (*TestContext) AddTestFile ¶
func (c *TestContext) AddTestFile(src, dest string) []byte
func (*TestContext) AddTestFileContents ¶
func (c *TestContext) AddTestFileContents(file []byte, dest string) error
func (*TestContext) Cleanup ¶
func (c *TestContext) Cleanup()
func (*TestContext) ClearOutputs ¶
func (c *TestContext) ClearOutputs()
func (*TestContext) FindBinDir ¶
func (c *TestContext) FindBinDir() string
func (*TestContext) GetError ¶
func (c *TestContext) GetError() string
GetError returns all text printed to stderr.
func (*TestContext) GetOutput ¶
func (c *TestContext) GetOutput() string
GetOutput returns all text printed to stdout.
func (*TestContext) GetTestDefinitionDirectory ¶
func (c *TestContext) GetTestDefinitionDirectory() string
func (*TestContext) UseFilesystem ¶
func (c *TestContext) UseFilesystem() (testDir string, homeDir string)
UseFilesystem has porter's context use the OS filesystem instead of an in-memory filesystem Returns the test directory, and the temp porter home directory.