Documentation ¶
Index ¶
- Constants
- type CleanupCommand
- type ShellExecCommand
- type ShellPlugin
- func (self *ShellPlugin) Configure(map[string]interface{}) error
- func (self *ShellPlugin) GetAPIHandler() http.Handler
- func (self *ShellPlugin) GetPanelConfig() (*plugin.PanelConfig, error)
- func (self *ShellPlugin) GetUIHandler() http.Handler
- func (self *ShellPlugin) Name() string
- func (self *ShellPlugin) NewCommand(cmdName string) (plugin.Command, error)
- type TrackCommand
Constants ¶
const ( ShellPluginName = "shell" ShellExecCmd = "exec" CleanupCmd = "cleanup" TrackCmd = "track" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CleanupCommand ¶
type CleanupCommand struct{}
func (*CleanupCommand) Execute ¶
func (cc *CleanupCommand) Execute(pluginLogger plugin.Logger, pluginCom plugin.PluginCommunicator, conf *model.TaskConfig, stop chan bool) error
Execute starts the shell with its given parameters.
func (*CleanupCommand) Name ¶
func (cc *CleanupCommand) Name() string
func (*CleanupCommand) ParseParams ¶
func (cc *CleanupCommand) ParseParams(params map[string]interface{}) error
ParseParams reads in the command's parameters.
func (*CleanupCommand) Plugin ¶
func (cc *CleanupCommand) Plugin() string
type ShellExecCommand ¶
type ShellExecCommand struct { // Script is the shell code to be run on the agent machine. Script string `mapstructure:"script" plugin:"expand"` // Silent, if set to true, prevents shell code/output from being // logged to the agent's task logs. This can be used to avoid // exposing sensitive expansion parameters and keys. Silent bool `mapstructure:"silent"` // Background, if set to true, prevents shell code/output from // waiting for the script to complete and immediately returns // to the caller Background bool `mapstructure:"background"` // WorkingDir is the working directory to start the shell in. WorkingDir string `mapstructure:"working_dir"` // ContinueOnError determines whether or not a failed return code // should cause the task to be marked as failed. Setting this to true // allows following commands to execute even if this shell command fails. ContinueOnError bool `mapstructure:"continue_on_err"` }
ShellExecCommand is responsible for running the shell code.
func (*ShellExecCommand) Execute ¶
func (self *ShellExecCommand) Execute(pluginLogger plugin.Logger, pluginCom plugin.PluginCommunicator, conf *model.TaskConfig, stop chan bool) error
Execute starts the shell with its given parameters.
func (*ShellExecCommand) Name ¶
func (self *ShellExecCommand) Name() string
func (*ShellExecCommand) ParseParams ¶
func (self *ShellExecCommand) ParseParams(params map[string]interface{}) error
ParseParams reads in the command's parameters.
func (*ShellExecCommand) Plugin ¶
func (self *ShellExecCommand) Plugin() string
type ShellPlugin ¶
type ShellPlugin struct{}
ShellPlugin runs arbitrary shell code on the agent's machine.
func (*ShellPlugin) Configure ¶
func (self *ShellPlugin) Configure(map[string]interface{}) error
func (*ShellPlugin) GetAPIHandler ¶
func (self *ShellPlugin) GetAPIHandler() http.Handler
GetRoutes is required by the Plugin interface. This plugin has no API routes.
func (*ShellPlugin) GetPanelConfig ¶
func (self *ShellPlugin) GetPanelConfig() (*plugin.PanelConfig, error)
GetPanelConfig is required by the Plugin interface. This plugin has no UI presence.
func (*ShellPlugin) GetUIHandler ¶
func (self *ShellPlugin) GetUIHandler() http.Handler
func (*ShellPlugin) Name ¶
func (self *ShellPlugin) Name() string
Name returns the name of the plugin. Required to fulfill the Plugin interface.
func (*ShellPlugin) NewCommand ¶
func (self *ShellPlugin) NewCommand(cmdName string) (plugin.Command, error)
NewCommand returns the requested command, or returns an error if a non-existing command is requested.
type TrackCommand ¶
type TrackCommand struct{}
func (*TrackCommand) Execute ¶
func (cc *TrackCommand) Execute(pluginLogger plugin.Logger, pluginCom plugin.PluginCommunicator, conf *model.TaskConfig, stop chan bool) error
Execute starts the shell with its given parameters.
func (*TrackCommand) Name ¶
func (cc *TrackCommand) Name() string
func (*TrackCommand) ParseParams ¶
func (cc *TrackCommand) ParseParams(params map[string]interface{}) error
func (*TrackCommand) Plugin ¶
func (cc *TrackCommand) Plugin() string