Documentation
¶
Index ¶
- func EnsurePluginDirectoryPermissions(logger *logger.RateLimitedLogger) error
- func HandleGitspaceCatalogInstall(logger *logger.RateLimitedLogger) (string, error)
- func HandleInstallPlugin(logger *logger.RateLimitedLogger, manager *Manager) error
- func HandleListInstalledPlugins(logger *logger.RateLimitedLogger) error
- func HandleRunPlugin(logger *logger.RateLimitedLogger, manager *Manager) error
- func HandleUninstallPlugin(logger *logger.RateLimitedLogger, manager *Manager) error
- func InstallPlugin(logger *logger.RateLimitedLogger, manager *Manager, source string) error
- func ListInstalledPlugins(logger *logger.RateLimitedLogger) ([]string, error)
- func UninstallPlugin(logger *logger.RateLimitedLogger, name string) error
- type CatalogPlugin
- type GitspaceCatalog
- type Manager
- func (m *Manager) AddDiscoveredPlugin(name, path string)
- func (m *Manager) DiscoverPlugins() error
- func (m *Manager) ExecuteCommand(pluginName, command string, params map[string]string) (string, error)
- func (m *Manager) GetDiscoveredPlugins() map[string]string
- func (m *Manager) GetFilteredPlugins() map[string]string
- func (m *Manager) GetLoadedPlugins() map[string]*Plugin
- func (m *Manager) GetPluginMenu(pluginName string) (*pb.MenuResponse, error)
- func (m *Manager) IsPluginLoaded(name string) bool
- func (m *Manager) IsPluginRunning(pluginName string) bool
- func (m *Manager) LoadAllPlugins() error
- func (m *Manager) LoadPlugin(name string) error
- func (m *Manager) UnloadPlugin(name string) error
- type Plugin
- type PluginManifest
- type Template
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EnsurePluginDirectoryPermissions ¶
func EnsurePluginDirectoryPermissions(logger *logger.RateLimitedLogger) error
EnsurePluginDirectoryPermissions ensures that the plugins directory has the correct permissions and ownership Without this, we'll see logs like this (which effectively means the plugin is not loaded): WARN <plugin/manager.go:222> Failed to load plugin name=hello-world error="failed to start plugin process: fork/exec /Users/alechp/.ssot/gitspace/plugins/hello-world/hello-world: permission denied"
func HandleGitspaceCatalogInstall ¶ added in v1.0.50
func HandleGitspaceCatalogInstall(logger *logger.RateLimitedLogger) (string, error)
func HandleInstallPlugin ¶
func HandleInstallPlugin(logger *logger.RateLimitedLogger, manager *Manager) error
func HandleListInstalledPlugins ¶
func HandleListInstalledPlugins(logger *logger.RateLimitedLogger) error
func HandleRunPlugin ¶
func HandleRunPlugin(logger *logger.RateLimitedLogger, manager *Manager) error
func HandleUninstallPlugin ¶
func HandleUninstallPlugin(logger *logger.RateLimitedLogger, manager *Manager) error
func InstallPlugin ¶
func InstallPlugin(logger *logger.RateLimitedLogger, manager *Manager, source string) error
func ListInstalledPlugins ¶
func ListInstalledPlugins(logger *logger.RateLimitedLogger) ([]string, error)
func UninstallPlugin ¶
func UninstallPlugin(logger *logger.RateLimitedLogger, name string) error
Types ¶
type CatalogPlugin ¶
type CatalogPlugin struct {
Path string
}
type GitspaceCatalog ¶
type GitspaceCatalog struct {
Catalog struct {
Name string `toml:"name"`
Description string `toml:"description"`
Version string `toml:"version"`
LastUpdated struct {
Date string `toml:"date"`
CommitHash string `toml:"commit_hash"`
} `toml:"last_updated"`
} `toml:"catalog"`
Plugins map[string]Plugin `toml:"plugins"`
Templates map[string]Template `toml:"templates"`
}
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func NewManager ¶
func NewManager(l *logger.RateLimitedLogger) *Manager
func (*Manager) AddDiscoveredPlugin ¶
func (*Manager) DiscoverPlugins ¶
func (*Manager) ExecuteCommand ¶
func (*Manager) GetDiscoveredPlugins ¶
func (*Manager) GetFilteredPlugins ¶ added in v1.0.48
func (*Manager) GetLoadedPlugins ¶
func (*Manager) GetPluginMenu ¶
func (m *Manager) GetPluginMenu(pluginName string) (*pb.MenuResponse, error)
func (*Manager) IsPluginLoaded ¶
func (*Manager) IsPluginRunning ¶ added in v1.0.51
func (*Manager) LoadAllPlugins ¶
func (*Manager) LoadPlugin ¶
func (*Manager) UnloadPlugin ¶
type PluginManifest ¶
Click to show internal directories.
Click to hide internal directories.