juju: github.com/wallyworld/juju/worker/uniter/runner/debug Index | Files

package debug

import "github.com/wallyworld/juju/worker/uniter/runner/debug"

Index

Package Files

client.go common.go server.go

func Base64HookArgs Uses

func Base64HookArgs(match []string, debugAt string) string

Base64HookArgs returns the encoded arguments for defining debug-hook behavior. This is a base64 encoded yaml blob containing serialized arguments.

func ClientScript Uses

func ClientScript(c *HooksContext, match []string, debugAt string) string

ClientScript returns a bash script suitable for executing on the unit system to intercept matching hooks or actions via tmux shell.

type HooksContext Uses

type HooksContext struct {
    Unit     string
    FlockDir string
}

func NewHooksContext Uses

func NewHooksContext(unitName string) *HooksContext

func (*HooksContext) ClientExitFileLock Uses

func (c *HooksContext) ClientExitFileLock() string

func (*HooksContext) ClientFileLock Uses

func (c *HooksContext) ClientFileLock() string

func (*HooksContext) FindSession Uses

func (c *HooksContext) FindSession() (*ServerSession, error)

FindSession attempts to find a debug hooks session for the unit specified in the context, and returns a new ServerSession structure for it.

type ServerSession Uses

type ServerSession struct {
    *HooksContext
    // contains filtered or unexported fields
}

ServerSession represents a "juju debug-hooks" session.

func (*ServerSession) DebugAt Uses

func (s *ServerSession) DebugAt() string

DebugAt returns the location for the charm to stop for debugging, if it is set.

func (*ServerSession) MatchHook Uses

func (s *ServerSession) MatchHook(hookName string) bool

MatchHook returns true if the specified hook name matches the hook specified by the debug-hooks client.

func (*ServerSession) RunHook Uses

func (s *ServerSession) RunHook(hookName, charmDir string, env []string, hookRunner string) error

RunHook "runs" the hook with the specified name via debug-hooks. The hookRunner parameters specifies the name of the binary that users can invoke to handle the hook. When using the legacy hook system, hookRunner will be equal to the hookName; otherwise, it will point to a script that acts as the dispatcher for all hooks/actions.

Package debug imports 14 packages (graph). Updated 2020-08-06. Refresh now. Tools for package owners.