Merge pull request #96 from sonphantrung/retry-v2
Add retry to upload release (UPDATED VERSION)
This commit is contained in:
		
						commit
						e8c797e08e
					
				
							
								
								
									
										5629
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										5629
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -29,6 +29,7 @@
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "@actions/core": "^1.10.0",
 | 
			
		||||
    "@actions/github": "^5",
 | 
			
		||||
    "@lifeomic/attempt": "^3.0.3",
 | 
			
		||||
    "glob": "^7"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
 | 
			
		||||
@ -5,6 +5,7 @@ import * as core from '@actions/core'
 | 
			
		||||
import * as github from '@actions/github'
 | 
			
		||||
import * as path from 'path'
 | 
			
		||||
import * as glob from 'glob'
 | 
			
		||||
import { retry } from '@lifeomic/attempt'
 | 
			
		||||
 | 
			
		||||
const releaseByTag = 'GET /repos/{owner}/{repo}/releases/tags/{tag}' as const
 | 
			
		||||
const createRelease = 'POST /repos/{owner}/{repo}/releases' as const
 | 
			
		||||
@ -94,7 +95,8 @@ async function upload_to_release(
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  core.debug(`Uploading ${file} to ${asset_name} in release ${tag}.`)
 | 
			
		||||
  const uploaded_asset: UploadAssetResp = await octokit.request(uploadAssets, {
 | 
			
		||||
  const uploaded_asset: UploadAssetResp = await retry(async () => {
 | 
			
		||||
    return octokit.request(uploadAssets, {
 | 
			
		||||
	...repo(),
 | 
			
		||||
	release_id: release.data.id,
 | 
			
		||||
        url: release.data.upload_url,
 | 
			
		||||
@ -104,6 +106,10 @@ async function upload_to_release(
 | 
			
		||||
          'content-type': 'binary/octet-stream',
 | 
			
		||||
          'content-length': file_size
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    )
 | 
			
		||||
  }, {
 | 
			
		||||
    maxAttempts: 3
 | 
			
		||||
  })
 | 
			
		||||
  return uploaded_asset.data.browser_download_url
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user