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": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@actions/core": "^1.10.0",
 | 
					    "@actions/core": "^1.10.0",
 | 
				
			||||||
    "@actions/github": "^5",
 | 
					    "@actions/github": "^5",
 | 
				
			||||||
 | 
					    "@lifeomic/attempt": "^3.0.3",
 | 
				
			||||||
    "glob": "^7"
 | 
					    "glob": "^7"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
 | 
				
			|||||||
@ -5,6 +5,7 @@ import * as core from '@actions/core'
 | 
				
			|||||||
import * as github from '@actions/github'
 | 
					import * as github from '@actions/github'
 | 
				
			||||||
import * as path from 'path'
 | 
					import * as path from 'path'
 | 
				
			||||||
import * as glob from 'glob'
 | 
					import * as glob from 'glob'
 | 
				
			||||||
 | 
					import { retry } from '@lifeomic/attempt'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const releaseByTag = 'GET /repos/{owner}/{repo}/releases/tags/{tag}' as const
 | 
					const releaseByTag = 'GET /repos/{owner}/{repo}/releases/tags/{tag}' as const
 | 
				
			||||||
const createRelease = 'POST /repos/{owner}/{repo}/releases' 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}.`)
 | 
					  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(),
 | 
						...repo(),
 | 
				
			||||||
	release_id: release.data.id,
 | 
						release_id: release.data.id,
 | 
				
			||||||
        url: release.data.upload_url,
 | 
					        url: release.data.upload_url,
 | 
				
			||||||
@ -104,6 +106,10 @@ async function upload_to_release(
 | 
				
			|||||||
          'content-type': 'binary/octet-stream',
 | 
					          'content-type': 'binary/octet-stream',
 | 
				
			||||||
          'content-length': file_size
 | 
					          'content-length': file_size
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					  }, {
 | 
				
			||||||
 | 
					    maxAttempts: 3
 | 
				
			||||||
  })
 | 
					  })
 | 
				
			||||||
  return uploaded_asset.data.browser_download_url
 | 
					  return uploaded_asset.data.browser_download_url
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user