diff --git a/pmctl/main.go b/pmctl/main.go index 23de8f0d..ba92d87c 100644 --- a/pmctl/main.go +++ b/pmctl/main.go @@ -194,17 +194,7 @@ func cmdSetup(cmd *cobra.Command, args []string) (err error) { Beta: false, }) - err = registry.LoadIndexes() - if err != nil { - return err - } - - err = registry.ScanStorage("") - if err != nil { - log.Printf("WARNING: error during storage scan: %s\n", err) - } - - registry.SelectVersions() + updateRegistryIndex() } // logs and warning @@ -225,3 +215,17 @@ func cmdSetup(cmd *cobra.Command, args []string) (err error) { return nil } + +func updateRegistryIndex() { + err := registry.LoadIndexes() + if err != nil { + log.Printf("WARNING: error loading indexes: %s\n", err) + } + + err = registry.ScanStorage("") + if err != nil { + log.Printf("WARNING: error during storage scan: %s\n", err) + } + + registry.SelectVersions() +} diff --git a/pmctl/run.go b/pmctl/run.go index 432bfa3d..53557d8a 100644 --- a/pmctl/run.go +++ b/pmctl/run.go @@ -191,6 +191,9 @@ func run(cmd *cobra.Command, opts *Options) (err error) { case tryAgain && err == nil: // upgrade log.Println("restarting by request...") + // update index + log.Println("checking versions...") + updateRegistryIndex() case !tryAgain && err != nil: // fatal error return err