upgrade_command.go 707 B

1234567891011121314151617181920212223242526272829303132
  1. package commands
  2. import (
  3. "github.com/fatih/color"
  4. "github.com/grafana/grafana/pkg/cmd/grafana-cli/logger"
  5. s "github.com/grafana/grafana/pkg/cmd/grafana-cli/services"
  6. )
  7. func upgradeCommand(c CommandLine) error {
  8. pluginsDir := c.PluginDirectory()
  9. pluginName := c.Args().First()
  10. localPlugin, err := s.ReadPlugin(pluginsDir, pluginName)
  11. if err != nil {
  12. return err
  13. }
  14. v, err2 := s.GetPlugin(pluginName, c.RepoDirectory())
  15. if err2 != nil {
  16. return err2
  17. }
  18. if ShouldUpgrade(localPlugin.Info.Version, v) {
  19. s.RemoveInstalledPlugin(pluginsDir, pluginName)
  20. return InstallPlugin(pluginName, "", c)
  21. }
  22. logger.Infof("%s %s is up to date \n", color.GreenString("✔"), pluginName)
  23. return nil
  24. }