-
Notifications
You must be signed in to change notification settings - Fork 0
Plugins
Plugins Development Section
Following available plugin categories:
- Client Module Plugins - Implements Custom Client Components for deploying step's sctions on the target server (or unit)
- Deploy Command Module Plugins - Implements Custom Commands used in feeds and/or feed fragments
- Client Commands Module Plugins - Implements features for required provided or custom Client Commands plugins injection, used and managed by any of the Client components.
In linux system it's possible to write new features using the current client ones or developing new features. It refers to a Go-Language Build-In technology. Please read following documntation: Go Language Plugin Package
In order to develop a client module plugin please follow provided instructions:
Plugin(s) have own interfaces, available in plug-in operations, as follow:
For client(s) plugins (definition of custom clients), you can :
- Develop Proxy Function interface as described and with same name of function proxy.getModules()
- Develop Client Wrapper as described in the interface ConnectionHandler
An example of this kind of plugin is available in following repositories:
Buil-in clients:
- SSH Protocol
- Go! TLS/TCP Client Protocol
In order to develop a deploy command module plugin please follow provided instructions:
Plugin(s) have own interfaces, available in plug-in operations, as follow:
- Develop Proxy Function interface GetModulesMap
- Develop a Discovery Function and allocating a map of string (unique plugin name) and ProxyStub that contains the discovery function, providing the command Converter component. Converter interface is used to parse the code from the Feed file and provifing a runnable element implementing StepRunnable interface, filled with parsed data.
An example of this kind of plugin is available in following repositories:
Please refer to instructions for available clients:
You can configure plugin(s) availability, file extension and base folder via command line start-up command or configuration file for any of the available plugin engines/proxies.
Come back to the Home Page