func doLogout() error { var identity = *appArgs.identity _, err := os.Lstat(identity) if err != nil { if os.IsNotExist(err) { fmt.Println("No saved credentials at", identity) fmt.Println("Nothing to do.") return nil } } comm.Notice("Important note", []string{ "Note: this command will not invalidate the API key itself.", "If you wish to revoke it (for example, because it's been compromised), you should do so in your user settings:", "", fmt.Sprintf(" %s/user/settings\n\n", *appArgs.address), }) comm.Logf("") if !comm.YesNo("Do you want to erase your saved API key?") { fmt.Println("Okay, not erasing credentials. Bye!") return nil } err = os.Remove(identity) if err != nil { return errors.Wrap(err, 1) } fmt.Println("You've successfully erased the API key that was saved on your computer.") return nil }
func versionCheck() { currentVer, latestVer, err := queryLatestVersion() if err != nil { comm.Logf("Version check failed: %s", err.Error()) } if currentVer == nil || latestVer == nil { return } if latestVer.GT(*currentVer) { comm.Notice("New version available", []string{ fmt.Sprintf("Current version: %s", version), fmt.Sprintf("Latest version: %s", latestVer), "", "Run `butler upgrade` to get it.", }) } }