diff --git a/updater/client.go b/updater/client.go index 63bf118..9a86a9d 100644 --- a/updater/client.go +++ b/updater/client.go @@ -5,6 +5,8 @@ import "time" type Client struct { // GitHub repo with author e.g. "MedzikUser/go-utils" GitHub string + // GitHub Token + GitHubToken string // Application version e.g. "2.15.43" Version string // Binary name in archive e.g. "utils.out" diff --git a/updater/update.go b/updater/update.go index 077fe2d..dbc4049 100644 --- a/updater/update.go +++ b/updater/update.go @@ -13,7 +13,11 @@ import ( If there is an update, this function will automatically update your program */ func (c *Client) Update() error { - release, found, err := selfupdate.DetectLatest(c.GitHub) + updater, err := selfupdate.NewUpdater(selfupdate.Config{ + APIToken: c.GitHubToken, + }) + + release, found, err := updater.DetectLatest(c.GitHub) if err != nil { return err } @@ -28,10 +32,12 @@ func (c *Client) Update() error { return err } - err = selfupdate.UpdateTo(release.AssetURL, exe, c.Binary) + err = updater.UpdateTo(release, exe, c.Binary) if err != nil { return err } + c.AfterUpdate() + return nil }