@@ -307,6 +307,24 @@ func (pushService *pushService) uploadReleaseAsset(release *github.RepositoryRel
307
307
return asset , response , nil
308
308
}
309
309
310
+ func (pushService * pushService ) uploadAsset (release * github.RepositoryRelease , assetPathStat os.FileInfo ) (* github.Response , error ) {
311
+ assetFile , err := os .Open (pushService .cacheDirectory .AssetPath (release .GetTagName (), assetPathStat .Name ()))
312
+ if err != nil {
313
+ return nil , errors .Wrap (err , "Error opening release asset." )
314
+ }
315
+ defer assetFile .Close ()
316
+ progressReader := & ioprogress.Reader {
317
+ Reader : assetFile ,
318
+ Size : assetPathStat .Size (),
319
+ DrawFunc : ioprogress .DrawTerminalf (os .Stderr , ioprogress .DrawTextFormatBytes ),
320
+ }
321
+ if err != nil {
322
+ return nil , errors .Wrap (err , "Error opening release asset." )
323
+ }
324
+ _ , response , err := pushService .uploadReleaseAsset (release , assetPathStat , progressReader )
325
+ return response , err
326
+ }
327
+
310
328
func (pushService * pushService ) createOrUpdateReleaseAsset (release * github.RepositoryRelease , existingAssets []* github.ReleaseAsset , assetPathStat os.FileInfo ) error {
311
329
attempt := 0
312
330
for {
@@ -327,20 +345,7 @@ func (pushService *pushService) createOrUpdateReleaseAsset(release *github.Repos
327
345
}
328
346
}
329
347
log .Debugf ("Uploading release asset %s..." , assetPathStat .Name ())
330
- assetFile , err := os .Open (pushService .cacheDirectory .AssetPath (release .GetTagName (), assetPathStat .Name ()))
331
- if err != nil {
332
- return errors .Wrap (err , "Error opening release asset." )
333
- }
334
- defer assetFile .Close ()
335
- progressReader := & ioprogress.Reader {
336
- Reader : assetFile ,
337
- Size : assetPathStat .Size (),
338
- DrawFunc : ioprogress .DrawTerminalf (os .Stderr , ioprogress .DrawTextFormatBytes ),
339
- }
340
- if err != nil {
341
- return errors .Wrap (err , "Error opening release asset." )
342
- }
343
- _ , response , err := pushService .uploadReleaseAsset (release , assetPathStat , progressReader )
348
+ response , err := pushService .uploadAsset (release , assetPathStat )
344
349
if err == nil {
345
350
return nil
346
351
} else {
0 commit comments