func addPluginToTheProject(pluginName string, pluginArgs map[string]string, manifest *manifest.Manifest) error { if !plugin.IsPluginInstalled(pluginName, pluginArgs["version"]) { logger.Log.Info("Plugin %s %s is not installed. Downloading the plugin.... \n", pluginName, pluginArgs["version"]) result := InstallPlugin(pluginName, pluginArgs["version"]) if !result.Success { logger.Log.Error(result.getMessage()) } } pd, err := plugin.GetPluginDescriptor(pluginName, pluginArgs["version"]) if err != nil { return err } if plugin.IsPluginAdded(manifest, pd) { logger.Log.Info("Plugin " + pd.Name + " is already added.") return nil } action := setupScope if err := plugin.SetEnvForPlugin(action, pd, manifest, pluginArgs); err != nil { return err } if _, err := plugin.StartPlugin(pd, action, true); err != nil { return err } manifest.Plugins = append(manifest.Plugins, pd.Id) return manifest.Save() }
func addPluginToTheProject(pluginName string, pluginArgs map[string]string, manifest *manifest.Manifest) error { if !plugin.IsPluginInstalled(pluginName, pluginArgs["version"]) { logger.Info("Plugin %s %s is not installed. Downloading the plugin.... \n", pluginName, pluginArgs["version"]) result := InstallPlugin(pluginName, pluginArgs["version"]) if !result.Success { logger.Error(result.getMessage()) } } pd, err := plugin.GetPluginDescriptor(pluginName, pluginArgs["version"]) if err != nil { return err } if plugin.IsPluginAdded(manifest, pd) { return fmt.Errorf("Plugin %s is already added.", pd.Name) } manifest.Plugins = append(manifest.Plugins, pd.Id) return manifest.Save() }