|
|
@@ -58,37 +58,39 @@ func installCommand(c CommandLine) error {
|
|
|
}
|
|
|
|
|
|
func InstallPlugin(pluginName, version string, c CommandLine) error {
|
|
|
- plugin, err := s.GetPlugin(pluginName, c.RepoDirectory())
|
|
|
pluginFolder := c.PluginDirectory()
|
|
|
- if err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
+ downloadURL := c.PluginURL()
|
|
|
+ if downloadURL == "" {
|
|
|
+ plugin, err := s.GetPlugin(pluginName, c.RepoDirectory())
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
|
|
|
- v, err := SelectVersion(plugin, version)
|
|
|
- if err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
+ v, err := SelectVersion(plugin, version)
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
|
|
|
- if version == "" {
|
|
|
- version = v.Version
|
|
|
+ if version == "" {
|
|
|
+ version = v.Version
|
|
|
+ }
|
|
|
+ downloadURL = fmt.Sprintf("%s/%s/versions/%s/download",
|
|
|
+ c.GlobalString("repo"),
|
|
|
+ pluginName,
|
|
|
+ version)
|
|
|
}
|
|
|
|
|
|
- downloadURL := fmt.Sprintf("%s/%s/versions/%s/download",
|
|
|
- c.GlobalString("repo"),
|
|
|
- pluginName,
|
|
|
- version)
|
|
|
-
|
|
|
- logger.Infof("installing %v @ %v\n", plugin.Id, version)
|
|
|
+ logger.Infof("installing %v @ %v\n", pluginName, version)
|
|
|
logger.Infof("from url: %v\n", downloadURL)
|
|
|
logger.Infof("into: %v\n", pluginFolder)
|
|
|
logger.Info("\n")
|
|
|
|
|
|
- err = downloadFile(plugin.Id, pluginFolder, downloadURL)
|
|
|
+ err := downloadFile(pluginName, pluginFolder, downloadURL)
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
|
|
|
|
- logger.Infof("%s Installed %s successfully \n", color.GreenString("✔"), plugin.Id)
|
|
|
+ logger.Infof("%s Installed %s successfully \n", color.GreenString("✔"), pluginName)
|
|
|
|
|
|
res, _ := s.ReadPlugin(pluginFolder, pluginName)
|
|
|
for _, v := range res.Dependencies.Plugins {
|