1
0
mirror of https://github.com/pocketbase/pocketbase.git synced 2025-03-23 23:19:19 +02:00

37 lines
922 B
Go
Raw Normal View History

2023-05-17 21:14:12 +03:00
package ghupdate
import (
"errors"
"strings"
)
type releaseAsset struct {
Name string `json:"name"`
DownloadUrl string `json:"browser_download_url"`
Id int `json:"id"`
Size int `json:"size"`
2023-05-17 21:14:12 +03:00
}
type release struct {
Name string `json:"name"`
Tag string `json:"tag_name"`
Published string `json:"published_at"`
Url string `json:"html_url"`
Body string `json:"body"`
2023-05-17 21:14:12 +03:00
Assets []*releaseAsset `json:"assets"`
Id int `json:"id"`
2023-05-17 21:14:12 +03:00
}
// findAssetBySuffix returns the first available asset containing the specified suffix.
func (r *release) findAssetBySuffix(suffix string) (*releaseAsset, error) {
if suffix != "" {
for _, asset := range r.Assets {
if strings.HasSuffix(asset.Name, suffix) {
return asset, nil
}
}
}
return nil, errors.New("missing asset containing " + suffix)
}