func downloadReleaseAsset(asset github.ReleaseAsset, gh *github.Client) (err error) { assetReader, err := gh.DownloadReleaseAsset(asset.ApiUrl) if err != nil { return } defer assetReader.Close() assetFile, err := os.OpenFile(asset.Name, os.O_WRONLY|os.O_CREATE|os.O_EXCL, 0644) if err != nil { return } defer assetFile.Close() _, err = io.Copy(assetFile, assetReader) if err != nil { return } return }