@ -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 {